Initial: ContinuousTransponder wrapper for Kogger USBL
High-level Python wrapper around the upstream cosma-tech/kogger_acousticAntenna
driver. Configures a Kogger acoustic antenna as a permanent slave transponder
in a single start() call: address filter, echo filter, optional TDMA sync slot,
permanent response window, and Python callbacks for each ping received.
No modification to the upstream driver — only composes existing public methods
in the right order. Snapshot of upstream driver included read-only under driver/
for reference.
Includes:
- transponder_continu.py (302 lines): the wrapper class + CLI
- examples/auv_slave.py (79 lines): usage example with logging
- README.md: design rationale, usage, multi-AUV TDMA, watchdog, hardware wiring
- driver/: snapshot of cosma-tech/kogger_acousticAntenna at commit 1b539f9
('Add index slot for multi pinger', 2025-03-11)
Built for Cosma context (USV master + N AUVs slaves) following the design
conversation in Discord #ping-pong-ping (2026-04-27). See poulpe/ping-pong-ping
on Gitea for the interactive demo of the protocol.
This commit is contained in:
57
driver/test/log/2026-03-20_14-56-47_AUV_usbl.csv
Normal file
57
driver/test/log/2026-03-20_14-56-47_AUV_usbl.csv
Normal file
@@ -0,0 +1,57 @@
|
||||
2026-03-20 14:56:47.958726,SENT,"b'\xbbU\x00\x03 \x00#I'"
|
||||
2026-03-20 14:56:47.959041,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:47.959643,RECEIVED,"b'U\x00A ""\x00\x0f\x00\x00\x00\x00\x00\x00B\x04\x81(\x00\x02\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\xac'"
|
||||
2026-03-20 14:56:47.970747,SENT,"b'\xbbU\x00\xa2h\x04\x00\x00\x00\x00\x0e\xf2'"
|
||||
2026-03-20 14:56:47.971035,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:47.971533,RECEIVED,"b'U\x00\xe1h\x03\x01\x0e\xf2Mk'"
|
||||
2026-03-20 14:56:47.972554,SENT,"b'\xbbU\x00\x9ah\x04\xff\xff\xff\xff\x02\xb0'"
|
||||
2026-03-20 14:56:47.972819,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:47.973294,RECEIVED,"b'U\x00\xd9h\x03\x01\x02\xb0\xf7\xe1'"
|
||||
2026-03-20 14:56:47.974430,SENT,"b'\xbbU\x00\xaah\x01\xff\x12\xe1'"
|
||||
2026-03-20 14:56:47.974962,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:47.975475,RECEIVED,"b'U\x00\xe9h\x03\x01\x12\xe1H\x92'"
|
||||
2026-03-20 14:56:47.977297,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\xff\xf6E'"
|
||||
2026-03-20 14:56:47.977574,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:47.978049,RECEIVED,"b'U\x00\xc9h\x03\x01\xf6Ep\xfe'"
|
||||
2026-03-20 14:56:48.980709,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\xff\xf6E'"
|
||||
2026-03-20 14:56:48.981293,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:48.981809,RECEIVED,"b'U\x00\xc9h\x03\x01\xf6Ep\xfe'"
|
||||
2026-03-20 14:56:49.983206,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\xff\xf6E'"
|
||||
2026-03-20 14:56:49.983633,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:49.984310,RECEIVED,"b'U\x00\xc9h\x03\x01\xf6Ep\xfe'"
|
||||
2026-03-20 14:56:50.985612,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:56:50.986198,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:50.986747,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:56:51.988174,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:56:51.988630,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:51.989155,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:56:52.991411,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:56:52.991927,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:52.992391,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:56:53.993851,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:56:53.994366,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:53.994896,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:56:54.996209,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:56:54.996536,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:54.997075,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:56:55.998790,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:56:55.999053,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:55.999548,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:56:57.001186,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:56:57.001702,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:57.002202,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:56:58.003753,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:56:58.004379,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:58.004967,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:56:59.006241,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:56:59.006573,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:56:59.007106,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:57:00.008571,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:57:00.009919,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:57:00.011049,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:57:01.011479,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:57:01.012009,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:57:01.012508,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
2026-03-20 14:57:02.013783,SENT,"b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H'"
|
||||
2026-03-20 14:57:02.014309,RECEIVED,"b'\xbb'"
|
||||
2026-03-20 14:57:02.014832,RECEIVED,"b'U\x00\xc9h\x03\x01\xf9Hv\x07'"
|
||||
|
Reference in New Issue
Block a user