This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DLPNIRSCANEVM: Interpret scan data from data packet

Part Number: DLPNIRSCANEVM


Hi,

This is a data packets obtained from DLP NIR through UART using RaspPi as follows:

00000000  74 70 6c 00 a0 00 00 00  53 28 75 63 23 63 63 63  |tpl.....S(uc#ccc|

00000010  63 63 63 63 6a 6a 76 76  75 24 28 66 23 66 23 29  |ccccjjvvu$(f#f#)|

00000020  63 23 76 63 63 63 29 00  14 00 00 00 03 00 00 00  |c#vccc).........|

00000030  03 00 00 00 08 00 00 00  01 00 00 00 63 75 73 74  |............cust|

00000040  6f 6d 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |om..............|

00000050  0f 03 1f 02 07 00 25 97  0b 9c 0b 8f 14 0e 0e 03  |......%.........|

00000060  00 77 00 c0 29 0e ff 81  a9 1b c0 e3 51 02 23 36  |.w..).......Q.#6|

00000070  22 b0 3f 71 4b 08 d6 86  ae 22 bf 9f 57 58 45 78  |".?qK...."..WXEx|

00000080  7d 9c 40 c4 55 5b f8 86  96 ed bf f4 ea c8 1f dc  |}.@.U[..........|

00000090  5e 2f bf 36 34 36 30 30  36 30 00 53 00 18 19 40  |^/.6460060.S...@|

000000a0  74 70 6c 00 52 00 00 00  53 28 63 76 63 23 63 23  |tpl.R...S(cvc#c#|

000000b0  76 63 29 00 08 00 00 00  28 00 00 00 02 33 00 36  |vc).....(....3.6|

000000c0  34 36 30 30 36 30 00 63  75 73 74 6f 6d 00 08 70  |460060.custom..p|

000000d0  1a 00 01 00 00 00 00 00  80 00 00 07 37 ea 01 00  |............7...|

000000e0  00 00 00 00 00 00 00 60  71 fd 08 00 00 00 00 02  |.......`q.......|

000000f0  00 01 74 70 6c 00 49 00  00 00 53 28 63 63 76 76  |..tpl.I...S(ccvv|

00000100  76 76 29 23 00 05 00 00  00 00 11 84 03 a4 06 50  |vv)#...........P|

00000110  00 00 00 00 00 02 70 34  00 36 34 36 30 30 36 30  |......p4.6460060|

00000120  00 74 65 73 74 00 71 be  06 70 1a 00 01 00 00 00  |.test.q..p......|

00000130  00 00 80 00 00 07 37 ea  01 00 00 74 70 6c 00 8f  |......7....tpl..|

00000140  0d 00 00 69 23 00 60 03  00 00 98 74 02 00 ff 20  |...i#.`....t... |

00000150  03 00 7a ff 03 00 47 1f  05 00 e1 02 06 00 41 db  |..z...G.......A.|

00000160  06 00 ae b1 07 00 3b 92  08 00 09 4d 09 00 2a c4  |......;....M..*.|

00000170  09 00 0f 0e 0a 00 4b 25  0a 00 8e 0b 0a 00 39 d0  |......K%......9.|

00000180  09 00 9a 93 09 00 dd 66  09 00 8a 4a 09 00 42 50  |.......f...J..BP|

00000190  09 00 37 61 09 00 bc 78  09 00 6c 97 09 00 f9 a6  |..7a...x..l.....|

000001a0  09 00 d0 ae 09 00 24 cb  09 00 5f 12 01 00 8e 1e  |......$..._.....|

000001b0  0a 00 59 8f 0a 00 9f 27  0b 00 77 da 0b 00 e1 98  |..Y....'..w.....|

000001c0  0c 00 ea 92 0d 00 29 ab  0e 00 82 d0 0f 00 7c d6  |......).......|.|

000001d0  10 00 e2 fc 11 00 0c fe  12 00 5f fc 13 00 fe e9  |.........._.....|

000001e0  14 00 b7 6f 15 00 71 a4  15 00 b5 69 15 00 33 da  |...o..q....i..3.|

000001f0  14 00 dc 19 14 00 6b 55  13 00 6b 51 12 00        |......kU..kQ..|

000001fe

____________________________

How to do the next deserialization? How to decode the data or write the C++ struct for the data packet?

For example, I only can identify this data structure (which i'm not sure if i do it right, but struggling with the rest.)

struct {

unsigned char [4] magicid;

int  intlsize;

unsigned char [128];

}

00000000  74 70 6c 00 a0 00 00 00  53 28 75 63 23 63 63 63  |tpl.....S(uc#ccc|00000010  63 63 63 63 6a 6a 76 76  75 24 28 66 23 66 23 29  |ccccjjvvu$(f#f#)|00000020  63 23 76 63 63 63 29 00  14 00 00 00 03 00 00 00  |c#vccc).........|00000030  03 00 00 00 08 00 00 00  01 00 00 00 63 75 73 74  |............cust|00000040  6f 6d 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |om..............|00000050  0f 03 1f 02 07 00 25 97  0b 9c 0b 8f 14 0e 0e 03  |......%.........|00000060  00 77 00 c0 29 0e ff 81  a9 1b c0 e3 51 02 23 36  |.w..).......Q.#6|00000070  22 b0 3f 71 4b 08 d6 86  ae 22 bf 9f 57 58 45 78  |".?qK...."..WXEx|00000080  7d 9c 40 c4 55 5b f8 86  96 ed bf f4 ea c8 1f dc  |}.@.U[..........|00000090  5e 2f bf 36 34 36 30 30  36 30 00 53 00 18 19 40  |^/.6460060.S...@|000000a0  74 70 6c 00 52 00 00 00  53 28 63 76 63 23 63 23  |tpl.R...S(cvc#c#|000000b0  76 63 29 00 08 00 00 00  28 00 00 00 02 33 00 36  |vc).....(....3.6|000000c0  34 36 30 30 36 30 00 63  75 73 74 6f 6d 00 08 70  |460060.custom..p|000000d0  1a 00 01 00 00 00 00 00  80 00 00 07 37 ea 01 00  |............7...|000000e0  00 00 00 00 00 00 00 60  71 fd 08 00 00 00 00 02  |.......`q.......|000000f0  00 01 74 70 6c 00 49 00  00 00 53 28 63 63 76 76  |..tpl.I...S(ccvv|00000100  76 76 29 23 00 05 00 00  00 00 11 84 03 a4 06 50  |vv)#...........P|00000110  00 00 00 00 00 02 70 34  00 36 34 36 30 30 36 30  |......p4.6460060|00000120  00 74 65 73 74 00 71 be  06 70 1a 00 01 00 00 00  |.test.q..p......|00000130  00 00 80 00 00 07 37 ea  01 00 00 74 70 6c 00 8f  |......7....tpl..|00000140  0d 00 00 69 23 00 60 03  00 00 98 74 02 00 ff 20  |...i#.`....t... |00000150  03 00 7a ff 03 00 47 1f  05 00 e1 02 06 00 41 db  |..z...G.......A.|00000160  06 00 ae b1 07 00 3b 92  08 00 09 4d 09 00 2a c4  |......;....M..*.|00000170  09 00 0f 0e 0a 00 4b 25  0a 00 8e 0b 0a 00 39 d0  |......K%......9.|00000180  09 00 9a 93 09 00 dd 66  09 00 8a 4a 09 00 42 50  |.......f...J..BP|00000190  09 00 37 61 09 00 bc 78  09 00 6c 97 09 00 f9 a6  |..7a...x..l.....|000001a0  09 00 d0 ae 09 00 24 cb  09 00 5f 12 01 00 8e 1e  |......$..._.....|000001b0  0a 00 59 8f 0a 00 9f 27  0b 00 77 da 0b 00 e1 98  |..Y....'..w.....|000001c0  0c 00 ea 92 0d 00 29 ab  0e 00 82 d0 0f 00 7c d6  |......).......|.|000001d0  10 00 e2 fc 11 00 0c fe  12 00 5f fc 13 00 fe e9  |.........._.....|000001e0  14 00 b7 6f 15 00 71 a4  15 00 b5 69 15 00 33 da  |...o..q....i..3.|000001f0  14 00 dc 19 14 00 6b 55  13 00 6b 51 12 00        |......kU..kQ..|000001fe