From 6ee3e68fe723b1371db8106e15704b2e5a6918cd Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Mon, 16 Mar 2026 08:34:58 +0100 Subject: [PATCH] started adding UBX protocol --- ubx/ubx.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 ubx/ubx.py diff --git a/ubx/ubx.py b/ubx/ubx.py new file mode 100644 index 0000000..f9129bf --- /dev/null +++ b/ubx/ubx.py @@ -0,0 +1,26 @@ +import struct + + +def checksum(data: bytes) -> bytes: + ck_a = 0 + ck_b = 0 + for i in range(len(data)): + ck_a = (ck_a + data[i]) & 0xFF + ck_b = (ck_b + ck_a) & 0xFF + + return struct.pack("BB", ck_a, ck_b) + +def frame_create(msg_class: int, msg_id: int, payload: bytes) -> bytes: + hdr = b'\xb5\x62' + frame = struct.pack('B', msg_class) + frame += struct.pack('B', msg_id) + frame += struct.pack('