Releases: tier4/nebula
v0.3.0
Release Notes
This release changes the package structure of Nebula to make vendors independent of each other. This allows users to only build and depend on the vendors they care about, making builds faster and projects smaller.
Breaking Changes
Since packages have been split and renamed, some changes are required to existing launch files:
- the
nebula_rospackage has been renamed tonebula. - the
nebula_sensor_drivermeta package has been removed. Depend on thenebulapackage, or
on anebula_<vendor>package instead.nebulaincludes all vendor packages. - Calibration files have moved from
nebula_decoderstonebula_<vendor>_decoders. - Vendor-specific launch files have moved from
nebula_rostonebula_<vendor>. nebula_testsandnebula_exampleshave been absorbed into thenebula_<vendor>packages.
Below are the changes you most likely need to make:
ros2 launch nebula_ros nebula_launch.py ...➡️ros2 launch nebula nebula_launch.py ...ros2 launch nebula_ros <vendor>_launch_all_hw.xml ...➡️ros2 launch nebula_<vendor> <vendor>_launch_all_hw.xml ...$(find-pkg-share nebula_decoders)/calibration/<vendor>/...➡️$(find-pkg-share nebula_<vendor>_decoders)/calibration/...$(find-pkg-share nebula_ros)/config/lidar/<vendor>/...➡️$(find-pkg-share nebula_<vendor>)/config/...<depend>nebula_ros</depend>➡️<depend>nebula</depend>or<depend>nebula_<vendor></depend><depend>nebula_sensor_driver</depend>➡️<depend>nebula</depend>or<depend>nebula_<vendor></depend>
See the README for the latest migration info.
What's Changed
- refactor: independent vendor packages by @mojomex in #376
- chore: flatten nebula__common include structures by @mojomex in #380
- chore: replace ament_cmake_auto with autoware_cmake by @ktro2828 in #381
Full Changelog: v0.2.15.1...v0.3.0
v0.2.15.1
Release Notes
This release improves behavior when Nebula has been compiled with Agnocast support, but Agnocast is not active during runtime.
The old behavior was to exit with an error, whereas the new behavior is to fallback to DDS.
What's Changed
- chore: rename package author to TIER IV by @ktro2828 in #375
- feat(nebula_agnocast_wrapper): support runtime fallback to ROS 2 behavior by @Koichi98 in #366
New Contributors
Full Changelog: v0.2.15...v0.2.15.1
v0.2.15
Release Notes
This release provides various diagnostics improvements for Hesai sensors.
Bug Fixes
- #371: Fixed an issue where the 1 Hz HesaiHwMonitor timer was able to preempt the 10 Hz functional safety timer for prolonged times, causing FuSa diagnostics to go stale
Breaking Changes
This new required parameter has been added in #370:
calibration_download_enabled: trueInterface Changes
In #369, below max_hz parameters are now optional, defaulting to +inf (no upper limit). The optional num_frame_transition parameter has been added, defaulting to 1 (identical behavior to before). See tier4/ros2_v4l2_camera#37 for more details.
diagnostics:
pointcloud_publish_rate:
frequency_ok:
~ max_hz: <optional, double>
frequency_warn:
~ max_hz: <optional, double>
+ num_frame_transition: <optional, int>In #363, the ability to ignore certain functional safety diagnostic codes has been introduced. The below optional parameter tree has been introduced:
diagnostics:
functional_safety:
mode: advanced
error_definitions_path: $(find-package-share my_private_package)/path/to/definitions.csv
ignored_error_codes: [0xaaaa, 0xbbbb, ...]What's Changed
- feat(hesai): allow for calibration file override by @mojomex in #370
- feat(hesai): allow for exemption of FuSa error codes by @mojomex in #363
- feat(hesai/decoder_wrapper): make
diagnostics.pointcloud_publish_rate.frequency_(ok|warn).max_hzoptional and adddiagnostics.pointcloud_publish_rate.num_frame_transitionby @manato in #369 - ci: introduce Facebook Infer job by @mojomex in #245
- perf(hesai): do TCP-based diagnostics asynchronously by @mojomex in #371
- build: remove autoware_msgs from repos file by @mojomex in #373
Full Changelog: v0.2.14...v0.2.15
v0.2.5.3
Release Notes
This is a backport release of the feature introduced in #370. The feature allows the user to disable calibration file downloads from the sensor, in the case that they have their own, manually produced calibration file.
Full Changelog: v0.2.5.2...v0.2.5.3
v0.2.14
Release Notes
This version fixes Hesai OT128 packet loss that occured on some machines, and makes diagnostics for Continental ARS548 more robust.
- #364: Fixes an issue with Hesai OT128 where on some hardware, a conservative buffer size calculation would cause the UDP receive queue to overflow, leading to lost packets.
- #367: Hysteresis settings for some flaky diagnostics of ARS548 are now tunable, reducing the likelihood of false positives being reported.
Breaking Changes
All Hesai sensors now include a new, mandatory parameter:
udp_socket_receive_buffer_size_bytes: <number> in [256; UINT32MAX]For most machines, the queue capacity for packets udp_socket_receive_buffer_size_bytes parameter, and
On some machines, much more than one MTU is consumed per packet, introducing the need to tune
The maximum queue latency
For Continental ARS548, the following mandatory parameters have been added:
diagnostics:
rate_bound_status:
num_frame_transition: <number> in [0; UINT64_MAX]
blockage:
num_frame_transition: <number> in [0; UINT64_MAX]
internal:
num_frame_transition: <number> in [0; UINT64_MAX]The following parameters have been removed:
diagnostics:
rate_bound_status:
frequency_ok:
max_hz: <REMOVED>
frequency_warn:
max_hz: <REMOVED>What's Changed
- perf(hesai): configurable UDP receive buffer size by @mojomex in #364
- feat(ars548): rework hysteresis for diagnostics by @amadeuszsz in #367
- feat(ars548): expand configuration diagnostics by @amadeuszsz in #368
Full Changelog: v0.2.13...v0.2.14
v0.2.13
Release Notes
This release contains various small improvements.
What's Changed
- chore: tf2_ros to hpp headers by @Timple in #351
- feat(hesai): debug publishers by @mojomex in #354
- feat(continental_ars548): publish all incoming packets by @amadeuszsz in #356
- ci(pre-commit): autoupdate by @pre-commit-ci[bot] in #344
- fix(continental_ars548): objects list specs compatibility by @amadeuszsz in #357
Full Changelog: v0.2.12...v0.2.13
v0.2.4.3
Release Notes
This release includes fixes for Continental ARS radars that allow use of both ARS548 and ARS540DI.
What's Changed
- feat(continental_ars548): cherry-pick #356 and #357 by @amadeuszsz in #359
Full Changelog: v0.2.4.2...v0.2.4.3
v0.2.4.2
Release Notes
This is a backport of the performance improvements in v0.2.9.
What's Changed
- perf(hesai): cherry-pick : publish packets in separate thread #343 by @KYabuuchi in #355
Full Changelog: v0.2.4.1...v0.2.4.2
v0.2.4.1
v0.2.12
Release Notes
This release fixes an issue with Hesai XT32 and potentially other Hesai sensors where, for non-360 degree FoVs, an erroneous pointcloud was being published. It also improves resilience to packet loss with non-360 degree FoVs.
Bug Fixes
- #353: ensure that the hardware FoV is set large enough that scan cutting works in edge cases (see #339)
What's Changed
- fix(hesai_hw_interfaces): slightly widen FoV by @KYabuuchi in #353
Full Changelog: v0.2.11...v0.2.12