From fd8bb15a1bbf73683803ee1086a8cd6ca398b1ee Mon Sep 17 00:00:00 2001 From: chertier Date: Tue, 20 May 2008 11:52:17 +0000 Subject: More beacon payload decoding, fixing bugs, including more input test files and results of tests git-svn-id: svn+ssh://pessac/svn/cesar/trunk@2029 017c9cb6-072f-447c-8318-d5b54f68fe89 --- cesar/tools/hpav_decode/data/MME1b_new_decod.txt | 566 +++++++++++ cesar/tools/hpav_decode/data/S19_BEACON_decod.txt | 44 +- cesar/tools/hpav_decode/data/S20_BEACON_decod.txt | 46 +- cesar/tools/hpav_decode/data/S21_BEACON_decod.txt | 46 +- cesar/tools/hpav_decode/data/S22_BEACON_FC.txt | 128 +++ cesar/tools/hpav_decode/data/S22_BEACON_PLD.txt | 1088 +++++++++++++++++++++ cesar/tools/hpav_decode/data/S22_BEACON_decod.txt | 180 ++++ cesar/tools/hpav_decode/data/S23_BEACON_FC.txt | 128 +++ cesar/tools/hpav_decode/data/S23_BEACON_PLD.txt | 1088 +++++++++++++++++++++ cesar/tools/hpav_decode/data/S23_BEACON_decod.txt | 180 ++++ cesar/tools/hpav_decode/data/S24_BEACON_FC.txt | 128 +++ cesar/tools/hpav_decode/data/S24_BEACON_PLD.txt | 1088 +++++++++++++++++++++ cesar/tools/hpav_decode/data/S24_BEACON_decod.txt | 180 ++++ cesar/tools/hpav_decode/data/S25_BEACON_FC.txt | 128 +++ cesar/tools/hpav_decode/data/S25_BEACON_PLD.txt | 1088 +++++++++++++++++++++ cesar/tools/hpav_decode/data/S25_BEACON_decod.txt | 180 ++++ cesar/tools/hpav_decode/data/S26_BEACON_FC.txt | 128 +++ cesar/tools/hpav_decode/data/S26_BEACON_PLD.txt | 1088 +++++++++++++++++++++ cesar/tools/hpav_decode/data/S26_BEACON_decod.txt | 180 ++++ cesar/tools/hpav_decode/data/S27_BEACON_FC.txt | 128 +++ cesar/tools/hpav_decode/data/S27_BEACON_PLD.txt | 1088 +++++++++++++++++++++ cesar/tools/hpav_decode/data/S27_BEACON_decod.txt | 180 ++++ cesar/tools/hpav_decode/data/S28_BEACON_FC.txt | 128 +++ cesar/tools/hpav_decode/data/S28_BEACON_PLD.txt | 1088 +++++++++++++++++++++ cesar/tools/hpav_decode/data/S28_BEACON_decod.txt | 180 ++++ cesar/tools/hpav_decode/data/S29_BEACON_FC.txt | 128 +++ cesar/tools/hpav_decode/data/S29_BEACON_PLD.txt | 1088 +++++++++++++++++++++ cesar/tools/hpav_decode/data/S29_BEACON_decod.txt | 180 ++++ cesar/tools/hpav_decode/src/hpav_decode.c | 604 +++++++++++- 29 files changed, 12379 insertions(+), 95 deletions(-) create mode 100644 cesar/tools/hpav_decode/data/MME1b_new_decod.txt create mode 100644 cesar/tools/hpav_decode/data/S22_BEACON_FC.txt create mode 100644 cesar/tools/hpav_decode/data/S22_BEACON_PLD.txt create mode 100644 cesar/tools/hpav_decode/data/S22_BEACON_decod.txt create mode 100644 cesar/tools/hpav_decode/data/S23_BEACON_FC.txt create mode 100644 cesar/tools/hpav_decode/data/S23_BEACON_PLD.txt create mode 100644 cesar/tools/hpav_decode/data/S23_BEACON_decod.txt create mode 100644 cesar/tools/hpav_decode/data/S24_BEACON_FC.txt create mode 100644 cesar/tools/hpav_decode/data/S24_BEACON_PLD.txt create mode 100644 cesar/tools/hpav_decode/data/S24_BEACON_decod.txt create mode 100644 cesar/tools/hpav_decode/data/S25_BEACON_FC.txt create mode 100644 cesar/tools/hpav_decode/data/S25_BEACON_PLD.txt create mode 100644 cesar/tools/hpav_decode/data/S25_BEACON_decod.txt create mode 100644 cesar/tools/hpav_decode/data/S26_BEACON_FC.txt create mode 100644 cesar/tools/hpav_decode/data/S26_BEACON_PLD.txt create mode 100644 cesar/tools/hpav_decode/data/S26_BEACON_decod.txt create mode 100644 cesar/tools/hpav_decode/data/S27_BEACON_FC.txt create mode 100644 cesar/tools/hpav_decode/data/S27_BEACON_PLD.txt create mode 100644 cesar/tools/hpav_decode/data/S27_BEACON_decod.txt create mode 100644 cesar/tools/hpav_decode/data/S28_BEACON_FC.txt create mode 100644 cesar/tools/hpav_decode/data/S28_BEACON_PLD.txt create mode 100644 cesar/tools/hpav_decode/data/S28_BEACON_decod.txt create mode 100644 cesar/tools/hpav_decode/data/S29_BEACON_FC.txt create mode 100644 cesar/tools/hpav_decode/data/S29_BEACON_PLD.txt create mode 100644 cesar/tools/hpav_decode/data/S29_BEACON_decod.txt (limited to 'cesar/tools') diff --git a/cesar/tools/hpav_decode/data/MME1b_new_decod.txt b/cesar/tools/hpav_decode/data/MME1b_new_decod.txt new file mode 100644 index 0000000000..66b538bb74 --- /dev/null +++ b/cesar/tools/hpav_decode/data/MME1b_new_decod.txt @@ -0,0 +1,566 @@ +HomePlug AV FRAME CONTROL : + +10000100 (0x21) => 00100001 => 0x21 -----001 DTAV = SOF ; ----0--- ACCESS = in-home network ; 0010---- SNID = 2 +10000000 (0x01) => 00000001 => 0x01 00000001 STEI = 1 +01000000 (0x02) => 00000010 => 0x02 00000010 DTEI = 2 +01000000 (0x02) => 00000010 => 0x02 00000010 LID = 2 +01000000 (0x02) => 00000010 => 0x02 +00000000 (0x00) => 00000000 => 0x00 +00100000 (0x04) => 00000100 => 0x04 +01100000 (0x06) => 00000110 => 0x06 +00100100 (0x24) => 00100100 => 0x24 +11000000 (0x03) => 00000011 => 0x03 +00000010 (0x40) => 01000000 => 0x40 +00001001 (0x90) => 10010000 => 0x90 +00001111 (0xf0) => 11110000 => 0xf0 +00011101 (0xb8) => 10111000 => 0xb8 \ +10011110 (0x79) => 01111001 => 0x79 | +11111110 (0x7f) => 01111111 => 0x7f / CRC24 = 0x7f79b8 + +21.01.02.02.02.00.04.06.24.03.40.90.f0.b8.79.7f. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804b6c0 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (frame control) = 16 (13 octets utiles + CRC24) +21.01.02.02.02.00.04.06.24.03.40.90.f0.b8.79.7f. +CRC24 expected = 0x007f79b8 + + +HomePlug AV PAYLOAD : + +10001100 (0x31) => 00110001 => 0x31 +01001110 (0x72) => 01110010 => 0x72 +11001010 (0x53) => 01010011 => 0x53 +10010111 (0xe9) => 11101001 => 0xe9 +00000011 (0xc0) => 11000000 => 0xc0 +10100001 (0x85) => 10000101 => 0x85 +00000001 (0x80) => 10000000 => 0x80 +11010100 (0x2b) => 00101011 => 0x2b +00010001 (0x88) => 10001000 => 0x88 +10000011 (0xc1) => 11000001 => 0xc1 +00101000 (0x14) => 00010100 => 0x14 +10111011 (0xdd) => 11011101 => 0xdd +00101111 (0xf4) => 11110100 => 0xf4 +01000101 (0xa2) => 10100010 => 0xa2 +01000000 (0x02) => 00000010 => 0x02 +00000010 (0x40) => 01000000 => 0x40 +01110010 (0x4e) => 01001110 => 0x4e +10001001 (0x91) => 10010001 => 0x91 +11110101 (0xaf) => 10101111 => 0xaf +11011110 (0x7b) => 01111011 => 0x7b +00001011 (0xd0) => 11010000 => 0xd0 +00011101 (0xb8) => 10111000 => 0xb8 +10111110 (0x7d) => 01111101 => 0x7d +01100011 (0xc6) => 11000110 => 0xc6 +00000011 (0xc0) => 11000000 => 0xc0 +00000100 (0x20) => 00100000 => 0x20 +00101001 (0x94) => 10010100 => 0x94 +11110110 (0x6f) => 01101111 => 0x6f +01111000 (0x1e) => 00011110 => 0x1e +00010110 (0x68) => 01101000 => 0x68 +11001010 (0x53) => 01010011 => 0x53 +10101100 (0x35) => 00110101 => 0x35 +01001111 (0xf2) => 11110010 => 0xf2 +01111100 (0x3e) => 00111110 => 0x3e +10111011 (0xdd) => 11011101 => 0xdd +00011101 (0xb8) => 10111000 => 0xb8 +11110001 (0x8f) => 10001111 => 0x8f +11011000 (0x1b) => 00011011 => 0x1b +01011111 (0xfa) => 11111010 => 0xfa +11101001 (0x97) => 10010111 => 0x97 +01111111 (0xfe) => 11111110 => 0xfe +01100110 (0x66) => 01100110 => 0x66 +00000001 (0x80) => 10000000 => 0x80 +01101010 (0x56) => 01010110 => 0x56 +10011111 (0xf9) => 11111001 => 0xf9 +11010001 (0x8b) => 10001011 => 0x8b +11110101 (0xaf) => 10101111 => 0xaf +00000110 (0x60) => 01100000 => 0x60 +10110010 (0x4d) => 01001101 => 0x4d +11001000 (0x13) => 00010011 => 0x13 +11110001 (0x8f) => 10001111 => 0x8f +01001100 (0x32) => 00110010 => 0x32 +00100000 (0x04) => 00000100 => 0x04 +11010000 (0x0b) => 00001011 => 0x0b +00110101 (0xac) => 10101100 => 0xac +11010000 (0x0b) => 00001011 => 0x0b +00101111 (0xf4) => 11110100 => 0xf4 +10010010 (0x49) => 01001001 => 0x49 +11111000 (0x1f) => 00011111 => 0x1f +11100111 (0xe7) => 11100111 => 0xe7 +01101011 (0xd6) => 11010110 => 0xd6 +01100001 (0x86) => 10000110 => 0x86 +11110101 (0xaf) => 10101111 => 0xaf +00001111 (0xf0) => 11110000 => 0xf0 +00111001 (0x9c) => 10011100 => 0x9c +11101110 (0x77) => 01110111 => 0x77 +10110101 (0xad) => 10101101 => 0xad +10000001 (0x81) => 10000001 => 0x81 +10011110 (0x79) => 01111001 => 0x79 +00010110 (0x68) => 01101000 => 0x68 +11100001 (0x87) => 10000111 => 0x87 +10101100 (0x35) => 00110101 => 0x35 +00110110 (0x6c) => 01101100 => 0x6c +10011011 (0xd9) => 11011001 => 0xd9 +11110010 (0x4f) => 01001111 => 0x4f +01100110 (0x66) => 01100110 => 0x66 +11111110 (0x7f) => 01111111 => 0x7f +01001000 (0x12) => 00010010 => 0x12 +11100111 (0xe7) => 11100111 => 0xe7 +00001010 (0x50) => 01010000 => 0x50 +11011101 (0xbb) => 10111011 => 0xbb +10100100 (0x25) => 00100101 => 0x25 +00110101 (0xac) => 10101100 => 0xac +01110101 (0xae) => 10101110 => 0xae +00000010 (0x40) => 01000000 => 0x40 +11010110 (0x6b) => 01101011 => 0x6b +10010101 (0xa9) => 10101001 => 0xa9 +01100110 (0x66) => 01100110 => 0x66 +11000010 (0x43) => 01000011 => 0x43 +10011111 (0xf9) => 11111001 => 0xf9 +00101011 (0xd4) => 11010100 => 0xd4 +01111110 (0x7e) => 01111110 => 0x7e +11110001 (0x8f) => 10001111 => 0x8f +01010110 (0x6a) => 01101010 => 0x6a +10101010 (0x55) => 01010101 => 0x55 +00000100 (0x20) => 00100000 => 0x20 +01100101 (0xa6) => 10100110 => 0xa6 +10111100 (0x3d) => 00111101 => 0x3d +00111110 (0x7c) => 01111100 => 0x7c +01011010 (0x5a) => 01011010 => 0x5a +00010011 (0xc8) => 11001000 => 0xc8 +00110110 (0x6c) => 01101100 => 0x6c +10001100 (0x31) => 00110001 => 0x31 +00000100 (0x20) => 00100000 => 0x20 +00001001 (0x90) => 10010000 => 0x90 +01001001 (0x92) => 10010010 => 0x92 +01100011 (0xc6) => 11000110 => 0xc6 +00001101 (0xb0) => 10110000 => 0xb0 +00010100 (0x28) => 00101000 => 0x28 +10100110 (0x65) => 01100101 => 0x65 +11001101 (0xb3) => 10110011 => 0xb3 +10000111 (0xe1) => 11100001 => 0xe1 +11110101 (0xaf) => 10101111 => 0xaf +00000101 (0xa0) => 10100000 => 0xa0 +01111111 (0xfe) => 11111110 => 0xfe +10001111 (0xf1) => 11110001 => 0xf1 +11010100 (0x2b) => 00101011 => 0x2b +10001111 (0xf1) => 11110001 => 0xf1 +00110011 (0xcc) => 11001100 => 0xcc +10010110 (0x69) => 01101001 => 0x69 +00100000 (0x04) => 00000100 => 0x04 +10111011 (0xdd) => 11011101 => 0xdd +10010001 (0x89) => 10001001 => 0x89 +10001010 (0x51) => 01010001 => 0x51 +01011001 (0x9a) => 10011010 => 0x9a +00011010 (0x58) => 01011000 => 0x58 +01001110 (0x72) => 01110010 => 0x72 +00010111 (0xe8) => 11101000 => 0xe8 +11111001 (0x9f) => 10011111 => 0x9f +01110101 (0xae) => 10101110 => 0xae +10110111 (0xed) => 11101101 => 0xed +00000000 (0x00) => 00000000 => 0x00 +11111011 (0xdf) => 11011111 => 0xdf +10001011 (0xd1) => 11010001 => 0xd1 +10001111 (0xf1) => 11110001 => 0xf1 +01100000 (0x06) => 00000110 => 0x06 +01111001 (0x9e) => 10011110 => 0x9e +00101010 (0x54) => 01010100 => 0x54 +00111110 (0x7c) => 01111100 => 0x7c +11010100 (0x2b) => 00101011 => 0x2b +11101010 (0x57) => 01010111 => 0x57 +00011010 (0x58) => 01011000 => 0x58 +10101001 (0x95) => 10010101 => 0x95 +00111110 (0x7c) => 01111100 => 0x7c +01111011 (0xde) => 11011110 => 0xde +00101100 (0x34) => 00110100 => 0x34 +11110010 (0x4f) => 01001111 => 0x4f +00010011 (0xc8) => 11001000 => 0xc8 +10010100 (0x29) => 00101001 => 0x29 +11000110 (0x63) => 01100011 => 0x63 +01001110 (0x72) => 01110010 => 0x72 +01001000 (0x12) => 00010010 => 0x12 +01011100 (0x3a) => 00111010 => 0x3a +11010101 (0xab) => 10101011 => 0xab +11110101 (0xaf) => 10101111 => 0xaf +00100111 (0xe4) => 11100100 => 0xe4 +01000011 (0xc2) => 11000010 => 0xc2 +11110001 (0x8f) => 10001111 => 0x8f +00011010 (0x58) => 01011000 => 0x58 +01011000 (0x1a) => 00011010 => 0x1a +10001011 (0xd1) => 11010001 => 0xd1 +00000001 (0x80) => 10000000 => 0x80 +01101101 (0xb6) => 10110110 => 0xb6 +10111111 (0xfd) => 11111101 => 0xfd +10010111 (0xe9) => 11101001 => 0xe9 +11001000 (0x13) => 00010011 => 0x13 +11101011 (0xd7) => 11010111 => 0xd7 +00111001 (0x9c) => 10011100 => 0x9c +10100100 (0x25) => 00100101 => 0x25 +10101000 (0x15) => 00010101 => 0x15 +00001100 (0x30) => 00110000 => 0x30 +01100101 (0xa6) => 10100110 => 0xa6 +11101101 (0xb7) => 10110111 => 0xb7 +11111001 (0x9f) => 10011111 => 0x9f +11011111 (0xfb) => 11111011 => 0xfb +00001000 (0x10) => 00010000 => 0x10 +10000011 (0xc1) => 11000001 => 0xc1 +11011011 (0xdb) => 11011011 => 0xdb +10110010 (0x4d) => 01001101 => 0x4d +11101100 (0x37) => 00110111 => 0x37 +01010100 (0x2a) => 00101010 => 0x2a +11110110 (0x6f) => 01101111 => 0x6f +00110001 (0x8c) => 10001100 => 0x8c +01001011 (0xd2) => 11010010 => 0xd2 +01001101 (0xb2) => 10110010 => 0xb2 +11100001 (0x87) => 10000111 => 0x87 +01000100 (0x22) => 00100010 => 0x22 +10010101 (0xa9) => 10101001 => 0xa9 +00011100 (0x38) => 00111000 => 0x38 +10110111 (0xed) => 11101101 => 0xed +01101100 (0x36) => 00110110 => 0x36 +11111001 (0x9f) => 10011111 => 0x9f +10000110 (0x61) => 01100001 => 0x61 +10100001 (0x85) => 10000101 => 0x85 +00110111 (0xec) => 11101100 => 0xec +00110101 (0xac) => 10101100 => 0xac +10101110 (0x75) => 01110101 => 0x75 +10000101 (0xa1) => 10100001 => 0xa1 +10100100 (0x25) => 00100101 => 0x25 +01101111 (0xf6) => 11110110 => 0xf6 +01101011 (0xd6) => 11010110 => 0xd6 +00010000 (0x08) => 00001000 => 0x08 +10011010 (0x59) => 01011001 => 0x59 +00010010 (0x48) => 01001000 => 0x48 +11111000 (0x1f) => 00011111 => 0x1f +11100011 (0xc7) => 11000111 => 0xc7 +00011000 (0x18) => 00011000 => 0x18 +10110110 (0x6d) => 01101101 => 0x6d +00010001 (0x88) => 10001000 => 0x88 +10011000 (0x19) => 00011001 => 0x19 +01000111 (0xe2) => 11100010 => 0xe2 +00000000 (0x00) => 00000000 => 0x00 +00001100 (0x30) => 00110000 => 0x30 +10111011 (0xdd) => 11011101 => 0xdd +00100100 (0x24) => 00100100 => 0x24 +11000010 (0x43) => 01000011 => 0x43 +00110011 (0xcc) => 11001100 => 0xcc +01111000 (0x1e) => 00011110 => 0x1e +11110001 (0x8f) => 10001111 => 0x8f +10111101 (0xbd) => 10111101 => 0xbd +00010001 (0x88) => 10001000 => 0x88 +11111011 (0xdf) => 11011111 => 0xdf +10000011 (0xc1) => 11000001 => 0xc1 +01111000 (0x1e) => 00011110 => 0x1e +01011010 (0x5a) => 01011010 => 0x5a +01101101 (0xb6) => 10110110 => 0xb6 +01100011 (0xc6) => 11000110 => 0xc6 +00111111 (0xfc) => 11111100 => 0xfc +01011101 (0xba) => 10111010 => 0xba +00011001 (0x98) => 10011000 => 0x98 +01010100 (0x2a) => 00101010 => 0x2a +01101100 (0x36) => 00110110 => 0x36 +10101011 (0xd5) => 11010101 => 0xd5 +11010000 (0x0b) => 00001011 => 0x0b +01110100 (0x2e) => 00101110 => 0x2e +01101011 (0xd6) => 11010110 => 0xd6 +00010110 (0x68) => 01101000 => 0x68 +00010000 (0x08) => 00001000 => 0x08 +10001001 (0x91) => 10010001 => 0x91 +01001011 (0xd2) => 11010010 => 0xd2 +00111111 (0xfc) => 11111100 => 0xfc +11111001 (0x9f) => 10011111 => 0x9f +01110000 (0x0e) => 00001110 => 0x0e +00101110 (0x74) => 01110100 => 0x74 +11110100 (0x2f) => 00101111 => 0x2f +10010111 (0xe9) => 11101001 => 0xe9 +00111100 (0x3c) => 00111100 => 0x3c +10110000 (0x0d) => 00001101 => 0x0d +11001001 (0x93) => 10010011 => 0x93 +10100111 (0xe5) => 11100101 => 0xe5 +01001111 (0xf2) => 11110010 => 0xf2 +10111111 (0xfd) => 11111101 => 0xfd +11111111 (0xff) => 11111111 => 0xff +01110001 (0x8e) => 10001110 => 0x8e +10100100 (0x25) => 00100101 => 0x25 +10000011 (0xc1) => 11000001 => 0xc1 +00001111 (0xf0) => 11110000 => 0xf0 +00101110 (0x74) => 01110100 => 0x74 +10110101 (0xad) => 10101101 => 0xad +00110101 (0xac) => 10101100 => 0xac +01010101 (0xaa) => 10101010 => 0xaa +01110110 (0x6e) => 01101110 => 0x6e +10001100 (0x31) => 00110001 => 0x31 +11110011 (0xcf) => 11001111 => 0xcf +10101111 (0xf5) => 11110101 => 0xf5 +10010101 (0xa9) => 10101001 => 0xa9 +11010101 (0xab) => 10101011 => 0xab +10110110 (0x6d) => 01101101 => 0x6d +11000111 (0xe3) => 11100011 => 0xe3 +11011110 (0x7b) => 01111011 => 0x7b +10110101 (0xad) => 10101101 => 0xad +01000001 (0x82) => 10000010 => 0x82 +10101011 (0xd5) => 11010101 => 0xd5 +11100011 (0xc7) => 11000111 => 0xc7 +11000000 (0x03) => 00000011 => 0x03 +00001100 (0x30) => 00110000 => 0x30 +01001101 (0xb2) => 10110010 => 0xb2 +10010000 (0x09) => 00001001 => 0x09 +10001001 (0x91) => 10010001 => 0x91 +11100100 (0x27) => 00100111 => 0x27 +00011100 (0x38) => 00111000 => 0x38 +11111100 (0x3f) => 00111111 => 0x3f +01001011 (0xd2) => 11010010 => 0xd2 +01001110 (0x72) => 01110010 => 0x72 +01110111 (0xee) => 11101110 => 0xee +00111010 (0x5c) => 01011100 => 0x5c +00010011 (0xc8) => 11001000 => 0xc8 +00000010 (0x40) => 01000000 => 0x40 +00011010 (0x58) => 01011000 => 0x58 +01100101 (0xa6) => 10100110 => 0xa6 +10111111 (0xfd) => 11111101 => 0xfd +10110101 (0xad) => 10101101 => 0xad +00100111 (0xe4) => 11100100 => 0xe4 +10111011 (0xdd) => 11011101 => 0xdd +01010000 (0x0a) => 00001010 => 0x0a +10111011 (0xdd) => 11011101 => 0xdd +11101010 (0x57) => 01010111 => 0x57 +10000110 (0x61) => 01100001 => 0x61 +01011100 (0x3a) => 00111010 => 0x3a +00111000 (0x1c) => 00011100 => 0x1c +00110010 (0x4c) => 01001100 => 0x4c +11011001 (0x9b) => 10011011 => 0x9b +00110110 (0x6c) => 01101100 => 0x6c +10011010 (0x59) => 01011001 => 0x59 +00010111 (0xe8) => 11101000 => 0xe8 +00001110 (0x70) => 01110000 => 0x70 +01001010 (0x52) => 01010010 => 0x52 +01101010 (0x56) => 01010110 => 0x56 +10110110 (0x6d) => 01101101 => 0x6d +11101011 (0xd7) => 11010111 => 0xd7 +01011011 (0xda) => 11011010 => 0xda +11101010 (0x57) => 01010111 => 0x57 +10110110 (0x6d) => 01101101 => 0x6d +11101111 (0xf7) => 11110111 => 0xf7 +00000100 (0x20) => 00100000 => 0x20 +11101011 (0xd7) => 11010111 => 0xd7 +01110110 (0x6e) => 01101110 => 0x6e +11010000 (0x0b) => 00001011 => 0x0b +11010000 (0x0b) => 00001011 => 0x0b +00010001 (0x88) => 10001000 => 0x88 +01110010 (0x4e) => 01001110 => 0x4e +11000100 (0x23) => 00100011 => 0x23 +10110100 (0x2d) => 00101101 => 0x2d +10010000 (0x09) => 00001001 => 0x09 +10110001 (0x8d) => 10001101 => 0x8d +10000010 (0x41) => 01000001 => 0x41 +10000000 (0x01) => 00000001 => 0x01 +01010110 (0x6a) => 01101010 => 0x6a +00100000 (0x04) => 00000100 => 0x04 +01101001 (0x96) => 10010110 => 0x96 +10110011 (0xcd) => 11001101 => 0xcd +10010011 (0xc9) => 11001001 => 0xc9 +01101110 (0x76) => 01110110 => 0x76 +01011010 (0x5a) => 01011010 => 0x5a +00000011 (0xc0) => 11000000 => 0xc0 +00111001 (0x9c) => 10011100 => 0x9c +01111110 (0x7e) => 01111110 => 0x7e +01000100 (0x22) => 00100010 => 0x22 +11001000 (0x13) => 00010011 => 0x13 +01110101 (0xae) => 10101110 => 0xae +00000110 (0x60) => 01100000 => 0x60 +00101000 (0x14) => 00010100 => 0x14 +11010000 (0x0b) => 00001011 => 0x0b +01101100 (0x36) => 00110110 => 0x36 +00111001 (0x9c) => 10011100 => 0x9c +00100111 (0xe4) => 11100100 => 0xe4 +00001000 (0x10) => 00010000 => 0x10 +10110010 (0x4d) => 01001101 => 0x4d +11010011 (0xcb) => 11001011 => 0xcb +00010000 (0x08) => 00001000 => 0x08 +00110000 (0x0c) => 00001100 => 0x0c +00100001 (0x84) => 10000100 => 0x84 +11111101 (0xbf) => 10111111 => 0xbf +00111111 (0xfc) => 11111100 => 0xfc +01100011 (0xc6) => 11000110 => 0xc6 +01000100 (0x22) => 00100010 => 0x22 +00110111 (0xec) => 11101100 => 0xec +10011001 (0x99) => 10011001 => 0x99 +10101111 (0xf5) => 11110101 => 0xf5 +11111110 (0x7f) => 01111111 => 0x7f +00001111 (0xf0) => 11110000 => 0xf0 +11001110 (0x73) => 01110011 => 0x73 +00111100 (0x3c) => 00111100 => 0x3c +11011010 (0x5b) => 01011011 => 0x5b +10110001 (0x8d) => 10001101 => 0x8d +10110000 (0x0d) => 00001101 => 0x0d +10010000 (0x09) => 00001001 => 0x09 +01100100 (0x26) => 00100110 => 0x26 +11001100 (0x33) => 00110011 => 0x33 +10111100 (0x3d) => 00111101 => 0x3d +01110001 (0x8e) => 10001110 => 0x8e +11000000 (0x03) => 00000011 => 0x03 +01000100 (0x22) => 00100010 => 0x22 +01010000 (0x0a) => 00001010 => 0x0a +00010010 (0x48) => 01001000 => 0x48 +11100100 (0x27) => 00100111 => 0x27 +11000110 (0x63) => 01100011 => 0x63 +11011100 (0x3b) => 00111011 => 0x3b +10101000 (0x15) => 00010101 => 0x15 +00101111 (0xf4) => 11110100 => 0xf4 +10000010 (0x41) => 01000001 => 0x41 +00101101 (0xb4) => 10110100 => 0xb4 +11011011 (0xdb) => 11011011 => 0xdb +11011111 (0xfb) => 11111011 => 0xfb +10010101 (0xa9) => 10101001 => 0xa9 +00110101 (0xac) => 10101100 => 0xac +01010000 (0x0a) => 00001010 => 0x0a +11000011 (0xc3) => 11000011 => 0xc3 +01010010 (0x4a) => 01001010 => 0x4a +10010100 (0x29) => 00101001 => 0x29 +01101010 (0x56) => 01010110 => 0x56 +00001110 (0x70) => 01110000 => 0x70 +00111010 (0x5c) => 01011100 => 0x5c +10010010 (0x49) => 01001001 => 0x49 +11000011 (0xc3) => 11000011 => 0xc3 +11101110 (0x77) => 01110111 => 0x77 +00110000 (0x0c) => 00001100 => 0x0c +11101111 (0xf7) => 11110111 => 0xf7 +01010111 (0xea) => 11101010 => 0xea +11101001 (0x97) => 10010111 => 0x97 +10110100 (0x2d) => 00101101 => 0x2d +11110010 (0x4f) => 01001111 => 0x4f +11101101 (0xb7) => 10110111 => 0xb7 +01101110 (0x76) => 01110110 => 0x76 +01101010 (0x56) => 01010110 => 0x56 +11110010 (0x4f) => 01001111 => 0x4f +10100011 (0xc5) => 11000101 => 0xc5 +01011010 (0x5a) => 01011010 => 0x5a +11110110 (0x6f) => 01101111 => 0x6f +11011101 (0xbb) => 10111011 => 0xbb +10100100 (0x25) => 00100101 => 0x25 +10010000 (0x09) => 00001001 => 0x09 +10111111 (0xfd) => 11111101 => 0xfd +10001011 (0xd1) => 11010001 => 0xd1 +01000111 (0xe2) => 11100010 => 0xe2 +11011111 (0xfb) => 11111011 => 0xfb +10000101 (0xa1) => 10100001 => 0xa1 +11110100 (0x2f) => 00101111 => 0x2f +01011001 (0x9a) => 10011010 => 0x9a +01110100 (0x2e) => 00101110 => 0x2e +01110101 (0xae) => 10101110 => 0xae +00100000 (0x04) => 00000100 => 0x04 +01000010 (0x42) => 01000010 => 0x42 +11010011 (0xcb) => 11001011 => 0xcb +01111001 (0x9e) => 10011110 => 0x9e +10011101 (0xb9) => 10111001 => 0xb9 +00100010 (0x44) => 01000100 => 0x44 +01011110 (0x7a) => 01111010 => 0x7a +10100101 (0xa5) => 10100101 => 0xa5 +10000111 (0xe1) => 11100001 => 0xe1 +01001000 (0x12) => 00010010 => 0x12 +11101100 (0x37) => 00110111 => 0x37 +01001110 (0x72) => 01110010 => 0x72 +10010100 (0x29) => 00101001 => 0x29 +00111111 (0xfc) => 11111100 => 0xfc +11100000 (0x07) => 00000111 => 0x07 +01010100 (0x2a) => 00101010 => 0x2a +10101101 (0xb5) => 10110101 => 0xb5 +10100000 (0x05) => 00000101 => 0x05 +10011010 (0x59) => 01011001 => 0x59 +11100111 (0xe7) => 11100111 => 0xe7 +01001011 (0xd2) => 11010010 => 0xd2 +01100110 (0x66) => 01100110 => 0x66 +11000001 (0x83) => 10000011 => 0x83 +01111101 (0xbe) => 10111110 => 0xbe +11010101 (0xab) => 10101011 => 0xab +00011110 (0x78) => 01111000 => 0x78 +11001001 (0x93) => 10010011 => 0x93 +01100100 (0x26) => 00100110 => 0x26 +10010110 (0x69) => 01101001 => 0x69 +11100100 (0x27) => 00100111 => 0x27 +10001000 (0x11) => 00010001 => 0x11 +11010100 (0x2b) => 00101011 => 0x2b +00000000 (0x00) => 00000000 => 0x00 +10001010 (0x51) => 01010001 => 0x51 +11110110 (0x6f) => 01101111 => 0x6f +00101010 (0x54) => 01010100 => 0x54 +10111010 (0x5d) => 01011101 => 0x5d +00110111 (0xec) => 11101100 => 0xec +00111010 (0x5c) => 01011100 => 0x5c +11100010 (0x47) => 01000111 => 0x47 +01010001 (0x8a) => 10001010 => 0x8a +00111010 (0x5c) => 01011100 => 0x5c +00100000 (0x04) => 00000100 => 0x04 +00101110 (0x74) => 01110100 => 0x74 +10100000 (0x05) => 00000101 => 0x05 +10110001 (0x8d) => 10001101 => 0x8d +10110100 (0x2d) => 00101101 => 0x2d +01100100 (0x26) => 00100110 => 0x26 +01011001 (0x9a) => 10011010 => 0x9a +10111111 (0xfd) => 11111101 => 0xfd +11101010 (0x57) => 01010111 => 0x57 +11101111 (0xf7) => 11110111 => 0xf7 +10010010 (0x49) => 01001001 => 0x49 +10000110 (0x61) => 01100001 => 0x61 +10000010 (0x41) => 01000001 => 0x41 +00100110 (0x64) => 01100100 => 0x64 +00111100 (0x3c) => 00111100 => 0x3c +00100000 (0x04) => 00000100 => 0x04 +10000110 (0x61) => 01100001 => 0x61 +01010100 (0x2a) => 00101010 => 0x2a +10000100 (0x21) => 00100001 => 0x21 +11000110 (0x63) => 01100011 => 0x63 +10100101 (0xa5) => 10100101 => 0xa5 +10100101 (0xa5) => 10100101 => 0xa5 +00011101 (0xb8) => 10111000 => 0xb8 +00110110 (0x6c) => 01101100 => 0x6c +01101000 (0x16) => 00010110 => 0x16 +00000010 (0x40) => 01000000 => 0x40 +00000110 (0x60) => 01100000 => 0x60 +11011001 (0x9b) => 10011011 => 0x9b +11110110 (0x6f) => 01101111 => 0x6f +00010111 (0xe8) => 11101000 => 0xe8 +11010000 (0x0b) => 00001011 => 0x0b +00111001 (0x9c) => 10011100 => 0x9c +00000101 (0xa0) => 10100000 => 0xa0 +11111011 (0xdf) => 11011111 => 0xdf +11110001 (0x8f) => 10001111 => 0x8f +00101010 (0x54) => 01010100 => 0x54 +01100011 (0xc6) => 11000110 => 0xc6 +11100111 (0xe7) => 11100111 => 0xe7 +11010111 (0xeb) => 11101011 => 0xeb +10001000 (0x11) => 00010001 => 0x11 +11101101 (0xb7) => 10110111 => 0xb7 +01110100 (0x2e) => 00101110 => 0x2e +01000111 (0xe2) => 11100010 => 0xe2 +10001000 (0x11) => 00010001 => 0x11 +01000000 (0x02) => 00000010 => 0x02 +01000101 (0xa2) => 10100010 => 0xa2 +10001010 (0x51) => 01010001 => 0x51 +10111010 (0x5d) => 01011101 => 0x5d +10101011 (0xd5) => 11010101 => 0xd5 +00111011 (0xdc) => 11011100 => 0xdc +11011101 (0xbb) => 10111011 => 0xbb +00100101 (0xa4) => 10100100 => 0xa4 +01111111 (0xfe) => 11111110 => 0xfe +11110100 (0x2f) => 00101111 => 0x2f \ +01100100 (0x26) => 00100110 => 0x26 | +10100010 (0x45) => 01000101 => 0x45 | +11100110 (0x67) => 01100111 => 0x67 / CRC32 = 0x6745262f + +31.72.53.e9.c0.85.80.2b.88.c1.14.dd.f4.a2.02.40.4e.91.af.7b.d0.b8.7d.c6.c0.20.94.6f.1e.68.53.35.f2.3e.dd.b8.8f.1b.fa.97.fe.66.80.56.f9.8b.af.60.4d.13.8f.32.04.0b.ac.0b.f4.49.1f.e7.d6.86.af.f0.9c.77.ad.81.79.68.87.35.6c.d9.4f.66.7f.12.e7.50.bb.25.ac.ae.40.6b.a9.66.43.f9.d4.7e.8f.6a.55.20.a6.3d.7c.5a.c8.6c.31.20.90.92.c6.b0.28.65.b3.e1.af.a0.fe.f1.2b.f1.cc.69.04.dd.89.51.9a.58.72.e8.9f.ae.ed.00.df.d1.f1.06.9e.54.7c.2b.57.58.95.7c.de.34.4f.c8.29.63.72.12.3a.ab.af.e4.c2.8f.58.1a.d1.80.b6.fd.e9.13.d7.9c.25.15.30.a6.b7.9f.fb.10.c1.db.4d.37.2a.6f.8c.d2.b2.87.22.a9.38.ed.36.9f.61.85.ec.ac.75.a1.25.f6.d6.08.59.48.1f.c7.18.6d.88.19.e2.00.30.dd.24.43.cc.1e.8f.bd.88.df.c1.1e.5a.b6.c6.fc.ba.98.2a.36.d5.0b.2e.d6.68.08.91.d2.fc.9f.0e.74.2f.e9.3c.0d.93.e5.f2.fd.ff.8e.25.c1.f0.74.ad.ac.aa.6e.31.cf.f5.a9.ab.6d.e3.7b.ad.82.d5.c7.03.30.b2.09.91.27.38.3f.d2.72.ee.5c.c8.40.58.a6.fd.ad.e4.dd.0a.dd.57.61.3a.1c.4c.9b.6c.59.e8.70.52.56.6d.d7.da.57.6d.f7.20.d7.6e.0b.0b.88.4e.23.2d.09.8d.41.01.6a.04.96.cd.c9.76.5a.c0.9c.7e.22.13.ae.60.14.0b.36.9c.e4.10.4d.cb.08.0c.84.bf.fc.c6.22.ec.99.f5.7f.f0.73.3c.5b.8d.0d.09.26.33.3d.8e.03.22.0a.48.27.63.3b.15.f4.41.b4.db.fb.a9.ac.0a.c3.4a.29.56.70.5c.49.c3.77.0c.f7.ea.97.2d.4f.b7.76.56.4f.c5.5a.6f.bb.25.09.fd.d1.e2.fb.a1.2f.9a.2e.ae.04.42.cb.9e.b9.44.7a.a5.e1.12.37.72.29.fc.07.2a.b5.05.59.e7.d2.66.83.be.ab.78.93.26.69.27.11.2b.00.51.6f.54.5d.ec.5c.47.8a.5c.04.74.05.8d.2d.26.9a.fd.57.f7.49.61.41.64.3c.04.61.2a.21.63.a5.a5.b8.6c.16.40.60.9b.6f.e8.0b.9c.a0.df.8f.54.c6.e7.eb.11.b7.2e.e2.11.02.a2.51.5d.d5.dc.bb.a4.fe.2f.26.45.67. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804b6c0 -s 520 -p > HP_AV_PLD_tmp.txt 2>&1 ... +running suite: crc +src/test_crc.c:657:F:hpav vectors:pbenc6 tx: CRC mismatch 0xacbc616c != 0x6745262f +src/test_crc.c:674:F:hpav vectors:pbenc6 rx: received CRC not good: 0x14f8f246 != 0x2144df1c +96%, tests: 53, failures: 2 +taille buffer (payload) = 520 (516 octets utiles + CRC32) +31.72.53.e9.c0.85.80.2b.88.c1.14.dd.f4.a2.02.40.4e.91.af.7b.d0.b8.7d.c6.c0.20.94.6f.1e.68.53.35.f2.3e.dd.b8.8f.1b.fa.97.fe.66.80.56.f9.8b.af.60.4d.13.8f.32.04.0b.ac.0b.f4.49.1f.e7.d6.86.af.f0.9c.77.ad.81.79.68.87.35.6c.d9.4f.66.7f.12.e7.50.bb.25.ac.ae.40.6b.a9.66.43.f9.d4.7e.8f.6a.55.20.a6.3d.7c.5a.c8.6c.31.20.90.92.c6.b0.28.65.b3.e1.af.a0.fe.f1.2b.f1.cc.69.04.dd.89.51.9a.58.72.e8.9f.ae.ed.00.df.d1.f1.06.9e.54.7c.2b.57.58.95.7c.de.34.4f.c8.29.63.72.12.3a.ab.af.e4.c2.8f.58.1a.d1.80.b6.fd.e9.13.d7.9c.25.15.30.a6.b7.9f.fb.10.c1.db.4d.37.2a.6f.8c.d2.b2.87.22.a9.38.ed.36.9f.61.85.ec.ac.75.a1.25.f6.d6.08.59.48.1f.c7.18.6d.88.19.e2.00.30.dd.24.43.cc.1e.8f.bd.88.df.c1.1e.5a.b6.c6.fc.ba.98.2a.36.d5.0b.2e.d6.68.08.91.d2.fc.9f.0e.74.2f.e9.3c.0d.93.e5.f2.fd.ff.8e.25.c1.f0.74.ad.ac.aa.6e.31.cf.f5.a9.ab.6d.e3.7b.ad.82.d5.c7.03.30.b2.09.91.27.38.3f.d2.72.ee.5c.c8.40.58.a6.fd.ad.e4.dd.0a.dd.57.61.3a.1c.4c.9b.6c.59.e8.70.52.56.6d.d7.da.57.6d.f7.20.d7.6e.0b.0b.88.4e.23.2d.09.8d.41.01.6a.04.96.cd.c9.76.5a.c0.9c.7e.22.13.ae.60.14.0b.36.9c.e4.10.4d.cb.08.0c.84.bf.fc.c6.22.ec.99.f5.7f.f0.73.3c.5b.8d.0d.09.26.33.3d.8e.03.22.0a.48.27.63.3b.15.f4.41.b4.db.fb.a9.ac.0a.c3.4a.29.56.70.5c.49.c3.77.0c.f7.ea.97.2d.4f.b7.76.56.4f.c5.5a.6f.bb.25.09.fd.d1.e2.fb.a1.2f.9a.2e.ae.04.42.cb.9e.b9.44.7a.a5.e1.12.37.72.29.fc.07.2a.b5.05.59.e7.d2.66.83.be.ab.78.93.26.69.27.11.2b.00.51.6f.54.5d.ec.5c.47.8a.5c.04.74.05.8d.2d.26.9a.fd.57.f7.49.61.41.64.3c.04.61.2a.21.63.a5.a5.b8.6c.16.40.60.9b.6f.e8.0b.9c.a0.df.8f.54.c6.e7.eb.11.b7.2e.e2.11.02.a2.51.5d.d5.dc.bb.a4.fe.2f.26.45.67. +CRC32 expected = 0x6745262f + + diff --git a/cesar/tools/hpav_decode/data/S19_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S19_BEACON_decod.txt index 8a006e3aab..1d5763488a 100644 --- a/cesar/tools/hpav_decode/data/S19_BEACON_decod.txt +++ b/cesar/tools/hpav_decode/data/S19_BEACON_decod.txt @@ -1,6 +1,6 @@ HomePlug AV FRAME CONTROL : -00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0100---- SNID = 4 +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 11011001 (0x9b) => 10011011 => 0x9b \ 11110010 (0x4f) => 01001111 => 0x4f | 11000101 (0xa3) => 10100011 => 0xa3 | @@ -8,11 +8,11 @@ HomePlug AV FRAME CONTROL : 01111100 (0x3e) => 00111110 => 0x3e \ 00000000 (0x00) => 00000000 => 0x00 / BTO(0) = 0x003e (62) 11011011 (0xdb) => 11011011 => 0xdb \ -11111111 (0xff) => 11111111 => 0xff / BTO(1) = 0xffdb (65499) +11111111 (0xff) => 11111111 => 0xff / BTO(1) = 0xffdb (-37) 10101110 (0x75) => 01110101 => 0x75 \ -11111111 (0xff) => 11111111 => 0xff / BTO(2) = 0xff75 (65397) +11111111 (0xff) => 11111111 => 0xff / BTO(2) = 0xff75 (-139) 10100011 (0xc5) => 11000101 => 0xc5 \ -10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfdc5 (64965) +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfdc5 (-571) 10000011 (0xc1) => 11000001 => 0xc1 \ 00100010 (0x44) => 01000100 => 0x44 | 01101110 (0x76) => 01110110 => 0x76 / CRC24 = 0x7644c1 @@ -20,7 +20,7 @@ HomePlug AV FRAME CONTROL : 40.9b.4f.a3.96.3e.00.db.ff.75.ff.c5.fd.c1.44.76. Lancement processus de test CRC : - ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804a640 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... running suite: crc 100%, tests: 53, failures: 0 taille buffer (frame control) = 16 (13 octets utiles + CRC24) @@ -30,18 +30,18 @@ CRC24 expected = 0x007644c1 HomePlug AV PAYLOAD : -01000000 (0x02) => 00000010 => 0x02 -11010110 (0x6b) => 01101011 => 0x6b -11010011 (0xcb) => 11001011 => 0xcb -10100101 (0xa5) => 10100101 => 0xa5 -10101100 (0x35) => 00110101 => 0x35 -01110010 (0x4e) => 01001110 => 0x4e -00010001 (0x88) => 10001000 => 0x88 -10000000 (0x01) => 00000001 => 0x01 -00000000 (0x00) => 00000000 => 0x00 -10000000 (0x01) => 00000001 => 0x01 -00000000 (0x00) => 00000000 => 0x00 -01000000 (0x02) => 00000010 => 0x02 +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) 00100000 (0x04) => 00000100 => 0x04 10000000 (0x01) => 00000001 => 0x01 01100000 (0x06) => 00000110 => 0x06 @@ -162,15 +162,15 @@ HomePlug AV PAYLOAD : 00000000 (0x00) => 00000000 => 0x00 00000000 (0x00) => 00000000 => 0x00 00000000 (0x00) => 00000000 => 0x00 -10110000 (0x0d) => 00001101 => 0x0d -00111000 (0x1c) => 00011100 => 0x1c -11110101 (0xaf) => 10101111 => 0xaf -10100011 (0xc5) => 11000101 => 0xc5 +10110000 (0x0d) => 00001101 => 0x0d \ +00111000 (0x1c) => 00011100 => 0x1c | +11110101 (0xaf) => 10101111 => 0xaf | +10100011 (0xc5) => 11000101 => 0xc5 / CRC32 = 0xc5af1c0d 02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.30.f4.02.05.02.45.03.31.f4.03.06.00.0b.3b.1c.66.da.06.03.4b.09.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.0d.1c.af.c5. Lancement processus de test CRC : - ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804a640 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... running suite: crc 100%, tests: 53, failures: 0 taille buffer (payload) = 136 (132 octets utiles + CRC32) diff --git a/cesar/tools/hpav_decode/data/S20_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S20_BEACON_decod.txt index f5018e9344..42f97a1a87 100644 --- a/cesar/tools/hpav_decode/data/S20_BEACON_decod.txt +++ b/cesar/tools/hpav_decode/data/S20_BEACON_decod.txt @@ -1,18 +1,18 @@ HomePlug AV FRAME CONTROL : -00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0100---- SNID = 4 +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 10010111 (0xe9) => 11101001 => 0xe9 \ 10001001 (0x91) => 10010001 => 0x91 | 01001101 (0xb2) => 10110010 => 0xb2 | 01101001 (0x96) => 10010110 => 0x96 / BTS = 0x96b291e9 (2528285161) 10111001 (0x9d) => 10011101 => 0x9d \ -11111111 (0xff) => 11111111 => 0xff / BTO(0) = 0xff9d (65437) +11111111 (0xff) => 11111111 => 0xff / BTO(0) = 0xff9d (-99) 11101100 (0x37) => 00110111 => 0x37 \ -11111111 (0xff) => 11111111 => 0xff / BTO(1) = 0xff37 (65335) +11111111 (0xff) => 11111111 => 0xff / BTO(1) = 0xff37 (-201) 11100001 (0x87) => 10000111 => 0x87 \ -10111111 (0xfd) => 11111101 => 0xfd / BTO(2) = 0xfd87 (64903) +10111111 (0xfd) => 11111101 => 0xfd / BTO(2) = 0xfd87 (-633) 11000011 (0xc3) => 11000011 => 0xc3 \ -10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfdc3 (64963) +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfdc3 (-573) 00100110 (0x64) => 01100100 => 0x64 \ 10010000 (0x09) => 00001001 => 0x09 | 11101011 (0xd7) => 11010111 => 0xd7 / CRC24 = 0xd70964 @@ -20,7 +20,7 @@ HomePlug AV FRAME CONTROL : 40.e9.91.b2.96.9d.ff.37.ff.87.fd.c3.fd.64.09.d7. Lancement processus de test CRC : - ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804a640 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... running suite: crc 100%, tests: 53, failures: 0 taille buffer (frame control) = 16 (13 octets utiles + CRC24) @@ -30,18 +30,18 @@ CRC24 expected = 0x00d70964 HomePlug AV PAYLOAD : -01000000 (0x02) => 00000010 => 0x02 -11010110 (0x6b) => 01101011 => 0x6b -11010011 (0xcb) => 11001011 => 0xcb -10100101 (0xa5) => 10100101 => 0xa5 -10101100 (0x35) => 00110101 => 0x35 -01110010 (0x4e) => 01001110 => 0x4e -00010001 (0x88) => 10001000 => 0x88 -10000000 (0x01) => 00000001 => 0x01 -00000000 (0x00) => 00000000 => 0x00 -10000000 (0x01) => 00000001 => 0x01 -00000000 (0x00) => 00000000 => 0x00 -01000000 (0x02) => 00000010 => 0x02 +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) 00100000 (0x04) => 00000100 => 0x04 10000000 (0x01) => 00000001 => 0x01 01100000 (0x06) => 00000110 => 0x06 @@ -162,15 +162,15 @@ HomePlug AV PAYLOAD : 00000000 (0x00) => 00000000 => 0x00 00000000 (0x00) => 00000000 => 0x00 00000000 (0x00) => 00000000 => 0x00 -10101000 (0x15) => 00010101 => 0x15 -11011111 (0xfb) => 11111011 => 0xfb -10001100 (0x31) => 00110001 => 0x31 -01010001 (0x8a) => 10001010 => 0x8a +10101000 (0x15) => 00010101 => 0x15 \ +11011111 (0xfb) => 11111011 => 0xfb | +10001100 (0x31) => 00110001 => 0x31 | +01010001 (0x8a) => 10001010 => 0x8a / CRC32 = 0x8a31fb15 02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.20.f4.02.05.02.45.03.21.f4.03.06.00.0b.3b.1c.66.da.06.03.1b.09.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.15.fb.31.8a. Lancement processus de test CRC : - ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804a640 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... running suite: crc 100%, tests: 53, failures: 0 taille buffer (payload) = 136 (132 octets utiles + CRC32) diff --git a/cesar/tools/hpav_decode/data/S21_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S21_BEACON_decod.txt index 1c5d3d260f..a56a1c86c6 100644 --- a/cesar/tools/hpav_decode/data/S21_BEACON_decod.txt +++ b/cesar/tools/hpav_decode/data/S21_BEACON_decod.txt @@ -1,18 +1,18 @@ HomePlug AV FRAME CONTROL : -00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0100---- SNID = 4 +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 11000111 (0xe3) => 11100011 => 0xe3 \ 11000111 (0xe3) => 11100011 => 0xe3 | 10000011 (0xc1) => 11000001 => 0xc1 | 01101001 (0x96) => 10010110 => 0x96 / BTS = 0x96c1e3e3 (2529289187) 01011001 (0x9a) => 10011010 => 0x9a \ -11111111 (0xff) => 11111111 => 0xff / BTO(0) = 0xff9a (65434) +11111111 (0xff) => 11111111 => 0xff / BTO(0) = 0xff9a (-102) 01010111 (0xea) => 11101010 => 0xea \ -10111111 (0xfd) => 11111101 => 0xfd / BTO(1) = 0xfdea (65002) +10111111 (0xfd) => 11111101 => 0xfd / BTO(1) = 0xfdea (-534) 01100100 (0x26) => 00100110 => 0x26 \ -01111111 (0xfe) => 11111110 => 0xfe / BTO(2) = 0xfe26 (65062) +01111111 (0xfe) => 11111110 => 0xfe / BTO(2) = 0xfe26 (-474) 11111101 (0xbf) => 10111111 => 0xbf \ -10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfdbf (64959) +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfdbf (-577) 10011110 (0x79) => 01111001 => 0x79 \ 11101110 (0x77) => 01110111 => 0x77 | 10110110 (0x6d) => 01101101 => 0x6d / CRC24 = 0x6d7779 @@ -20,7 +20,7 @@ HomePlug AV FRAME CONTROL : 40.e3.e3.c1.96.9a.ff.ea.fd.26.fe.bf.fd.79.77.6d. Lancement processus de test CRC : - ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804a640 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... running suite: crc 100%, tests: 53, failures: 0 taille buffer (frame control) = 16 (13 octets utiles + CRC24) @@ -30,18 +30,18 @@ CRC24 expected = 0x006d7779 HomePlug AV PAYLOAD : -01000000 (0x02) => 00000010 => 0x02 -11010110 (0x6b) => 01101011 => 0x6b -11010011 (0xcb) => 11001011 => 0xcb -10100101 (0xa5) => 10100101 => 0xa5 -10101100 (0x35) => 00110101 => 0x35 -01110010 (0x4e) => 01001110 => 0x4e -00010001 (0x88) => 10001000 => 0x88 -10000000 (0x01) => 00000001 => 0x01 -00000000 (0x00) => 00000000 => 0x00 -10000000 (0x01) => 00000001 => 0x01 -00000000 (0x00) => 00000000 => 0x00 -01000000 (0x02) => 00000010 => 0x02 +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) 00100000 (0x04) => 00000100 => 0x04 10000000 (0x01) => 00000001 => 0x01 01100000 (0x06) => 00000110 => 0x06 @@ -162,15 +162,15 @@ HomePlug AV PAYLOAD : 00000000 (0x00) => 00000000 => 0x00 00000000 (0x00) => 00000000 => 0x00 00000000 (0x00) => 00000000 => 0x00 -11100101 (0xa7) => 10100111 => 0xa7 -10000000 (0x01) => 00000001 => 0x01 -01111001 (0x9e) => 10011110 => 0x9e -11010000 (0x0b) => 00001011 => 0x0b +11100101 (0xa7) => 10100111 => 0xa7 \ +10000000 (0x01) => 00000001 => 0x01 | +01111001 (0x9e) => 10011110 => 0x9e | +11010000 (0x0b) => 00001011 => 0x0b / CRC32 = 0x0b9e01a7 02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.20.f4.02.05.02.45.03.21.f4.03.06.00.0b.3b.1c.66.da.06.03.38.19.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.a7.01.9e.0b. Lancement processus de test CRC : - ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804a640 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... running suite: crc 100%, tests: 53, failures: 0 taille buffer (payload) = 136 (132 octets utiles + CRC32) diff --git a/cesar/tools/hpav_decode/data/S22_BEACON_FC.txt b/cesar/tools/hpav_decode/data/S22_BEACON_FC.txt new file mode 100644 index 0000000000..c522a4329e --- /dev/null +++ b/cesar/tools/hpav_decode/data/S22_BEACON_FC.txt @@ -0,0 +1,128 @@ +0 +0 +0 +0 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +0 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +1 diff --git a/cesar/tools/hpav_decode/data/S22_BEACON_PLD.txt b/cesar/tools/hpav_decode/data/S22_BEACON_PLD.txt new file mode 100644 index 0000000000..235e1d7574 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S22_BEACON_PLD.txt @@ -0,0 +1,1088 @@ +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +0 +0 +0 +1 +0 +0 +1 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 diff --git a/cesar/tools/hpav_decode/data/S22_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S22_BEACON_decod.txt new file mode 100644 index 0000000000..fafb241431 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S22_BEACON_decod.txt @@ -0,0 +1,180 @@ +HomePlug AV FRAME CONTROL : + +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 +01111101 (0xbe) => 10111110 => 0xbe \ +10101000 (0x15) => 00010101 => 0x15 | +10001011 (0xd1) => 11010001 => 0xd1 | +01101001 (0x96) => 10010110 => 0x96 / BTS = 0x96d115be (2530284990) +00001010 (0x50) => 01010000 => 0x50 \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(0) = 0xfe50 (-432) +00110001 (0x8c) => 10001100 => 0x8c \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(1) = 0xfe8c (-372) +10100100 (0x25) => 00100101 => 0x25 \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(2) = 0xfe25 (-475) +11001101 (0xb3) => 10110011 => 0xb3 \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfdb3 (-589) +11101100 (0x37) => 00110111 => 0x37 \ +10110000 (0x0d) => 00001101 => 0x0d | +01011101 (0xba) => 10111010 => 0xba / CRC24 = 0xba0d37 + +40.be.15.d1.96.50.fe.8c.fe.25.fe.b3.fd.37.0d.ba. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (frame control) = 16 (13 octets utiles + CRC24) +40.be.15.d1.96.50.fe.8c.fe.25.fe.b3.fd.37.0d.ba. +CRC24 expected = 0x00ba0d37 + + +HomePlug AV PAYLOAD : + +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) +00100000 (0x04) => 00000100 => 0x04 +10000000 (0x01) => 00000001 => 0x01 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +10000000 (0x01) => 00000001 => 0x01 +10111111 (0xfd) => 11111101 => 0xfd +00101100 (0x34) => 00110100 => 0x34 +00001000 (0x10) => 00010000 => 0x10 +00101111 (0xf4) => 11110100 => 0xf4 +01000000 (0x02) => 00000010 => 0x02 +10100000 (0x05) => 00000101 => 0x05 +01000000 (0x02) => 00000010 => 0x02 +10100010 (0x45) => 01000101 => 0x45 +11000000 (0x03) => 00000011 => 0x03 +10001000 (0x11) => 00010001 => 0x11 +00101111 (0xf4) => 11110100 => 0xf4 +11000000 (0x03) => 00000011 => 0x03 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +11010000 (0x0b) => 00001011 => 0x0b +11011100 (0x3b) => 00111011 => 0x3b +00111000 (0x1c) => 00011100 => 0x1c +01100110 (0x66) => 01100110 => 0x66 +01011011 (0xda) => 11011010 => 0xda +01100000 (0x06) => 00000110 => 0x06 +11000000 (0x03) => 00000011 => 0x03 +10011100 (0x39) => 00111001 => 0x39 +10010000 (0x09) => 00001001 => 0x09 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +01101010 (0x56) => 01010110 => 0x56 \ +00100100 (0x24) => 00100100 => 0x24 | +10100000 (0x05) => 00000101 => 0x05 | +00000011 (0xc0) => 11000000 => 0xc0 / CRC32 = 0xc0052456 + +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.10.f4.02.05.02.45.03.11.f4.03.06.00.0b.3b.1c.66.da.06.03.39.09.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.56.24.05.c0. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (payload) = 136 (132 octets utiles + CRC32) +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.10.f4.02.05.02.45.03.11.f4.03.06.00.0b.3b.1c.66.da.06.03.39.09.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.56.24.05.c0. +CRC32 expected = 0xc0052456 + + diff --git a/cesar/tools/hpav_decode/data/S23_BEACON_FC.txt b/cesar/tools/hpav_decode/data/S23_BEACON_FC.txt new file mode 100644 index 0000000000..e4e42146bc --- /dev/null +++ b/cesar/tools/hpav_decode/data/S23_BEACON_FC.txt @@ -0,0 +1,128 @@ +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 diff --git a/cesar/tools/hpav_decode/data/S23_BEACON_PLD.txt b/cesar/tools/hpav_decode/data/S23_BEACON_PLD.txt new file mode 100644 index 0000000000..8f27771bd2 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S23_BEACON_PLD.txt @@ -0,0 +1,1088 @@ +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 diff --git a/cesar/tools/hpav_decode/data/S23_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S23_BEACON_decod.txt new file mode 100644 index 0000000000..346820d2cb --- /dev/null +++ b/cesar/tools/hpav_decode/data/S23_BEACON_decod.txt @@ -0,0 +1,180 @@ +HomePlug AV FRAME CONTROL : + +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 +11011101 (0xbb) => 10111011 => 0xbb \ +11011010 (0x5b) => 01011011 => 0x5b | +00000111 (0xe0) => 11100000 => 0xe0 | +01101001 (0x96) => 10010110 => 0x96 / BTS = 0x96e05bbb (2531285947) +00111100 (0x3c) => 00111100 => 0x3c \ +00000000 (0x00) => 00000000 => 0x00 / BTO(0) = 0x003c (60) +10101011 (0xd5) => 11010101 => 0xd5 \ +11111111 (0xff) => 11111111 => 0xff / BTO(1) = 0xffd5 (-43) +11000110 (0x63) => 01100011 => 0x63 \ +11111111 (0xff) => 11111111 => 0xff / BTO(2) = 0xff63 (-157) +11001101 (0xb3) => 10110011 => 0xb3 \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfdb3 (-589) +11011101 (0xbb) => 10111011 => 0xbb \ +10011100 (0x39) => 00111001 => 0x39 | +11011011 (0xdb) => 11011011 => 0xdb / CRC24 = 0xdb39bb + +40.bb.5b.e0.96.3c.00.d5.ff.63.ff.b3.fd.bb.39.db. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (frame control) = 16 (13 octets utiles + CRC24) +40.bb.5b.e0.96.3c.00.d5.ff.63.ff.b3.fd.bb.39.db. +CRC24 expected = 0x00db39bb + + +HomePlug AV PAYLOAD : + +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) +00100000 (0x04) => 00000100 => 0x04 +10000000 (0x01) => 00000001 => 0x01 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +10000000 (0x01) => 00000001 => 0x01 +10111111 (0xfd) => 11111101 => 0xfd +00101100 (0x34) => 00110100 => 0x34 +00001100 (0x30) => 00110000 => 0x30 +00101111 (0xf4) => 11110100 => 0xf4 +01000000 (0x02) => 00000010 => 0x02 +10100000 (0x05) => 00000101 => 0x05 +01000000 (0x02) => 00000010 => 0x02 +10100010 (0x45) => 01000101 => 0x45 +11000000 (0x03) => 00000011 => 0x03 +10001100 (0x31) => 00110001 => 0x31 +00101111 (0xf4) => 11110100 => 0xf4 +11000000 (0x03) => 00000011 => 0x03 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +11010000 (0x0b) => 00001011 => 0x0b +11011100 (0x3b) => 00111011 => 0x3b +00111000 (0x1c) => 00011100 => 0x1c +01100110 (0x66) => 01100110 => 0x66 +01011011 (0xda) => 11011010 => 0xda +01100000 (0x06) => 00000110 => 0x06 +11000000 (0x03) => 00000011 => 0x03 +01100101 (0xa6) => 10100110 => 0xa6 +01110000 (0x0e) => 00001110 => 0x0e +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +11001000 (0x13) => 00010011 => 0x13 \ +11101100 (0x37) => 00110111 => 0x37 | +00000001 (0x80) => 10000000 => 0x80 | +10100001 (0x85) => 10000101 => 0x85 / CRC32 = 0x85803713 + +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.30.f4.02.05.02.45.03.31.f4.03.06.00.0b.3b.1c.66.da.06.03.a6.0e.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.13.37.80.85. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (payload) = 136 (132 octets utiles + CRC32) +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.30.f4.02.05.02.45.03.31.f4.03.06.00.0b.3b.1c.66.da.06.03.a6.0e.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.13.37.80.85. +CRC32 expected = 0x85803713 + + diff --git a/cesar/tools/hpav_decode/data/S24_BEACON_FC.txt b/cesar/tools/hpav_decode/data/S24_BEACON_FC.txt new file mode 100644 index 0000000000..a4b9766cbf --- /dev/null +++ b/cesar/tools/hpav_decode/data/S24_BEACON_FC.txt @@ -0,0 +1,128 @@ +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 diff --git a/cesar/tools/hpav_decode/data/S24_BEACON_PLD.txt b/cesar/tools/hpav_decode/data/S24_BEACON_PLD.txt new file mode 100644 index 0000000000..ea96ef27ba --- /dev/null +++ b/cesar/tools/hpav_decode/data/S24_BEACON_PLD.txt @@ -0,0 +1,1088 @@ +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 diff --git a/cesar/tools/hpav_decode/data/S24_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S24_BEACON_decod.txt new file mode 100644 index 0000000000..1ad1507330 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S24_BEACON_decod.txt @@ -0,0 +1,180 @@ +HomePlug AV FRAME CONTROL : + +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 +10101111 (0xf5) => 11110101 => 0xf5 \ +01011001 (0x9a) => 10011010 => 0x9a | +11110111 (0xef) => 11101111 => 0xef | +01101001 (0x96) => 10010110 => 0x96 / BTS = 0x96ef9af5 (2532285173) +10011001 (0x99) => 10011001 => 0x99 \ +11111111 (0xff) => 11111111 => 0xff / BTO(0) = 0xff99 (-103) +11100100 (0x27) => 00100111 => 0x27 \ +11111111 (0xff) => 11111111 => 0xff / BTO(1) = 0xff27 (-217) +11101110 (0x77) => 01110111 => 0x77 \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(2) = 0xfd77 (-649) +01100101 (0xa6) => 10100110 => 0xa6 \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfda6 (-602) +11000111 (0xe3) => 11100011 => 0xe3 \ +00101010 (0x54) => 01010100 => 0x54 | +11010001 (0x8b) => 10001011 => 0x8b / CRC24 = 0x8b54e3 + +40.f5.9a.ef.96.99.ff.27.ff.77.fd.a6.fd.e3.54.8b. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (frame control) = 16 (13 octets utiles + CRC24) +40.f5.9a.ef.96.99.ff.27.ff.77.fd.a6.fd.e3.54.8b. +CRC24 expected = 0x008b54e3 + + +HomePlug AV PAYLOAD : + +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) +00100000 (0x04) => 00000100 => 0x04 +10000000 (0x01) => 00000001 => 0x01 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +10000000 (0x01) => 00000001 => 0x01 +10111111 (0xfd) => 11111101 => 0xfd +00101100 (0x34) => 00110100 => 0x34 +00000100 (0x20) => 00100000 => 0x20 +00101111 (0xf4) => 11110100 => 0xf4 +01000000 (0x02) => 00000010 => 0x02 +10100000 (0x05) => 00000101 => 0x05 +01000000 (0x02) => 00000010 => 0x02 +10100010 (0x45) => 01000101 => 0x45 +11000000 (0x03) => 00000011 => 0x03 +10000100 (0x21) => 00100001 => 0x21 +00101111 (0xf4) => 11110100 => 0xf4 +11000000 (0x03) => 00000011 => 0x03 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +11010000 (0x0b) => 00001011 => 0x0b +11011100 (0x3b) => 00111011 => 0x3b +00111000 (0x1c) => 00011100 => 0x1c +01100110 (0x66) => 01100110 => 0x66 +01011011 (0xda) => 11011010 => 0xda +01100000 (0x06) => 00000110 => 0x06 +11000000 (0x03) => 00000011 => 0x03 +00100110 (0x64) => 01100100 => 0x64 +11010000 (0x0b) => 00001011 => 0x0b +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +01010010 (0x4a) => 01001010 => 0x4a \ +10101001 (0x95) => 10010101 => 0x95 | +10000101 (0xa1) => 10100001 => 0xa1 | +11111111 (0xff) => 11111111 => 0xff / CRC32 = 0xffa1954a + +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.20.f4.02.05.02.45.03.21.f4.03.06.00.0b.3b.1c.66.da.06.03.64.0b.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.4a.95.a1.ff. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (payload) = 136 (132 octets utiles + CRC32) +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.20.f4.02.05.02.45.03.21.f4.03.06.00.0b.3b.1c.66.da.06.03.64.0b.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.4a.95.a1.ff. +CRC32 expected = 0xffa1954a + + diff --git a/cesar/tools/hpav_decode/data/S25_BEACON_FC.txt b/cesar/tools/hpav_decode/data/S25_BEACON_FC.txt new file mode 100644 index 0000000000..da66359a43 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S25_BEACON_FC.txt @@ -0,0 +1,128 @@ +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +0 diff --git a/cesar/tools/hpav_decode/data/S25_BEACON_PLD.txt b/cesar/tools/hpav_decode/data/S25_BEACON_PLD.txt new file mode 100644 index 0000000000..b2da7b3072 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S25_BEACON_PLD.txt @@ -0,0 +1,1088 @@ +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +1 +0 +1 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +1 +0 diff --git a/cesar/tools/hpav_decode/data/S25_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S25_BEACON_decod.txt new file mode 100644 index 0000000000..cc6fa9cb40 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S25_BEACON_decod.txt @@ -0,0 +1,180 @@ +HomePlug AV FRAME CONTROL : + +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 +10000000 (0x01) => 00000001 => 0x01 \ +01110111 (0xee) => 11101110 => 0xee | +01111111 (0xfe) => 11111110 => 0xfe | +01101001 (0x96) => 10010110 => 0x96 / BTS = 0x96feee01 (2533289473) +01110001 (0x8e) => 10001110 => 0x8e \ +11111111 (0xff) => 11111111 => 0xff / BTO(0) = 0xff8e (-114) +01111011 (0xde) => 11011110 => 0xde \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(1) = 0xfdde (-546) +10110000 (0x0d) => 00001101 => 0x0d \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(2) = 0xfe0d (-499) +00111001 (0x9c) => 10011100 => 0x9c \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfd9c (-612) +00100010 (0x44) => 01000100 => 0x44 \ +10101100 (0x35) => 00110101 => 0x35 | +00111110 (0x7c) => 01111100 => 0x7c / CRC24 = 0x7c3544 + +40.01.ee.fe.96.8e.ff.de.fd.0d.fe.9c.fd.44.35.7c. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (frame control) = 16 (13 octets utiles + CRC24) +40.01.ee.fe.96.8e.ff.de.fd.0d.fe.9c.fd.44.35.7c. +CRC24 expected = 0x007c3544 + + +HomePlug AV PAYLOAD : + +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) +00100000 (0x04) => 00000100 => 0x04 +10000000 (0x01) => 00000001 => 0x01 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +10000000 (0x01) => 00000001 => 0x01 +10111111 (0xfd) => 11111101 => 0xfd +00101100 (0x34) => 00110100 => 0x34 +00000100 (0x20) => 00100000 => 0x20 +00101111 (0xf4) => 11110100 => 0xf4 +01000000 (0x02) => 00000010 => 0x02 +10100000 (0x05) => 00000101 => 0x05 +01000000 (0x02) => 00000010 => 0x02 +10100010 (0x45) => 01000101 => 0x45 +11000000 (0x03) => 00000011 => 0x03 +10000100 (0x21) => 00100001 => 0x21 +00101111 (0xf4) => 11110100 => 0xf4 +11000000 (0x03) => 00000011 => 0x03 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +11010000 (0x0b) => 00001011 => 0x0b +11011100 (0x3b) => 00111011 => 0x3b +00111000 (0x1c) => 00011100 => 0x1c +01100110 (0x66) => 01100110 => 0x66 +01011011 (0xda) => 11011010 => 0xda +01100000 (0x06) => 00000110 => 0x06 +11000000 (0x03) => 00000011 => 0x03 +11101001 (0x97) => 10010111 => 0x97 +00111000 (0x1c) => 00011100 => 0x1c +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +10010100 (0x29) => 00101001 => 0x29 \ +00101000 (0x14) => 00010100 => 0x14 | +01101111 (0xf6) => 11110110 => 0xf6 | +01000010 (0x42) => 01000010 => 0x42 / CRC32 = 0x42f61429 + +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.20.f4.02.05.02.45.03.21.f4.03.06.00.0b.3b.1c.66.da.06.03.97.1c.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.29.14.f6.42. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (payload) = 136 (132 octets utiles + CRC32) +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.20.f4.02.05.02.45.03.21.f4.03.06.00.0b.3b.1c.66.da.06.03.97.1c.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.29.14.f6.42. +CRC32 expected = 0x42f61429 + + diff --git a/cesar/tools/hpav_decode/data/S26_BEACON_FC.txt b/cesar/tools/hpav_decode/data/S26_BEACON_FC.txt new file mode 100644 index 0000000000..96de99ab44 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S26_BEACON_FC.txt @@ -0,0 +1,128 @@ +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 diff --git a/cesar/tools/hpav_decode/data/S26_BEACON_PLD.txt b/cesar/tools/hpav_decode/data/S26_BEACON_PLD.txt new file mode 100644 index 0000000000..f286e51f0b --- /dev/null +++ b/cesar/tools/hpav_decode/data/S26_BEACON_PLD.txt @@ -0,0 +1,1088 @@ +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +1 +0 +0 +1 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 diff --git a/cesar/tools/hpav_decode/data/S26_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S26_BEACON_decod.txt new file mode 100644 index 0000000000..ecb08ffbf7 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S26_BEACON_decod.txt @@ -0,0 +1,180 @@ +HomePlug AV FRAME CONTROL : + +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 +10111010 (0x5d) => 01011101 => 0x5d \ +00111000 (0x1c) => 00011100 => 0x1c | +01110000 (0x0e) => 00001110 => 0x0e | +11101001 (0x97) => 10010111 => 0x97 / BTS = 0x970e1c5d (2534284381) +00001010 (0x50) => 01010000 => 0x50 \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(0) = 0xfe50 (-432) +11111110 (0x7f) => 01111111 => 0x7f \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(1) = 0xfe7f (-385) +01110000 (0x0e) => 00001110 => 0x0e \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(2) = 0xfe0e (-498) +00111001 (0x9c) => 10011100 => 0x9c \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfd9c (-612) +01110000 (0x0e) => 00001110 => 0x0e \ +00100001 (0x84) => 10000100 => 0x84 | +11011101 (0xbb) => 10111011 => 0xbb / CRC24 = 0xbb840e + +40.5d.1c.0e.97.50.fe.7f.fe.0e.fe.9c.fd.0e.84.bb. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (frame control) = 16 (13 octets utiles + CRC24) +40.5d.1c.0e.97.50.fe.7f.fe.0e.fe.9c.fd.0e.84.bb. +CRC24 expected = 0x00bb840e + + +HomePlug AV PAYLOAD : + +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) +10100000 (0x05) => 00000101 => 0x05 +10000000 (0x01) => 00000001 => 0x01 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +10000000 (0x01) => 00000001 => 0x01 +10111111 (0xfd) => 11111101 => 0xfd +00101100 (0x34) => 00110100 => 0x34 +00001000 (0x10) => 00010000 => 0x10 +00101111 (0xf4) => 11110100 => 0xf4 +01000000 (0x02) => 00000010 => 0x02 +10100000 (0x05) => 00000101 => 0x05 +01000000 (0x02) => 00000010 => 0x02 +10100010 (0x45) => 01000101 => 0x45 +11000000 (0x03) => 00000011 => 0x03 +10001000 (0x11) => 00010001 => 0x11 +00101111 (0xf4) => 11110100 => 0xf4 +11000000 (0x03) => 00000011 => 0x03 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +11010000 (0x0b) => 00001011 => 0x0b +11011100 (0x3b) => 00111011 => 0x3b +00111000 (0x1c) => 00011100 => 0x1c +01100110 (0x66) => 01100110 => 0x66 +01011011 (0xda) => 11011010 => 0xda +00100000 (0x04) => 00000100 => 0x04 +10000000 (0x01) => 00000001 => 0x01 +01000000 (0x02) => 00000010 => 0x02 +01100000 (0x06) => 00000110 => 0x06 +11000000 (0x03) => 00000011 => 0x03 +10100100 (0x25) => 00100101 => 0x25 +10010000 (0x09) => 00001001 => 0x09 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +01010110 (0x6a) => 01101010 => 0x6a \ +11001110 (0x73) => 01110011 => 0x73 | +00001000 (0x10) => 00010000 => 0x10 | +11100111 (0xe7) => 11100111 => 0xe7 / CRC32 = 0xe710736a + +02.6b.cb.a5.35.4e.88.01.00.01.00.02.05.01.06.00.01.fd.34.10.f4.02.05.02.45.03.11.f4.03.06.00.0b.3b.1c.66.da.04.01.02.06.03.25.09.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.6a.73.10.e7. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (payload) = 136 (132 octets utiles + CRC32) +02.6b.cb.a5.35.4e.88.01.00.01.00.02.05.01.06.00.01.fd.34.10.f4.02.05.02.45.03.11.f4.03.06.00.0b.3b.1c.66.da.04.01.02.06.03.25.09.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.6a.73.10.e7. +CRC32 expected = 0xe710736a + + diff --git a/cesar/tools/hpav_decode/data/S27_BEACON_FC.txt b/cesar/tools/hpav_decode/data/S27_BEACON_FC.txt new file mode 100644 index 0000000000..f21328339d --- /dev/null +++ b/cesar/tools/hpav_decode/data/S27_BEACON_FC.txt @@ -0,0 +1,128 @@ +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 diff --git a/cesar/tools/hpav_decode/data/S27_BEACON_PLD.txt b/cesar/tools/hpav_decode/data/S27_BEACON_PLD.txt new file mode 100644 index 0000000000..2dc8472871 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S27_BEACON_PLD.txt @@ -0,0 +1,1088 @@ +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 diff --git a/cesar/tools/hpav_decode/data/S27_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S27_BEACON_decod.txt new file mode 100644 index 0000000000..253d8de4d8 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S27_BEACON_decod.txt @@ -0,0 +1,180 @@ +HomePlug AV FRAME CONTROL : + +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 +10010110 (0x69) => 01101001 => 0x69 \ +10001100 (0x31) => 00110001 => 0x31 | +10110111 (0xed) => 11101101 => 0xed | +00000000 (0x00) => 00000000 => 0x00 / BTS = 0x00ed3169 (15544681) +00001010 (0x50) => 01010000 => 0x50 \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(0) = 0xfe50 (-432) +11111110 (0x7f) => 01111111 => 0x7f \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(1) = 0xfe7f (-385) +01110000 (0x0e) => 00001110 => 0x0e \ +01111111 (0xfe) => 11111110 => 0xfe / BTO(2) = 0xfe0e (-498) +00111001 (0x9c) => 10011100 => 0x9c \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfd9c (-612) +11101110 (0x77) => 01110111 => 0x77 \ +00110111 (0xec) => 11101100 => 0xec | +10001100 (0x31) => 00110001 => 0x31 / CRC24 = 0x31ec77 + +40.69.31.ed.00.50.fe.7f.fe.0e.fe.9c.fd.77.ec.31. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (frame control) = 16 (13 octets utiles + CRC24) +40.69.31.ed.00.50.fe.7f.fe.0e.fe.9c.fd.77.ec.31. +CRC24 expected = 0x0031ec77 + + +HomePlug AV PAYLOAD : + +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +01000000 (0x02) => 00000010 => 0x02 > STEI = 2 (0x02) +10000000 (0x01) => 00000001 => 0x01 > -----001 BT = 1 (Discover Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) +00100000 (0x04) => 00000100 => 0x04 +01000000 (0x02) => 00000010 => 0x02 +10100000 (0x05) => 00000101 => 0x05 +01000000 (0x02) => 00000010 => 0x02 +10100010 (0x45) => 01000101 => 0x45 +11000000 (0x03) => 00000011 => 0x03 +10001000 (0x11) => 00010001 => 0x11 +00101111 (0xf4) => 11110100 => 0xf4 +11000000 (0x03) => 00000011 => 0x03 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +11010000 (0x0b) => 00001011 => 0x0b +11011100 (0x3b) => 00111011 => 0x3b +00111000 (0x1c) => 00011100 => 0x1c +01100110 (0x66) => 01100110 => 0x66 +00111011 (0xdc) => 11011100 => 0xdc +10100000 (0x05) => 00000101 => 0x05 +00100000 (0x04) => 00000100 => 0x04 +00001000 (0x10) => 00010000 => 0x10 +10000000 (0x01) => 00000001 => 0x01 +10000000 (0x01) => 00000001 => 0x01 +00000000 (0x00) => 00000000 => 0x00 +01100000 (0x06) => 00000110 => 0x06 +11000000 (0x03) => 00000011 => 0x03 +00111111 (0xfc) => 11111100 => 0xfc +11001100 (0x33) => 00110011 => 0x33 +10000000 (0x01) => 00000001 => 0x01 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +11111011 (0xdf) => 11011111 => 0xdf \ +00101000 (0x14) => 00010100 => 0x14 | +11000001 (0x83) => 10000011 => 0x83 | +10011101 (0xb9) => 10111001 => 0xb9 / CRC32 = 0xb98314df + +02.6b.cb.a5.35.4e.88.02.01.01.00.02.04.02.05.02.45.03.11.f4.03.06.00.0b.3b.1c.66.dc.05.04.10.01.01.00.06.03.fc.33.01.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.df.14.83.b9. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (payload) = 136 (132 octets utiles + CRC32) +02.6b.cb.a5.35.4e.88.02.01.01.00.02.04.02.05.02.45.03.11.f4.03.06.00.0b.3b.1c.66.dc.05.04.10.01.01.00.06.03.fc.33.01.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.df.14.83.b9. +CRC32 expected = 0xb98314df + + diff --git a/cesar/tools/hpav_decode/data/S28_BEACON_FC.txt b/cesar/tools/hpav_decode/data/S28_BEACON_FC.txt new file mode 100644 index 0000000000..edb4900aac --- /dev/null +++ b/cesar/tools/hpav_decode/data/S28_BEACON_FC.txt @@ -0,0 +1,128 @@ +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 diff --git a/cesar/tools/hpav_decode/data/S28_BEACON_PLD.txt b/cesar/tools/hpav_decode/data/S28_BEACON_PLD.txt new file mode 100644 index 0000000000..bc808ca581 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S28_BEACON_PLD.txt @@ -0,0 +1,1088 @@ +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +0 diff --git a/cesar/tools/hpav_decode/data/S28_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S28_BEACON_decod.txt new file mode 100644 index 0000000000..f644b0f1ee --- /dev/null +++ b/cesar/tools/hpav_decode/data/S28_BEACON_decod.txt @@ -0,0 +1,180 @@ +HomePlug AV FRAME CONTROL : + +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 +10111010 (0x5d) => 01011101 => 0x5d \ +00001110 (0x70) => 01110000 => 0x70 | +10111000 (0x1d) => 00011101 => 0x1d | +11101001 (0x97) => 10010111 => 0x97 / BTS = 0x971d705d (2535288925) +11110100 (0x2f) => 00101111 => 0x2f \ +00000000 (0x00) => 00000000 => 0x00 / BTO(0) = 0x002f (47) +01111101 (0xbe) => 10111110 => 0xbe \ +11111111 (0xff) => 11111111 => 0xff / BTO(1) = 0xffbe (-66) +00110010 (0x4c) => 01001100 => 0x4c \ +11111111 (0xff) => 11111111 => 0xff / BTO(2) = 0xff4c (-180) +01110001 (0x8e) => 10001110 => 0x8e \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfd8e (-626) +00101110 (0x74) => 01110100 => 0x74 \ +10100111 (0xe5) => 11100101 => 0xe5 | +10100110 (0x65) => 01100101 => 0x65 / CRC24 = 0x65e574 + +40.5d.70.1d.97.2f.00.be.ff.4c.ff.8e.fd.74.e5.65. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (frame control) = 16 (13 octets utiles + CRC24) +40.5d.70.1d.97.2f.00.be.ff.4c.ff.8e.fd.74.e5.65. +CRC24 expected = 0x0065e574 + + +HomePlug AV PAYLOAD : + +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) +00100000 (0x04) => 00000100 => 0x04 +10000000 (0x01) => 00000001 => 0x01 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +10000000 (0x01) => 00000001 => 0x01 +10111111 (0xfd) => 11111101 => 0xfd +00101100 (0x34) => 00110100 => 0x34 +00001100 (0x30) => 00110000 => 0x30 +00101111 (0xf4) => 11110100 => 0xf4 +01000000 (0x02) => 00000010 => 0x02 +10100000 (0x05) => 00000101 => 0x05 +01000000 (0x02) => 00000010 => 0x02 +10100010 (0x45) => 01000101 => 0x45 +11000000 (0x03) => 00000011 => 0x03 +10001100 (0x31) => 00110001 => 0x31 +00101111 (0xf4) => 11110100 => 0xf4 +11000000 (0x03) => 00000011 => 0x03 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +11010000 (0x0b) => 00001011 => 0x0b +11011100 (0x3b) => 00111011 => 0x3b +00111000 (0x1c) => 00011100 => 0x1c +01100110 (0x66) => 01100110 => 0x66 +01011011 (0xda) => 11011010 => 0xda +01100000 (0x06) => 00000110 => 0x06 +11000000 (0x03) => 00000011 => 0x03 +10101001 (0x95) => 10010101 => 0x95 +00111000 (0x1c) => 00011100 => 0x1c +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +01101110 (0x76) => 01110110 => 0x76 \ +11010001 (0x8b) => 10001011 => 0x8b | +00000101 (0xa0) => 10100000 => 0xa0 | +01001010 (0x52) => 01010010 => 0x52 / CRC32 = 0x52a08b76 + +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.30.f4.02.05.02.45.03.31.f4.03.06.00.0b.3b.1c.66.da.06.03.95.1c.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.76.8b.a0.52. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (payload) = 136 (132 octets utiles + CRC32) +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.30.f4.02.05.02.45.03.31.f4.03.06.00.0b.3b.1c.66.da.06.03.95.1c.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.76.8b.a0.52. +CRC32 expected = 0x52a08b76 + + diff --git a/cesar/tools/hpav_decode/data/S29_BEACON_FC.txt b/cesar/tools/hpav_decode/data/S29_BEACON_FC.txt new file mode 100644 index 0000000000..b992a9187e --- /dev/null +++ b/cesar/tools/hpav_decode/data/S29_BEACON_FC.txt @@ -0,0 +1,128 @@ +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +1 +0 diff --git a/cesar/tools/hpav_decode/data/S29_BEACON_PLD.txt b/cesar/tools/hpav_decode/data/S29_BEACON_PLD.txt new file mode 100644 index 0000000000..e2ae98b336 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S29_BEACON_PLD.txt @@ -0,0 +1,1088 @@ +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +1 +0 +0 +1 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 diff --git a/cesar/tools/hpav_decode/data/S29_BEACON_decod.txt b/cesar/tools/hpav_decode/data/S29_BEACON_decod.txt new file mode 100644 index 0000000000..d4e8804ce0 --- /dev/null +++ b/cesar/tools/hpav_decode/data/S29_BEACON_decod.txt @@ -0,0 +1,180 @@ +HomePlug AV FRAME CONTROL : + +00000010 (0x40) => 01000000 => 0x40 -----000 DTAV = Beacon ; ----0--- ACCESS = in-home network ; 0000---- SNID = 4 +11011010 (0x5b) => 01011011 => 0x5b \ +11111001 (0x9f) => 10011111 => 0x9f | +00110100 (0x2c) => 00101100 => 0x2c | +11101001 (0x97) => 10010111 => 0x97 / BTS = 0x972c9f5b (2536283995) +11110001 (0x8f) => 10001111 => 0x8f \ +11111111 (0xff) => 11111111 => 0xff / BTO(0) = 0xff8f (-113) +10111000 (0x1d) => 00011101 => 0x1d \ +11111111 (0xff) => 11111111 => 0xff / BTO(1) = 0xff1d (-227) +11111010 (0x5f) => 01011111 => 0x5f \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(2) = 0xfd5f (-673) +01010001 (0x8a) => 10001010 => 0x8a \ +10111111 (0xfd) => 11111101 => 0xfd / BTO(3) = 0xfd8a (-630) +00001000 (0x10) => 00010000 => 0x10 \ +00101010 (0x54) => 01010100 => 0x54 | +10110010 (0x4d) => 01001101 => 0x4d / CRC24 = 0x4d5410 + +40.5b.9f.2c.97.8f.ff.1d.ff.5f.fd.8a.fd.10.54.4d. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 16 -f > HP_AV_FC_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (frame control) = 16 (13 octets utiles + CRC24) +40.5b.9f.2c.97.8f.ff.1d.ff.5f.fd.8a.fd.10.54.4d. +CRC24 expected = 0x004d5410 + + +HomePlug AV PAYLOAD : + +01000000 (0x02) => 00000010 => 0x02 \ 00000010 +11010110 (0x6b) => 01101011 => 0x6b | 01101011 +11010011 (0xcb) => 11001011 => 0xcb | 11001011 +10100101 (0xa5) => 10100101 => 0xa5 | 10100101 +10101100 (0x35) => 00110101 => 0x35 | 00110101 +01110010 (0x4e) => 01001110 => 0x4e | 01001110 +00010001 (0x88) => 10001000 => 0x88 / --001000 NID = 0x084e35a5cb6b02 ; --00---- SL = 0 (Simple-Connect) 10------ HM = 2 (Fully Hybrid mode) +10000000 (0x01) => 00000001 => 0x01 > STEI = 1 (0x01) +00000000 (0x00) => 00000000 => 0x00 > -----000 BT = 0 (Central Beacon) ; ----0--- NCNR = 0 (no Non-Coordinating networks reported) ; ---0---- NPSM = 0 (not in Power-Saving mode) ; 000----- NumSlots = 0 (=> 1 Beacon slots) +10000000 (0x01) => 00000001 => 0x01 > SlotUsage = 00000001 +00000000 (0x00) => 00000000 => 0x00 > -----000 SlotID = 0 (1st Beacon Slot); --000--- ACLSS = 0 (AC Line Cycle Sync on 1st Beacon Slot) ; -0------ HOIP = 0 (no Handover in progress) ; 0------- RTSBF = 0 (MPDUs don't have to use RTS/CTS) +01000000 (0x02) => 00000010 => 0x02 > ------10 NM = 2 (CSMA-Only Mode); ----00-- CCoCap = 0 (Level-0 CCo capable, does not support QoS and TDMA) ; 0000---- (Reserved bits) +00100000 (0x04) => 00000100 => 0x04 +10000000 (0x01) => 00000001 => 0x01 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +10000000 (0x01) => 00000001 => 0x01 +10111111 (0xfd) => 11111101 => 0xfd +00101100 (0x34) => 00110100 => 0x34 +00000100 (0x20) => 00100000 => 0x20 +00101111 (0xf4) => 11110100 => 0xf4 +01000000 (0x02) => 00000010 => 0x02 +10100000 (0x05) => 00000101 => 0x05 +01000000 (0x02) => 00000010 => 0x02 +10100010 (0x45) => 01000101 => 0x45 +11000000 (0x03) => 00000011 => 0x03 +10000100 (0x21) => 00100001 => 0x21 +00101111 (0xf4) => 11110100 => 0xf4 +11000000 (0x03) => 00000011 => 0x03 +01100000 (0x06) => 00000110 => 0x06 +00000000 (0x00) => 00000000 => 0x00 +11010000 (0x0b) => 00001011 => 0x0b +11011100 (0x3b) => 00111011 => 0x3b +00111000 (0x1c) => 00011100 => 0x1c +01100110 (0x66) => 01100110 => 0x66 +01011011 (0xda) => 11011010 => 0xda +01100000 (0x06) => 00000110 => 0x06 +11000000 (0x03) => 00000011 => 0x03 +00100100 (0x24) => 00100100 => 0x24 +10010000 (0x09) => 00001001 => 0x09 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +00000000 (0x00) => 00000000 => 0x00 +01110110 (0x6e) => 01101110 => 0x6e \ +01100110 (0x66) => 01100110 => 0x66 | +01001001 (0x92) => 10010010 => 0x92 | +01111100 (0x3e) => 00111110 => 0x3e / CRC32 = 0x3e92666e + +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.20.f4.02.05.02.45.03.21.f4.03.06.00.0b.3b.1c.66.da.06.03.24.09.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.6e.66.92.3e. + +Lancement processus de test CRC : + ~/workspace/cesar/tools/hpav_decode/obj/test_crc -@ 0804c740 -s 136 -p > HP_AV_PLD_tmp.txt 2>&1 ... +running suite: crc +100%, tests: 53, failures: 0 +taille buffer (payload) = 136 (132 octets utiles + CRC32) +02.6b.cb.a5.35.4e.88.01.00.01.00.02.04.01.06.00.01.fd.34.20.f4.02.05.02.45.03.21.f4.03.06.00.0b.3b.1c.66.da.06.03.24.09.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.6e.66.92.3e. +CRC32 expected = 0x3e92666e + + diff --git a/cesar/tools/hpav_decode/src/hpav_decode.c b/cesar/tools/hpav_decode/src/hpav_decode.c index dd99bbe15f..70623e7b9a 100644 --- a/cesar/tools/hpav_decode/src/hpav_decode.c +++ b/cesar/tools/hpav_decode/src/hpav_decode.c @@ -26,9 +26,10 @@ typedef enum { HPAV_DATATYPE_MAXCOUNT } e_hpav_data; -char *cst_step_tmpfilename[] = { "HP_AV_FC_tmp.txt", "HP_AV_PLD_tmp.txt" }; -char *cst_step_name[] = { "HomePlug AV FRAME CONTROL", "HomePlug AV PAYLOAD" }; -char cst_step_option[] = { 'f', 'p' }; +const char *cst_step_tmpfilename[] = { "HP_AV_FC_tmp.txt", "HP_AV_PLD_tmp.txt" }; +const char *cst_step_name[] = { "HomePlug AV FRAME CONTROL", "HomePlug AV PAYLOAD" }; +const char cst_step_option[] = { 'f', 'p' }; +const char cst_str_rsvd[] = "Reserved"; unsigned char buff[8192]; char str_cmd[1024]; @@ -45,10 +46,10 @@ char str_cmd[1024]; uint access : 1; uint snid : 4; uint bts :32; - uint bto0 :16; - uint bto1 :16; - uint bto2 :16; - uint bto3 :16; + int bto0 :16; + int bto1 :16; + int bto2 :16; + int bto3 :16; uint fccsav :24; } beacon; struct { @@ -86,11 +87,38 @@ char str_cmd[1024]; uint fccsav :24; } mme; } fc_av_t; + typedef union { + struct { + unsigned long long nid :54; + unsigned long long hm : 2; + uint stei : 8; + uint bt : 3; + uint ncnr : 1; + uint npsm : 1; + uint numslots : 3; + uint slotusage: 8; + uint slotid : 3; + uint aclss : 3; + uint hoip : 1; + uint rtsbf : 1; + uint nm : 2; + uint ccocap : 2; + uint rsvd : 4; + //bmi :var; + //opad :var; + //bpcs :32; + } beacon; + struct { + uint undef :32; + } mme; + } pld_t; #pragma pack() -const char * cst_str_dtav[] = {"Beacon","SOF","SACK","RTC/CTS","Sound","RSOF","Reserved","Reserved"}; +const char * cst_str_dtav[] = {"Beacon","SOF","SACK","RTC/CTS","Sound","RSOF",cst_str_rsvd,cst_str_rsvd}; const char * cst_str_access[] = {"in-home network","access network"}; +int saved_dtav = -1; + void decode_fc_header_byte(fc_av_t *fc) { int b,i,j,s; @@ -100,15 +128,16 @@ void decode_fc_header_byte(fc_av_t *fc) s = 3; printf(" "); for (j=0; j<(8-b-s); j++) printf("-"); - for (i=0; iheader.dtav&(1<<(s-i-1)))>>(s-i-1)); + for (i=0; iheader.dtav&(1<<(b+s-i-1)))>>(b+s-i-1)); for (j=0; jheader.dtav]); + saved_dtav = fc->header.dtav; // ACCESS (example : ----0---) b += s; s = 1; printf(" "); for (j=0; j<(8-b-s); j++) printf("-"); - for (i=0; iheader.access&(1<<(s-i-1)))>>(s-i-1)); + for (i=0; iheader.access&(1<<(b+s-i-1)))>>(b+s-i-1)); for (j=0; jheader.access]); // SNID (example : 0010----) @@ -116,11 +145,23 @@ void decode_fc_header_byte(fc_av_t *fc) s = 4; printf(" "); for (j=0; j<(8-b-s); j++) printf("-"); - for (i=0; iheader.snid&(1<<(s-i-1)))>>(s-i-1)); + for (i=0; iheader.snid&(1<<(b+s-i-1)))>>(b+s-i-1)); for (j=0; jheader.snid); } +void decode_beacon_fc_b1_of_i16(fc_av_t *fc) +{ + // 16bit-value byte 1 of 2 + printf(" \\"); +} + +void decode_beacon_fc_b2_of_i16(fc_av_t *fc,char *fieldname,short val) +{ + // 16bit-value byte 2 of 2, print the 2 bytes of the value + printf(" / %s = 0x%04x (%d)",fieldname,(unsigned short)val,val); +} + void decode_beacon_fc_b1_of_u16(fc_av_t *fc) { // 16bit-value byte 1 of 2 @@ -184,55 +225,51 @@ void decode_beacon_fc_b4(fc_av_t *fc) void decode_beacon_fc_b5(fc_av_t *fc) { // BTO(0) byte 1 of 2 - decode_beacon_fc_b1_of_u16(fc); + decode_beacon_fc_b1_of_i16(fc); } void decode_beacon_fc_b6(fc_av_t *fc) { // BTO(0) byte 2 of 2, print the 2 bytes of the BTO(0) - decode_beacon_fc_b2_of_u16(fc,"BTO(0)",fc->beacon.bto0); + decode_beacon_fc_b2_of_i16(fc,"BTO(0)",fc->beacon.bto0); } void decode_beacon_fc_b7(fc_av_t *fc) { // BTO(1) byte 1 of 2 - decode_beacon_fc_b1_of_u16(fc); + decode_beacon_fc_b1_of_i16(fc); } void decode_beacon_fc_b8(fc_av_t *fc) { // BTO(1) byte 2 of 2, print the 2 bytes of the BTO(1) - decode_beacon_fc_b2_of_u16(fc,"BTO(1)",fc->beacon.bto1); + decode_beacon_fc_b2_of_i16(fc,"BTO(1)",fc->beacon.bto1); } void decode_beacon_fc_b9(fc_av_t *fc) { // BTO(2) byte 1 of 2 - decode_beacon_fc_b1_of_u16(fc); + decode_beacon_fc_b1_of_i16(fc); } void decode_beacon_fc_b10(fc_av_t *fc) { // BTO(2) byte 2 of 2, print the 2 bytes of the BTO(2) - decode_beacon_fc_b2_of_u16(fc,"BTO(2)",fc->beacon.bto2); + decode_beacon_fc_b2_of_i16(fc,"BTO(2)",fc->beacon.bto2); } void decode_beacon_fc_b11(fc_av_t *fc) { // BTO(3) byte 1 of 2 - decode_beacon_fc_b1_of_u16(fc); + decode_beacon_fc_b1_of_i16(fc); } void decode_beacon_fc_b12(fc_av_t *fc) { // BTO(3) byte 2 of 2, print the 2 bytes of the BTO(3) - decode_beacon_fc_b2_of_u16(fc,"BTO(3)",fc->beacon.bto3); + decode_beacon_fc_b2_of_i16(fc,"BTO(3)",fc->beacon.bto3); } - - - - void decode_beacon_fc_b13(fc_av_t *fc) { // CRC24 (byte 1 of 3) @@ -260,7 +297,7 @@ void decode_mme_fc_b1(fc_av_t *fc) s = 8; printf(" "); for (j=0; j<(8-b-s); j++) printf("-"); - for (i=0; imme.stei&(1<<(s-i-1)))>>(s-i-1)); + for (i=0; imme.stei&(1<<(b+s-i-1)))>>(b+s-i-1)); for (j=0; jmme.stei); } @@ -274,7 +311,7 @@ void decode_mme_fc_b2(fc_av_t *fc) s = 8; printf(" "); for (j=0; j<(8-b-s); j++) printf("-"); - for (i=0; imme.dtei&(1<<(s-i-1)))>>(s-i-1)); + for (i=0; imme.dtei&(1<<(b+s-i-1)))>>(b+s-i-1)); for (j=0; jmme.dtei); } @@ -288,7 +325,7 @@ void decode_mme_fc_b3(fc_av_t *fc) s = 8; printf(" "); for (j=0; j<(8-b-s); j++) printf("-"); - for (i=0; imme.lid&(1<<(s-i-1)))>>(s-i-1)); + for (i=0; imme.lid&(1<<(b+s-i-1)))>>(b+s-i-1)); for (j=0; jmme.lid); } @@ -337,7 +374,7 @@ void decode_mme_fc_b13(fc_av_t *fc) void decode_mme_fc_b14(fc_av_t *fc) { - //CRC24 (byte 2 of 3) + // CRC24 (byte 2 of 3) printf(" |"); } @@ -591,6 +628,498 @@ void (*decode_fc[])(fc_av_t *) = { decode_fc_b15 }; +void decode_beacon_pld_b0(pld_t *pld) +{ + int b,i,j,s; + #pragma pack(1) + union { + unsigned char u8[8]; + struct { + unsigned long long int nid : 54; + unsigned long long int hm : 2; + unsigned long long int stei : 8; + }nid_hm_stei; + } un_u64; + #pragma pack() + + // NID (byte 1 of 7) + printf(" \\ "); + + // bits(0..7) of NID + b = 0; + s = 8; + printf(" "); + un_u64.nid_hm_stei.nid = pld->beacon.nid; + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.nid; + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.nid; + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.nid; + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.nid; + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.nid; + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.nid; + un_u64.nid_hm_stei.hm = pld->beacon.hm; + + // bits(48..53) of NID + b = 0; + s = 6; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.nid); + + // bits(0..1) of SL + b = 4; + s = 2; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; j>(b+s-i-1)); + for (j=0; jbeacon.hm,cst_str_hm[pld->beacon.hm]); +} + +void decode_beacon_pld_b7(pld_t *pld) +{ + printf(" > "); + // STEI + printf(" STEI = %u (0x%02x)",pld->beacon.stei,pld->beacon.stei); +} + +const char *cst_str_bt[] = {"Central Beacon","Discover Beacon","Proxy Beacon",cst_str_rsvd,cst_str_rsvd,cst_str_rsvd,cst_str_rsvd,cst_str_rsvd}; +const char *cst_str_ncnr[] = {"no Non-Coordinating networks reported","Non-Coordinating networks reported !"}; +const char *cst_str_npsm[] = {"not in Power-Saving mode","Power-Saving mode"}; +void decode_beacon_pld_b8(pld_t *pld) +{ + int b,i,j,s; + #pragma pack(1) + union { + unsigned char u8; + struct { + unsigned int bt : 3; + unsigned int ncnr : 1; + unsigned int npsm : 1; + unsigned int numslots : 3; + } fields; + } un_b8; + #pragma pack() + + printf(" > "); + + // BT/NCNR/NPSM/NumSlots + un_b8.fields.bt = pld->beacon.bt; + un_b8.fields.ncnr = pld->beacon.ncnr; + un_b8.fields.npsm = pld->beacon.npsm; + un_b8.fields.numslots = pld->beacon.numslots; + + // bits(0..2) : BT field + b = 0; + s = 3; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.bt,cst_str_bt[pld->beacon.bt]); + + // bit(3) : NCNR field + b += s; + s = 1; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.ncnr,cst_str_ncnr[pld->beacon.ncnr]); + + // bit(4) : NPSM field + b += s; + s = 1; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.npsm,cst_str_npsm[pld->beacon.npsm]); + + // bits(5..7) : NumSlots field + b += s; + s = 3; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; j %u Beacon slots)",pld->beacon.numslots,pld->beacon.numslots+1); +} + +void decode_beacon_pld_b9(pld_t *pld) +{ + int b,i,j,s; + + printf(" > "); + + // bits(0..7) : SlotUsage field + b = 0; + s = 8; + printf(" SlotUsage = "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; ibeacon.slotusage&(1<<(b+s-i-1)))>>(b+s-i-1)); + for (j=0; j "); + + // SlotID/ACLSS/HOIP/RTSBF + un_b10.fields.slotid = pld->beacon.slotid; + un_b10.fields.aclss = pld->beacon.aclss; + un_b10.fields.hoip = pld->beacon.hoip; + un_b10.fields.rtsbf = pld->beacon.rtsbf; + + // bits(0..2) : SlotID field + b = 0; + s = 3; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.slotid,cst_str_slotid[pld->beacon.slotid]); + + // bit(3..5) : ACLSS field + b += s; + s = 3; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.aclss,cst_str_slotid[pld->beacon.aclss]); + + // bit(6) : HOIP field + b += s; + s = 1; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.hoip,cst_str_hoip[pld->beacon.hoip]); + + // bit(7) : RTSBF field + b += s; + s = 1; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.rtsbf,cst_str_rtsbf[pld->beacon.rtsbf]); +} + +const char *cst_str_nm[] = {"Uncoordinated Mode","Coordinated Mode","CSMA-Only Mode",cst_str_rsvd}; +const char *cst_str_ccocap[] = {"does not support QoS and TDMA","supports QoS and TDMA but only in Uncoordinated Mode","support QoS and TDMA in Coordinated mode","future CCo capabilities !?"}; +void decode_beacon_pld_b11(pld_t *pld) +{ + int b,i,j,s; + #pragma pack(1) + union { + unsigned char u8; + struct { + unsigned int nm : 2; + unsigned int ccocap : 2; + unsigned int rsvd : 4; + } fields; + } un_b11; + #pragma pack() + + printf(" > "); + + // NM/CCoCap/RSVD + un_b11.fields.nm = pld->beacon.nm; + un_b11.fields.ccocap = pld->beacon.ccocap; + un_b11.fields.rsvd = pld->beacon.rsvd; + + // bits(0..1) : NM field + b = 0; + s = 2; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.nm,cst_str_nm[pld->beacon.nm]); + + // bit(2..3) : CCoCap field + b += s; + s = 2; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; jbeacon.ccocap,pld->beacon.ccocap,cst_str_ccocap[pld->beacon.ccocap]); + + // bits(4..7) : RSVD field + b += s; + s = 4; + printf(" "); + for (j=0; j<(8-b-s); j++) printf("-"); + for (i=0; i>(b+s-i-1)); + for (j=0; j