New Features / Improvements =========================== - `tdma_node.py` manual_transmit feature can now take a list of modem commands (newline delimited string). (!136) - when a message is published on `tdma/nmea_to_modem` and data looks like: `"$CCCFG,BND,0\n$CCCMD,RLS,2,1,0,0,\n"`, the manual transmit object will split the nmea sentences (on newlines) and publish each of them (allows users to send config commands ahead of a transmitting command) - Add a service to query SRC address from modem (or modem sim). (!133) - Use this in `message_queue_node` to get the modem SRC address if it isn't passed as a parameter. (The SRC address may be used by packet codec plugins when encoding messages). - Adds `query_modem_param` service to `AcommsDriverNode` that queries uModem for any single config parameter or group of config parameters. (!134, !135) Bugfixes ======== - Fix a bug where missing SST values occasionally broke LinkLayerFeedback messaging (hotfix to 10.0.1 in !141, !132) - Fix conditions where packet codec is given more bits than it asked for (hotfix to 10.0.1 in !140, !139) - Add error handling when a dynamic queue returns more bits than we asked for, so it no longer breaks the packet codec - Improved logging. - Fixed a bug in `link_layer_feedback_node.py` that returned messages larger than requested. - Fixed a (probably) harmless bug with a mutable default argument in `message_queue_node.py` - `get_remaining_time_to_slot()` now correctly handles case when `{slot}` passed is wrapped around the cycle from the `current_slot`. (!138) - CI testing: - `test_tdma_extended.py` now `test_always_send_test_data_with_miniframes()` allows 1 packet (and it must be the first packet) to not fail the test if it's all zeros. (!137)