First, thanks for having created this clean project!
This pull request is quite a big pack of code:
add some new packet types decoding: Humidity/Lighting2/Rain/Temperature/UltraViolet/Wind
create unit tests for these new families
fix battery/signal level decoding
check packets have at least the 4 bytes used by RFX to place its header part (length+type+subtype+seq_nr)
aligned some wording:
eg. packet_subtype to align it on packet_type
eg. signal_level to align on battery_level (in RFXcom RFXMgr tool, they call it 'signal level' also)
Rule for not supported fields:
In these new families my rule was not to output a field which is not handled by a peculiar subtype (when it is supported by some other subtypes)
eg. for UltraViolet type, it subtype is not 0x03, do not send 'temperature' field. Otherwise, this would imply to define a non-significant value and put it inside. This would imply the client application having knowledge of this NS value to make decision whether or not there is a valid data.
Rule is finally dead simple: no data, no field.
Note: I ran tox on Ubuntu 16.04, so I forced python35 in tox.ini
Thanks - this looks good! As you can probably tell, I am not really using this project anymore. I am happy to merge in the changes but it is unlikely that I will use them and/or be able to support them.
Hello,
First, thanks for having created this clean project!
This pull request is quite a big pack of code:
Rule for not supported fields: In these new families my rule was not to output a field which is not handled by a peculiar subtype (when it is supported by some other subtypes) eg. for UltraViolet type, it subtype is not 0x03, do not send 'temperature' field. Otherwise, this would imply to define a non-significant value and put it inside. This would imply the client application having knowledge of this NS value to make decision whether or not there is a valid data. Rule is finally dead simple: no data, no field.
Note: I ran tox on Ubuntu 16.04, so I forced python35 in tox.ini
Christophe.