[NWX] Adjust blacklist filter to not drop Qundis 5.5 water telegrams
Podpora pro Qundis 5.5 water měřidla
- účel úpravy je, abychom byli schopni chytat data z Plzně
- dosavádní implementace blacklistu zahazovala rámce všech qundis měřidel, co nebyly ITN
- na základě testování v kanclu bylo zjištěno, že water měřidla lze identifikovat podle
controlInformation
parametru = 0x78 - zde někdo parsoval Qundis měřidla, můžeme si všímnout, že taky má CI field 0x78 (TPL CI=78 )
- zde https://sw.acrios.com/inelsair/airiot/-/issues/244 vidíme, že Qundis ITN mají
deviceType
= 0x08 a nastávají problémy, když je CI 0x78 - proto podmínka v blacklist funkci byla upravená tak, že kontroluje jak
deviceType
, takcontrolInformation
field - v přiloženém souboru můžeme vidět přijata data z instalace v Plzni, krátší rámce prochází dosavádní implementaci, délší rámce jsou zahazovány. Většina rámců je délších.
simplification
- účel této úpravy je přehlednost
- podle deMorganova pravidla byla úpravená podmínka v bl funkci, která ošetřuje Qundis ITN, tj. hledá IC 72 nebo 7A
- úprava podle pravidla:
~7A and ~72 => false
~(7A or 72) => false
7A or 72 => ~(false)
7A or 72 => true