python-openimu
python-openimu copied to clipboard
Get data from INS over ethernet or UART in real time and parse with Python to get pose data
I am attempting to parse the RTK data in real time from a Nvidia Xavier connected via ethernet. I was able to pull a packet from the INS but I have not been able to parse the packet.
When I run 'tools/open_packet_parser.py' with the provided sample data as below:
if name == 'main': # raw data need to be parsed, only need payload, don't contains prefix, packet type, packet length sample_data = [0xC7, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2B, 0x58, 0x2B, 0x59, 0x2B, 0x5A, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x25, 0x4B] # parse command data print(parse_command_data('gA', sample_data))
I get:
([{'paramId': 0, 'name': 'Data CRC', 'value': 39623}, {'paramId': 1, 'name': 'Data Size', 'value': 128}, {'paramId': 2, 'name': 'Baud Rate', 'value': 115200}, {'paramId': 3, 'name': 'Packet Type', 'value': 's1'}, {'paramId': 4, 'name': 'Packet Rate', 'value': 0}, {'paramId': 5, 'name': 'Accel LPF', 'value': 25}, {'paramId': 6, 'name': 'Rate LPF', 'value': 25}, {'paramId': 7, 'name': 'Orientation', 'value': '+X+Y+Z'}], False)
This seems reasonable with the baud rate reported as 115200, so the example seems to work.
When I run the RTK connected over ethernet I get this output:
sample_rtk_data = 'UUs1\x1e\xdc\x08\x1a\x1e\x81\x14g\xff\xa5\xbc#\x81F=XX\x1d\xc1U\xa8\n=\xd5\xf1\x99=\xd1\xb7J\xbd~\xfdUUi1t\xdc\x08\x1a\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdeWUUs1\x1e\xdc\x08$\x1e\x81\x14\x12@d\xbczK]=f\xa3\x1d\xc1\xa5\x9c\x13\xbd\x91\xc31<\xc3\xd6\x18\xbd7\xb7UUi1t\xdc\x08$\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\x88UUs1\x1e\xdc\x08.\x1e\x81\x14\x95\x8e\x13\xbc \xe4\x83=Z\xa2\x1c\xc1\xe7\xfc\x86\xbd4q\x96\xbc\xcb\xbd\xd1\xbc\x1e\xb5UUi1t\xdc\x08.\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00n\xdfUUs1\x1e\xdc\x088\x1e\x81\x14\xfa\xcb\x8a\xba\xcc\x9dc=Wg\x1c\xc1\x07\xfc\x9c\xbc\xb8\xc8J\xba\xd4%2\xbd\x18\xc2UUi1t\xdc\x088\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x1eUUs1\x1e\xdc\x08B\x1e\x81\x14|>\xda\xbbf\x88<=!W\x1c\xc1\x1d\xa8\xe4<j\xdd\x80\xba\xb4\xef\xa2\xbc\xa5\xfbUUi1t\xdc\x08B\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe1r'
Which, I can convert to an integer array to match the format of sample data and attempt to parse using the same method:
sample_rtk_data = b'UUs1\x1e\xdc\x08\x1a\x1e\x81\x14g\xff\xa5\xbc#\x81F=XX\x1d\xc1U\xa8\n=\xd5\xf1\x99=\xd1\xb7J\xbd~\xfdUUi1t\xdc\x08\x1a\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdeWUUs1\x1e\xdc\x08$\x1e\x81\x14\x12@d\xbczK]=f\xa3\x1d\xc1\xa5\x9c\x13\xbd\x91\xc31<\xc3\xd6\x18\xbd7\xb7UUi1t\xdc\x08$\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\x88UUs1\x1e\xdc\x08.\x1e\x81\x14\x95\x8e\x13\xbc \xe4\x83=Z\xa2\x1c\xc1\xe7\xfc\x86\xbd4q\x96\xbc\xcb\xbd\xd1\xbc\x1e\xb5UUi1t\xdc\x08.\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00n\xdfUUs1\x1e\xdc\x088\x1e\x81\x14\xfa\xcb\x8a\xba\xcc\x9dc=Wg\x1c\xc1\x07\xfc\x9c\xbc\xb8\xc8J\xba\xd4%2\xbd\x18\xc2UUi1t\xdc\x088\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x1eUUs1\x1e\xdc\x08B\x1e\x81\x14|>\xda\xbbf\x88<=!W\x1c\xc1\x1d\xa8\xe4<j\xdd\x80\xba\xb4\xef\xa2\xbc\xa5\xfbUUi1t\xdc\x08B\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe1r' print("raw_data: ", sample_rtk_data) int_data = list(sample_rtk_data) print("int_data: ", int_data) byte_data = bytearray(int_data) print("byte_data: ", byte_data)
parse_command_data('gA', int_data)
which gives:
raw_data: b'UUs1\x1e\xdc\x08\x1a\x1e\x81\x14g\xff\xa5\xbc#\x81F=XX\x1d\xc1U\xa8\n=\xd5\xf1\x99=\xd1\xb7J\xbd~\xfdUUi1t\xdc\x08\x1a\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdeWUUs1\x1e\xdc\x08$\x1e\x81\x14\x12@d\xbczK]=f\xa3\x1d\xc1\xa5\x9c\x13\xbd\x91\xc31<\xc3\xd6\x18\xbd7\xb7UUi1t\xdc\x08$\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\x88UUs1\x1e\xdc\x08.\x1e\x81\x14\x95\x8e\x13\xbc \xe4\x83=Z\xa2\x1c\xc1\xe7\xfc\x86\xbd4q\x96\xbc\xcb\xbd\xd1\xbc\x1e\xb5UUi1t\xdc\x08.\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00n\xdfUUs1\x1e\xdc\x088\x1e\x81\x14\xfa\xcb\x8a\xba\xcc\x9dc=Wg\x1c\xc1\x07\xfc\x9c\xbc\xb8\xc8J\xba\xd4%2\xbd\x18\xc2UUi1t\xdc\x088\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x1eUUs1\x1e\xdc\x08B\x1e\x81\x14|>\xda\xbbf\x88<=!W\x1c\xc1\x1d\xa8\xe4<j\xdd\x80\xba\xb4\xef\xa2\xbc\xa5\xfbUUi1t\xdc\x08B\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe1r' int_data: [85, 85, 115, 49, 30, 220, 8, 26, 30, 129, 20, 103, 255, 165, 188, 35, 129, 70, 61, 88, 88, 29, 193, 85, 168, 10, 61, 213, 241, 153, 61, 209, 183, 74, 189, 126, 253, 85, 85, 105, 49, 116, 220, 8, 26, 30, 129, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 222, 87, 85, 85, 115, 49, 30, 220, 8, 36, 30, 129, 20, 18, 64, 100, 188, 122, 75, 93, 61, 102, 163, 29, 193, 165, 156, 19, 189, 145, 195, 49, 60, 195, 214, 24, 189, 55, 183, 85, 85, 105, 49, 116, 220, 8, 36, 30, 129, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 252, 136, 85, 85, 115, 49, 30, 220, 8, 46, 30, 129, 20, 149, 142, 19, 188, 32, 228, 131, 61, 90, 162, 28, 193, 231, 252, 134, 189, 52, 113, 150, 188, 203, 189, 209, 188, 30, 181, 85, 85, 105, 49, 116, 220, 8, 46, 30, 129, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 223, 85, 85, 115, 49, 30, 220, 8, 56, 30, 129, 20, 250, 203, 138, 186, 204, 157, 99, 61, 87, 103, 28, 193, 7, 252, 156, 188, 184, 200, 74, 186, 212, 37, 50, 189, 24, 194, 85, 85, 105, 49, 116, 220, 8, 56, 30, 129, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 30, 85, 85, 115, 49, 30, 220, 8, 66, 30, 129, 20, 124, 62, 218, 187, 102, 136, 60, 61, 33, 87, 28, 193, 29, 168, 228, 60, 106, 221, 128, 186, 180, 239, 162, 188, 165, 251, 85, 85, 105, 49, 116, 220, 8, 66, 30, 129, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 114] byte_data: bytearray(b'UUs1\x1e\xdc\x08\x1a\x1e\x81\x14g\xff\xa5\xbc#\x81F=XX\x1d\xc1U\xa8\n=\xd5\xf1\x99=\xd1\xb7J\xbd~\xfdUUi1t\xdc\x08\x1a\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdeWUUs1\x1e\xdc\x08$\x1e\x81\x14\x12@d\xbczK]=f\xa3\x1d\xc1\xa5\x9c\x13\xbd\x91\xc31<\xc3\xd6\x18\xbd7\xb7UUi1t\xdc\x08$\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\x88UUs1\x1e\xdc\x08.\x1e\x81\x14\x95\x8e\x13\xbc \xe4\x83=Z\xa2\x1c\xc1\xe7\xfc\x86\xbd4q\x96\xbc\xcb\xbd\xd1\xbc\x1e\xb5UUi1t\xdc\x08.\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00n\xdfUUs1\x1e\xdc\x088\x1e\x81\x14\xfa\xcb\x8a\xba\xcc\x9dc=Wg\x1c\xc1\x07\xfc\x9c\xbc\xb8\xc8J\xba\xd4%2\xbd\x18\xc2UUi1t\xdc\x088\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x1eUUs1\x1e\xdc\x08B\x1e\x81\x14|>\xda\xbbf\x88<=!W\x1c\xc1\x1d\xa8\xe4<j\xdd\x80\xba\xb4\xef\xa2\xbc\xa5\xfbUUi1t\xdc\x08B\x1e\x81\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe1r') ([{'paramId': 0, 'name': 'Data CRC', 'value': 1875991267036583253}, {'paramId': 1, 'name': 'Data Size', 'value': 2575115603313721630}, {'paramId': 2, 'name': 'Baud Rate', 'value': 6179252429003769473}, {'paramId': 3, 'name': 'Packet Type', 'value': False}, {'paramId': 4, 'name': 'Packet Rate', 'value': 7590067294244260535}, {'paramId': 5, 'name': 'Accel LPF', 'value': 1477495249920881713}, {'paramId': 6, 'name': 'Rate LPF', 'value': 0}, {'paramId': 7, 'name': 'Orientation', 'value': ''}], False)
This shows I am able to move between formats properly but the values coming out of the 'tools/open_packet_parser.py' are clearly wrong/scrambled.
I do the same conversions on the sample data and it works giving the same output as before:
byte_data = bytearray(sample_data) print("sample_data: ", sample_data) print("byte_data: ", byte_data) int_data = list(byte_data) print("int_data: ", int_data)
parse_command_data('gA', int_data)
sample_data: [199, 154, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 194, 1, 0, 0, 0, 0, 0, 115, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 43, 88, 43, 89, 43, 90, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 107, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 37, 75] byte_data: bytearray(b'\xc7\x9a\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\xc2\x01\x00\x00\x00\x00\x00s1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00+X+Y+Z\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00k\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00%K') int_data: [199, 154, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 194, 1, 0, 0, 0, 0, 0, 115, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 43, 88, 43, 89, 43, 90, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 107, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 37, 75] ([{'paramId': 0, 'name': 'Data CRC', 'value': 39623}, {'paramId': 1, 'name': 'Data Size', 'value': 128}, {'paramId': 2, 'name': 'Baud Rate', 'value': 115200}, {'paramId': 3, 'name': 'Packet Type', 'value': 's1'}, {'paramId': 4, 'name': 'Packet Rate', 'value': 0}, {'paramId': 5, 'name': 'Accel LPF', 'value': 25}, {'paramId': 6, 'name': 'Rate LPF', 'value': 25}, {'paramId': 7, 'name': 'Orientation', 'value': '+X+Y+Z'}], False)
This shows that the format changes I am doing are likely not causing the problem but I am missing a format or configuration input for the open packet parser. Any input on this would be appreciated!