diff --git a/CHANGES b/CHANGES index bb0d728..d1fb67e 100644 --- a/CHANGES +++ b/CHANGES @@ -9,6 +9,9 @@ serial tty, will probe the serial devices, exluding donotprobe ones.) Added support for the sontex868 heat cost allocator. +Jacek27 added support for the Ultrimis water meter. +Thanks Jacek27! + Version 1.0.1: 2020-10-26 Fix bug that prevented /dev/ttyUSB0:im871a:c1 to work. diff --git a/README.md b/README.md index 94cf9cd..41a136c 100644 --- a/README.md +++ b/README.md @@ -251,7 +251,8 @@ rtl_433 (rtl433) Supported water meters: Apator at-wmbus-08 (apator08) (non-standard protocol) -Apator at-wmbus-16-2 (apator162) (non-standard protocol) +Apator at-wmbus-16-2 (apator162) (non-standard protocol, spurious decoding errors) +Apator Ultrimis (ultrimis) Aquametro/Integra Topas Es Kr (topaseskr) Bmeters Hydrodigit (hydrodigit) (partly non-standard protocol) Diehl/Sappel IZAR RC 868 I R4 PL (izar) (non-standard protocol) diff --git a/simulations/simulation_t1.txt b/simulations/simulation_t1.txt index 3929465..437b820 100644 --- a/simulations/simulation_t1.txt +++ b/simulations/simulation_t1.txt @@ -170,3 +170,8 @@ telegram=|3944FA122162092002067A3600202567C94D48D00DC47B11213E23383DB51968A705AA telegram=|4E44B40512345678F1077A310040052F2F|01FD08040C13991848004C1359423500CC101300000000CC201359423500426C7F2C0B3B00000002FD74DA10025AD300C4016D3B179F27CC011387124600| {"media":"water","meter":"topaseskr","name":"Witer","id":"78563412","total_m3":481.899,"temperature_c":21.1,"current_flow_m3h":0,"battery_life_days_remaining_remaining":"4314","volume_year_period_m3":354.259,"reverse_volume_year_period_m3":0,"meter_year_period_start_date":"2019-12-31","volume_month_period_m3":461.287,"meter_month_period_start_datetime":"2020-07-31 23:59","timestamp":"1111-11-11T11:11:11Z"} |Witer;78563412;481.899000;21.100000;0.000000;354.259000;0.000000;2019-12-31;461.287000;2020-07-31 23:59;1111-11-11 11:11.11 + +# Test Ultrimis water meter +telegram=|2E4401069897969501167A4B0320052F2F|0413320C000003FD1700000044132109000004933C000000002F2F2F2F2F|+0 +{"media":"cold water","meter":"ultrimis","name":"Uater","id":"95969798","total_m3":3.122,"target_m3":2.337,"current_status":"OK","total_backward_flow_m3":0,"timestamp":"1111-11-11T11:11:11Z"} +|Uater;95969798;3.122000;2.337000;OK;0.000000;1111-11-11 11:11.11 diff --git a/src/meter_ultrimis.cc b/src/meter_ultrimis.cc index 626625e..909973c 100644 --- a/src/meter_ultrimis.cc +++ b/src/meter_ultrimis.cc @@ -89,8 +89,12 @@ string MeterUltrimis::status() No water Low battery */ - - return tostrprintf("%03x", info_codes_); + string info = "OK"; + if (info_codes_ != 0) + { + info = tostrprintf("ERR(%06x)", info_codes_); + } + return info; } void MeterUltrimis::processContent(Telegram *t) diff --git a/tests/test_listen_to_all.sh b/tests/test_listen_to_all.sh index a30d407..0890408 100755 --- a/tests/test_listen_to_all.sh +++ b/tests/test_listen_to_all.sh @@ -175,6 +175,11 @@ Received telegram from: 78563412 type: Water meter (0x07) ver: 0xf1 driver: topaseskr +Received telegram from: 95969798 + manufacturer: (APA) Apator, Poland (0x601) + type: Cold water meter (0x16) + ver: 0x01 + driver: ultrimis EOF RES=$($PROG --logfile=$LOGFILE --t1 simulations/simulation_t1.txt 2>&1) diff --git a/tests/test_t1_meters.sh b/tests/test_t1_meters.sh index dbc9599..de1a648 100755 --- a/tests/test_t1_meters.sh +++ b/tests/test_t1_meters.sh @@ -32,6 +32,7 @@ METERS="MyWarmWater supercom587 12345678 NOKEY Elen1 ebzwmbe 22992299 NOKEY Elen2 esyswm 77997799 NOKEY Elen3 ehzp 55995599 NOKEY + Uater ultrimis 95969798 NOKEY Vatten apator08 004444dd NOKEY Wasser rfmtx1 74737271 NOKEY Woter waterstarm 20096221 BEDB81B52C29B5C143388CBB0D15A051