Added type/ver for yet another moronic Izar meter that reports itself as a electric breaker....

pull/187/head
Fredrik Öhrström 2020-11-25 11:34:14 +01:00
rodzic efd9aaa786
commit 1e94a81183
9 zmienionych plików z 103 dodań i 3 usunięć

Wyświetl plik

@ -175,7 +175,7 @@ all: $(BUILD)/wmbusmeters $(BUILD)/wmbusmeters-admin $(BUILD)/testinternals
@$(STRIP_BINARY)
@cp $(BUILD)/wmbusmeters $(BUILD)/wmbusmetersd
dist: wmbusmeters_$(DEBVERSION)_$(DEBARCH).deb
deb: wmbusmeters_$(DEBVERSION)_$(DEBARCH).deb
install: $(BUILD)/wmbusmeters
@./install.sh $(BUILD)/wmbusmeters $(DESTDIR) $(EXTRA_INSTALL_OPTIONS)
@ -193,6 +193,10 @@ wmbusmeters_$(DEBVERSION)_$(DEBARCH).deb:
@echo "Maintainer: Fredrik Öhrström" >> $(BUILD)/debian/wmbusmeters/DEBIAN/control
@echo "Architecture: $(DEBARCH)" >> $(BUILD)/debian/wmbusmeters/DEBIAN/control
@echo "Description: A tool to read wireless mbus telegrams from utility meters." >> $(BUILD)/debian/wmbusmeters/DEBIAN/control
@for x in preinst postinst prerm postrm ; do \
cp scripts/$$x $(BUILD)/debian/wmbusmeters/DEBIAN/ ; \
chmod 555 $(BUILD)/debian/wmbusmeters/DEBIAN/$$x ; \
done
@(cd $(BUILD)/debian; dpkg-deb --build wmbusmeters .)
@mv $(BUILD)/debian/wmbusmeters_$(DEBVERSION)_$(DEBARCH).deb .
@echo Built package $@

71
scripts/postinst 100644 → 100755
Wyświetl plik

@ -1,3 +1,74 @@
#!/bin/sh
# Start wmbusmeters service
if [ $(getent group wmbusmeters) ]
then
echo "group: wmbusmeters unmodified"
else
groupadd -f wmbusmeters
echo "group: added wmbusmeters"
fi
ID=$(id -u wmbusmeters 2>/dev/null)
if [ -f /usr/sbin/nologin ]
then
USERSHELL="/usr/sbin/nologin"
elif [ -f /sbin/nologin ]
then
USERSHELL="/sbin/nologin"
else
USERSHELL="/bin/false"
fi
if [ -z "$ID" ]
then
# Create the wmbusmeters user
useradd --system --shell $USERSHELL -g wmbusmeters wmbusmeters
echo "user: added wmbusmeters"
else
echo "user: wmbusmeters unmodified"
fi
if [ $(getent group dialout) ]
then
if [ "$(groups wmbusmeters | grep -o dialout)" = "" ]
then
# Add the wmbusmeters user to dialout
usermod -a -G dialout wmbusmeters
echo "user: added wmbusmeters to dialout group"
else
echo "user: wmbusmeters already added to dialout"
fi
else
echo "dialout group does not exist"
fi
if [ $(getent group uucp) ]
then
if [ "$(groups wmbusmeters | grep -o uucp)" = "" ]
then
# Add the wmbusmeters user to uucp
usermod -a -G uucp wmbusmeters
echo "user: added wmbusmeters to uucp group"
else
echo "user: wmbusmeters already added to uucp"
fi
else
echo "uucp group does not exist"
fi
if [ $(getent group plugdev) ]
then
if [ "$(groups wmbusmeters | grep -o plugdev)" = "" ]
then
# Add the wmbusmeters user to plugdev
usermod -a -G plugdev wmbusmeters
echo "user: added wmbusmeters to plugdev group"
else
echo user: wmbusmeters already added to plugdev
fi
else
echo "plugdev group does not exist"
fi

10
scripts/postrm 100644 → 100755
Wyświetl plik

@ -1,3 +1,11 @@
#!/bin/bash
# More cleanup?
# More cleanup?
ID=$(id -u wmbusmeters 2>/dev/null)
if [ ! "$ID" = "" ]
then
userdel wmbusmeters
echo user: removed wmbusmeters
fi

