First of all thank you for your appreciation!
I think the following is a simple way to distinguish data packets:
if( bit9 == 0 )
switch( bit14_bit12 )
case 1: average wind speed data
case 3: rain gauge data
case 7: wind direction and gust data
Here are some real samples (my test receiver outputs each nibble as a hex digit, regarding the bit order):
B606F082F random id: 0xb6, temperature: 0x0f6 -> 246 -> 24.6 °C, relative humidity: 28 %
B66100E09 average wind speed: 0x0e -> 14 -> 2.8 m/s
B66F6132D wind direction: ( 0x16 << 1 ) | 1 -> 0x2d -> 45 °, wind gust: 0x23 -> 35 -> 7.0 m/s
I have collected also some random id's. Listed in order of appearance, all are hex values:
2E 16 6E E6 62 F6 B2 1E E6 26 EE 9E 06 32 7E BA 0A EE AE C2 AE C6 EA 12 22 22 12 A2 EE 9E 32 EA 72 66 C2 2A 9A 76 E2 A6 EE 9A DA D2 7A 0A EA EE BA 76 EA EE 5E CE D2 AA 86 EE DE 6E CA 32 9E 56
I have experienced the same problem with the rain gauge's magnet. However it seems, that it works fine when the unit stands firmly on a flat surface. The problem is somewhere in the RF section of mine unit, because i hear the transmission bursts on the communicaton receiver used to monitor the occurences of transmissions, but the test receiver, nor the base unit does not receive anything. I have managed to capture only a few samples by placing the rain gauge and the test receiver here and there.