// Copyright (C) 2024 Fredrik Öhrström (gpl-3.0-or-later)
driver {
name = iperl
meter_type = WaterMeter
default_fields = name,id,total_m3,max_flow_m3h,timestamp
manufacturer = Sensus
model = iperl
detect {
mvt = SEN,68,06
mvt = SEN,68,07
mvt = SEN,7c,07
}
fields {
field {
name = total
quantity = Volume
info = 'The total water consumption.'
match {
measurement_type = Instantaneous
vif_range = Volume
}
}
field {
name = max_flow
quantity = Flow
info = 'The maximum water flow recorded during previous period.'
match {
measurement_type = Instantaneous
vif_range = VolumeFlow
}
}
}
tests {
test {
args = 'MoreWater iperl 12345699 NOKEY'
comment = 'Test iPerl T1 telegram, that after decryption, has 2f2f markers.'
telegram = 1E44AE4C9956341268077A36001000_2F2F0413181E0000023B00002F2F2F2F
json = '{"_":"telegram","media":"water","meter":"iperl","name":"MoreWater","id":"12345699","total_m3":7.704,"max_flow_m3h":0,"timestamp":"1111-11-11T11:11:11Z"}'
fields = 'MoreWater;12345699;7.704;0;1111-11-11 11:11.11'
}
test {
args = 'WaterWater iperl 33225544 NOKEY'
comment = 'Test iPerl T1 telegram not encrypted, which has no 2f2f markers.'
telegram = 1844AE4C4455223368077A55000000_041389E20100023B0000
json = '{"_":"telegram","media":"water","meter":"iperl","name":"WaterWater","id":"33225544","total_m3":123.529,"max_flow_m3h":0,"timestamp":"1111-11-11T11:11:11Z"}'
fields = 'WaterWater;33225544;123.529;0;1111-11-11 11:11.11'
}
}
}