c0e92a7f02907ab150c21bcb0e66b9d918b3885f
Ground Control's RockBLOCK 9704 library is pinned untouched in west.yml and compiled here for any board with a UART: a serial port on the bus of the rock7,rockblock-9704 devicetree node, the library's timing calls on the kernel, and one worker thread that owns every call into it, since the library has no locking and shares static buffers. The worker sleeps until a request or a byte from the modem arrives. Requests (begin, end, power, send, info, signal) wait as long as the caller says; a send with K_NO_WAIT queues and reports through mo_done. Callbacks for a sent message, a received one, the signal and the provisioning; a status snapshot that never touches the modem. The library asks for provisioning once and keeps a miss for good; the worker clears its cache before a send whose topic is missing and after the modem refuses one, so a modem provisioned later is seen. The serial port and worker began in the OGLAS satellite bench and were carried through WII6's lib/wii6-sat.
Description
Zephyr module for the RockBLOCK 9704 Iridium modem, built on Ground Control’s official library: thread-safe API, devicetree, shell, and a fake modem for testing
115 KiB
0 Stars
2 Watchers
0 Forks
Languages
Python
56.5%
C
36.7%
Shell
3.8%
CMake
3%