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.
3.7 KiB
3.7 KiB
| 1 | 2026-03-20 14:56:47.958726 | SENT | b'\xbbU\x00\x03 \x00#I' |
|---|---|---|---|
| 2 | 2026-03-20 14:56:47.959041 | RECEIVED | b'\xbb' |
| 3 | 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' |
| 4 | 2026-03-20 14:56:47.970747 | SENT | b'\xbbU\x00\xa2h\x04\x00\x00\x00\x00\x0e\xf2' |
| 5 | 2026-03-20 14:56:47.971035 | RECEIVED | b'\xbb' |
| 6 | 2026-03-20 14:56:47.971533 | RECEIVED | b'U\x00\xe1h\x03\x01\x0e\xf2Mk' |
| 7 | 2026-03-20 14:56:47.972554 | SENT | b'\xbbU\x00\x9ah\x04\xff\xff\xff\xff\x02\xb0' |
| 8 | 2026-03-20 14:56:47.972819 | RECEIVED | b'\xbb' |
| 9 | 2026-03-20 14:56:47.973294 | RECEIVED | b'U\x00\xd9h\x03\x01\x02\xb0\xf7\xe1' |
| 10 | 2026-03-20 14:56:47.974430 | SENT | b'\xbbU\x00\xaah\x01\xff\x12\xe1' |
| 11 | 2026-03-20 14:56:47.974962 | RECEIVED | b'\xbb' |
| 12 | 2026-03-20 14:56:47.975475 | RECEIVED | b'U\x00\xe9h\x03\x01\x12\xe1H\x92' |
| 13 | 2026-03-20 14:56:47.977297 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\xff\xf6E' |
| 14 | 2026-03-20 14:56:47.977574 | RECEIVED | b'\xbb' |
| 15 | 2026-03-20 14:56:47.978049 | RECEIVED | b'U\x00\xc9h\x03\x01\xf6Ep\xfe' |
| 16 | 2026-03-20 14:56:48.980709 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\xff\xf6E' |
| 17 | 2026-03-20 14:56:48.981293 | RECEIVED | b'\xbb' |
| 18 | 2026-03-20 14:56:48.981809 | RECEIVED | b'U\x00\xc9h\x03\x01\xf6Ep\xfe' |
| 19 | 2026-03-20 14:56:49.983206 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\xff\xf6E' |
| 20 | 2026-03-20 14:56:49.983633 | RECEIVED | b'\xbb' |
| 21 | 2026-03-20 14:56:49.984310 | RECEIVED | b'U\x00\xc9h\x03\x01\xf6Ep\xfe' |
| 22 | 2026-03-20 14:56:50.985612 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 23 | 2026-03-20 14:56:50.986198 | RECEIVED | b'\xbb' |
| 24 | 2026-03-20 14:56:50.986747 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 25 | 2026-03-20 14:56:51.988174 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 26 | 2026-03-20 14:56:51.988630 | RECEIVED | b'\xbb' |
| 27 | 2026-03-20 14:56:51.989155 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 28 | 2026-03-20 14:56:52.991411 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 29 | 2026-03-20 14:56:52.991927 | RECEIVED | b'\xbb' |
| 30 | 2026-03-20 14:56:52.992391 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 31 | 2026-03-20 14:56:53.993851 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 32 | 2026-03-20 14:56:53.994366 | RECEIVED | b'\xbb' |
| 33 | 2026-03-20 14:56:53.994896 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 34 | 2026-03-20 14:56:54.996209 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 35 | 2026-03-20 14:56:54.996536 | RECEIVED | b'\xbb' |
| 36 | 2026-03-20 14:56:54.997075 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 37 | 2026-03-20 14:56:55.998790 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 38 | 2026-03-20 14:56:55.999053 | RECEIVED | b'\xbb' |
| 39 | 2026-03-20 14:56:55.999548 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 40 | 2026-03-20 14:56:57.001186 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 41 | 2026-03-20 14:56:57.001702 | RECEIVED | b'\xbb' |
| 42 | 2026-03-20 14:56:57.002202 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 43 | 2026-03-20 14:56:58.003753 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 44 | 2026-03-20 14:56:58.004379 | RECEIVED | b'\xbb' |
| 45 | 2026-03-20 14:56:58.004967 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 46 | 2026-03-20 14:56:59.006241 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 47 | 2026-03-20 14:56:59.006573 | RECEIVED | b'\xbb' |
| 48 | 2026-03-20 14:56:59.007106 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 49 | 2026-03-20 14:57:00.008571 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 50 | 2026-03-20 14:57:00.009919 | RECEIVED | b'\xbb' |
| 51 | 2026-03-20 14:57:00.011049 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 52 | 2026-03-20 14:57:01.011479 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 53 | 2026-03-20 14:57:01.012009 | RECEIVED | b'\xbb' |
| 54 | 2026-03-20 14:57:01.012508 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |
| 55 | 2026-03-20 14:57:02.013783 | SENT | b'\xbbU\x00\x8ah\x05\x00\x00\x00\x00\x02\xf9H' |
| 56 | 2026-03-20 14:57:02.014309 | RECEIVED | b'\xbb' |
| 57 | 2026-03-20 14:57:02.014832 | RECEIVED | b'U\x00\xc9h\x03\x01\xf9Hv\x07' |