1
scripts/preinst 100644 → 100755
Wyświetl plik

@ -1,3 +1,4 @@
#!/bin/sh
# Shutdown wmbusmeters service if it is running.
systemctl stop wmbusmeters.service

5
scripts/prerm 100644 → 100755
Wyświetl plik

@ -1,3 +1,6 @@
#!/bin/bash
# Stop the service
# Stop the service
echo "Stopping any wmbusmeters.service running..."
systemctl stop wmbusmeters.service || true

Wyświetl plik

@ -110,6 +110,12 @@ telegram=|2944A511780729662366A20118001378D3B3DB8CEDD77731F25832AAF3DA8CADF9774E
{"media":"water","meter":"izar","name":"IzarWater2","id":"66290778","total_m3":16.76,"last_month_total_m3":11.84,"last_month_measure_date":"2019-11-30","remaining_battery_life_y":12,"current_alarms":"no_alarm","previous_alarms":"no_alarm","timestamp":"1111-11-11T11:11:11Z"}
|IzarWater2;66290778;16.760000;11.840000;2019-11-30;12.000000;no_alarm;no_alarm;1111-11-11 11:11.11
# Yet another silly version of IZAR, come again, type 0x20 = Breaker (electricity) for a water meter!
telegram=|1944A511780779194820A1|21170013355F8EDB2D03C6912B1E37
{"media":"water","meter":"izar","name":"IzarWater3","id":"19790778","total_m3":4.366,"last_month_total_m3":0,"last_month_measure_date":"2020-12-31","remaining_battery_life_y":11.5,"current_alarms":"no_alarm","previous_alarms":"no_alarm","timestamp":"1111-11-11T11:11:11Z"}
|IzarWater3;19790778;4.366000;0.000000;2020-12-31;11.500000;no_alarm;no_alarm;1111-11-11 11:11.11
# Test Hydrus water meter telegram
telegram=|4E44A5116464646470077AED004005|2F2F01FD08300C13741100007C1300000000FC101300000000FC201300000000726C00000B3B00000002FD748713025A6800C4016D3B177F2ACC011300020000|
{"media":"water","meter":"hydrus","name":"HydrusWater","id":"64646464","total_m3":1.174,"max_flow_m3h":0,"flow_temperature_c":10.4,"total_at_date_m3":0.2,"at_date":"2019-10-31 23:59","remaining_battery_life_y":13.686516,"status":"OK","timestamp":"1111-11-11T11:11:11Z"}

Wyświetl plik

@ -117,6 +117,7 @@
X(IZAR, MANUFACTURER_SAP, 0x66, -1) \
X(IZAR, MANUFACTURER_DME, 0x66, -1) \
X(IZAR, MANUFACTURER_DME, 0x19, 0x00) \
X(IZAR, MANUFACTURER_DME, 0x20, 0x48) \
X(IZAR3, MANUFACTURER_SAP, 0x00, 0x88) \
X(LANSENSM, MANUFACTURER_LAS, 0x1a, 0x03) \
X(LANSENTH, MANUFACTURER_LAS, 0x1b, 0x07) \

Wyświetl plik

@ -120,6 +120,11 @@ Received telegram from: 66290778
type: Unknown (0x66)
ver: 0x23
driver: izar
Received telegram from: 19790778
manufacturer: (DME) DIEHL Metering, Germany (0x11a5)
type: Breaker (electricity) (0x20)
ver: 0x48
driver: izar
Received telegram from: 64646464
manufacturer: (DME) DIEHL Metering, Germany (0x11a5)
type: Water meter (0x07)

Wyświetl plik

@ -26,6 +26,7 @@ METERS="MyWarmWater supercom587 12345678 NOKEY
Rummet rfmamb 11772288 NOKEY
IzarWater izar 21242472 NOKEY
IzarWater2 izar 66290778 NOKEY
IzarWater3 izar 19790778 NOKEY
HydrusWater hydrus 64646464 NOKEY
HydrusVater hydrus 65656565 NOKEY
HydrodigitWater hydrodigit 86868686 NOKEY