Tags give the ability to mark specific points in history as being important
-
v17.0.0
Release: v17.0.0bb5ea58d · ·Breaking Changes ================ - Requires armw v2.0. Changes were made simultaneously to both projects to improve stability and fix a number of concurrency related bugs. (!194) - The median_noise_dB field in the LinkStatsFeedbackMessage has been changed to median_noise_db due to ROS2 not supporting the original name. (!194) New Features / Improvements =========================== - Updated clock generator to use tick/tock, this significantly speeds up simulation (sometimes it is almost too fast). Added a registration service so that the modem sim can register / unregister with the clock. Clock increments after rendezvous from every connected modem sim. (!194) - Switched from loop_once back to spin called in thread. (!194) - Added health monitor. Uses diagnostic messages to monitor status of ROS nodes. (!197) Bugfixes ======== - Replacing headers with armw fill time (!194) - Publishers / Services using None (rclpy will not autofill None) (!194) - Concurrency bugs (such as those related to using loop_once) (!194) - Fix slot/cycle counters for TDMA MACs (!193) - Health monitor improves integration test stability (!197) Test Improvements ================= - Updated unit tests to work with ROS2 (!194) - Improved test stability by removing helper classes wherever possible, also made use of futures where needed. (!194) - Skipped some tests that often result in failures due to race conditions (!194) - Updated gitlab CI yml to use parallel matrix for ROS 1 & 2 testing, also swapped to using a local registry to share images between multiple CI machines (!194) - Moved location of docker images to docker directory at root of project to keep all dockerfiles together (!194) - Added new dockerfile for ROS2 (!194) - Fixed trigger pipelines in gitlab ci, trigger pipelines get branch of triggerer. (!196)
-
v16.0.0
Release: v16.0.0d40bc543 · ·Breaking Changes ================ - `LinkStatsFeeback` message: added `receiver_src` field, fixed name of `median_noise_dB` field (!184) - Removed `epoch_end` from time fields in default `LinkStatsFeedback` codec (!184) New Features / Improvements =========================== - Added `LinkStatsSummary` message to publish aggregated `LinkStatsFeedback` (!184) Bugfixes ======== - Removed `epoch_end` from time fields in default `LinkStatsFeedback` codec (it was saturating in January 2025) (!184) - Fixed regression in name of `LinkStatsFeeback` `median_noise_dB` field (it briefly had a lowercase "b") (!184) - Fixed calculation of ping OWTT in modem simulator (!188, !186) - Fixed modem sim logging (!186) - Fixed OWTT calculation for every sim packet (!190)
-
-
v16.0.0-rc2
Release: v16.0.0-rc2bdd46b57 · ·Bugfixes ======== - Fixed calculation of ping OWTT in modem simulator (!188)
-
v16.0.0-rc1
Release: v16.0.0-rc16054f759 · ·Bugfixes ======== - Fix simulated ping OWTT (!186) - Fix modem sim logging (!186)
-
v16.0.0-rc0
Release: v16.0.0-rc0ded5e9c0 · ·Breaking Changes ================ - `LinkStatsFeeback` message: added `receiver_src` field, fixed name of `median_noise_dB` field (!184) - Removed `epoch_end` from time fields in default `LinkStatsFeedback` codec (!184) New Features / Improvements =========================== - Added `LinkStatsSummary` message to publish aggregated `LinkStatsFeedback` (!184) Bugfixes ======== - Removed `epoch_end` from time fields in default `LinkStatsFeedback` codec (it was saturating in January 2025) (!184) - Fixed regression in name of `LinkStatsFeeback` `median_noise_dB` field (it briefly had a lowercase "b") (!184)
-
-
-
-
-
v14.0.3
Release: v14.0.352aacf13 · ·Bugfixes ======== - Fix handing of the dynamic queue cache when using packet codecs that break a packet into multiple sections. Previously, a dynamic queue could be ignored due to invalid cache when the number of available bits increased over the course of a packet. (!171)
-
v14.0.2
Release: v14.0.244601909 · ·Documentation Improvements ========================== - Significant additions to documentation (!168) - Improved documentation formatting (!168) - Removed out-of-date information (!168)
-
v14.0.1
Release: v14.0.10fc469ae · ·Bugfixes ======== - Fix a bug in the modem sim that would zero-pad bad frames when partial packets were received. (!165)
-
v14.0.0
Release: v14.0.0f0baa081 · ·Breaking Changes ================ - `GetNextQueuedMessageResponse` (part of `GetNextQueuedMessage.srv`) has a new field: `string[] msg_tags`. (!160) - `PingModem.srv` and `PingTransponders.srv` timeout field is now that same: `timeout_sec` and logic has been updated across package (!158) - `Tdma*Status.msg` has the following fields added to support QoS tags (!158): - `minimum_priority`: will be value set in tag for [this] slot - `time_to_next_dedicated_slot`: time to next un-tagged / un-restricted slot where you are guarenteed to TX if you have _any_ data. New Features / Improvements =========================== - `GetNextQueuedMessageResponse` new field: `string[] msg_tags`. (!160) - `string[] msg_tags` are the tags for the message returned in the response. - since dynamic_queues are not handled by the `message_queue_node` directly, we now use this field to validate responses, and invalid responses are ignored. - added `deserialize_anymsg()` to `mac_utils.py` (!160) - changed `toggle_software_mute()` in `tdma_advanced_node` to a switch of type `std_msgs/Bool` and updated logic in `mac_switcher. (!158) - `tdma*` can now calculate `time_to_next_dedicated_slot` (!158) Bugfixes ======== - `TagConfig` was not setting `self.exclude_queue_ids`. it was setting `set.exclude_list` (typo!) and no other nodes were using that attr. - Fixes to message queue (!160): - dynamic queue response tag validation - was not setting `minimum_priority` when creating `tag_config` instance. - was not passing `minimum_priority` to dynamic_queue_query call. - set software_mute correctly in `tdma_advanced` (!161, #46)
-
-
-
-
-
v11.1.0
Release: v11.1.0931f8a97 · ·New Features / Improvements =========================== - `tdma_advanced_node` can now pass an empty list for `~comms_slots`. When empty, (`comms_slots=""`) this tells `tdma_advanced_node` not to send comms packets in _any_ slots. Useful for a ping only tdma MAC config Bugfixes ======== - `acomms_driver_node`: changed minimum ping_reply_timeout from 5 seconds to 1. - `modem_sim_node`: changed minimum ping_reply_timeout from 5 seconds to 1. - `tdma_advanced_node` bug fix for empty `~comms_slots`.
-
v11.0.0
Release: v11.0.00912de93 · ·Breaking Changes ================ - Removed legacy link-layer fragmentation (!142) - This functionality is now provided by `ros_acomms_net`, or by using dynamic queues to implement a new transport layer - Removes `EncodedAck` and `FragmentationStatus` messages - Removes associated unit tests - Removes the `allow_fragmentation` parameter from message codecs New Features / Improvements =========================== - Add acoustic range features, including node that publishes acoustic range automatically for pings (with sim and hardware support) (!144) - New message `AcousticRange.msg` - New node `acoustic_range_node.py`: Generates a range for every ping reply (modem ping OR remus transponder ping) using OWTT and `~sound_speed`. Publishes `AcousticRange.msg` on `~acoustic_range_topic` (`default=acoustic_range`). - Logging improvements (!144) - Lowered the log verbosity for `tdma_advanced` - Added mechanism to `tdma_node` for caching the rosnode log level during init (then available to subclasses) - New `mac_switcher` node to handle switching among multiple MAC nodes using software mute (!145, !146, !147) - New node `MacSwitcherNode` - New message `MacSwitcherStatus.msg` - Includes "dead man switch" to revert control to "default" MAC node (!146) - Example launch file: `ros_acomms/ros_acomms_tests/launch/test_mac_switcher.launch`. Bugfixes ======== - `modem_sim_node.py`: modem location topic name now uses the rosparam `~modem_location_topic`. It was hard coded to `location`. (!144)