HomePlug AV de-scrambled BEACON PAYLOAD : 01000000 => 00000010 => 0x02 NID ........ 00000010 (NID = 0x184e35a5cb6b02 <=> SL = 0x1 et NID_offset = 0x84e35a5cb6b02) 11010110 => 01101011 => 0x6b 01101011 11010011 => 11001011 => 0xcb 11001011 10100101 => 10100101 => 0xa5 10100101 10101100 => 00110101 => 0x35 00110101 01110010 => 01001110 => 0x4e 01001110 00011000 => 00011000 => 0x18 011000 HM = 00 10000000 => 00000001 => 0x01 STEI ........ 00000001 00000000 => 00000000 => 0x00 BT .......... 000 NCNR = 0 NPSM = 0 NumSlots = 000 10000000 => 00000001 => 0x01 SlotUsage ... 00000001 00010000 => 00001000 => 0x08 SlotID ...... 000 ACLSS = 001 HOIP = 0 RTSBF = 0 11000000 => 00000011 => 0x03 NM .......... 11 (=> ???, reserved) CCoCapability = 00 RSVD = 0000 00000000 => 00000000 => 0x00 NBE ......... 00000000 (=> ???, reserved) 10100000 => 00000101 => 0x05 BEHDR[1] .... 00000101 (=> Discovered Info BENTRY) 10000000 => 00000001 => 0x01 BELEN[1] .... 00000001 (=> 1 octet ??? ou bien 1 Discovered Info BENTRY de 4 octets ???) 11011111 => 11111011 => 0xfb BENTRY[1] ... 11111011 00000000 => 00000000 => 0x00 00000000 00000000 => 00000000 => 0x00 00000000 00000000 => 00000000 => 0x00 00000000 01000000 => 00000010 => 0x02 BEHDR[2] .... 00000010 (=> Regions BENTRY) 11100000 => 00000111 => 0x07 BELEN[2] .... 00000111 (=> 7 octets => 1 octet BELEN + 3 x 2 octets de description de region) 11000000 => 00000011 => 0x03 BENTRY[2] ... 00000011 (=> nb regions = 3) 10100000 => 00000101 => 0x05 0000 0101 (0101 => "Beacon Region") 00000000 => 00000000 => 0x00 00000000 (00000000 0000 => fin region = 0 !!! ???) 10000000 => 00000001 => 0x01 0000 0001 (0001 => "Shared CSMA Region") 00000000 => 00000000 => 0x00 00000000 (00000000 0000 => fin region = 0 !!! ???) 00000010 => 01000000 => 0x40 0100 0000 (0000 => "Reserved Region" !!! ???) 00101111 => 11110100 => 0xf4 11110100 (11110100 0100 => 3908 Allocation Time Units => 40,017 ms de beacon period...) 11000000 => 00000011 => 0x03 BEHDR[3] .... 00000011 (=> MAC Address BENTRY) 01100000 => 00000110 => 0x06 BELEN[3] .... 00000110 (=> 6 octets => logique, une adresse MAC fait 6 octets...) 00000000 => 00000000 => 0x00 BENTRY[3] ... 00000000 \ 11010000 => 00001011 => 0x0b 00001011 | 11011100 => 00111011 => 0x3b 00111011 | 01011000 => 00011010 => 0x1a 00011010 |=> @MAC = 00:0b:3b:1a:28:a5 00010100 => 00101000 => 0x28 00101000 | ======== 10100101 => 10100101 => 0xa5 10100101 / "devolo AG" 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 00000000 => 00000000 => 0x00 11100110 => 01100111 => 0x67 \ 10001101 => 10110001 => 0xb1 | 00001011 => 11010000 => 0xd0 |=> CRC32 = 0xded0b167 01111011 => 11011110 => 0xde / dump hexa de la beacon payload (taille buffer = 136 octets = 132 octets utiles + CRC32 sur 4 octets) : 02.6b.cb.a5.35.4e.18.01.00.01.08.03.00.05.01.fb. 00.00.00.02.07.03.05.00.01.00.40.f4.03.06.00.0b. 3b.1a.28.a5.00.00.00.00.00.00.00.00.00.00.00.00. 00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00. 00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00. 00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00. 00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00. 00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00. 00.00.00.00.67.b1.d0.de. CRC32 expected = 0xded0b167 CRC32 verified = 0xded0b167 => ok :-) details beacon payload (bits dans l'ordre LSB -> MSB) : NID : 01000000 11010110 11010011 10100101 10101100 01110010 000110 02 6b cb a5 35 4e 18 => ok, conforme table 13-343 page 679 norme HP-AV HM : 00 = Network use hybrid delimiters. STEI : 10000000 = 0x1 BT : 000 = Central beacon NCNR : 0 = Non coordinated network report -> pas d'autre AVLN NPSM : 0 = Network Power Saving Mode -> disable Num slots : 000 = Number of Slots -> 1 seul AVLN Slot usage : 10000000 = Slotusage -> slot 1. Slot id : 000 = Slot id -> slot courant ACLSS : 100 = AC Line Synchronisation Status -> Current beacon slot. HOIP : 0 = Handover in progress => no handover in progress RTSBF : 0 = RTS Broadcast Flag => station doesn't use rts/cts to communicate NM : 11 = Network Mode -> RSVD => !? CCO Cap : 00 = CCo level 0 Reserved : 0000 = reservé NBE : 0 = Number of bentries = 0 => !? header : 0xa0 length : 128