Skip to content

Commit

Permalink
chore: added log messages to warn the user against using corner radar…
Browse files Browse the repository at this point in the history
…s (it should only be for evaluation purposes)

Signed-off-by: Kenzo Lobos-Tsunekawa <[email protected]>
  • Loading branch information
knzo25 committed Jan 8, 2025
1 parent 97c2256 commit f49bb47
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -345,6 +345,12 @@ bool ContinentalARS548Decoder::parse_objects_list_packet(
object_msg.orientation = object.position_orientation.value();
object_msg.orientation_std = object.position_orientation_std.value();

// NOTE(knzo25): In the radar firmware used when developing this driver,

Check warning on line 348 in nebula_decoders/src/nebula_decoders_continental/decoders/continental_ars548_decoder.cpp

View workflow job for this annotation

GitHub Actions / spell-check-differential

Unknown word (knzo)
// corner radars are not supported. We can partially address this,
// but the coordinates look only spatially correct (not the dynamics).
// so its use is the responsibility of the user.
// Corner radars are expected to be supported in a new firmware version,
// but this is not yet confirmed.
if (
std::abs(radar_status_.yaw) > 5.0 * M_PI / 180.0 &&
std::abs(radar_status_.yaw) < 90.0 * M_PI / 180.0) {
Expand Down
17 changes: 17 additions & 0 deletions nebula_ros/src/continental/continental_ars548_decoder_wrapper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,23 @@ void ContinentalARS548DecoderWrapper::object_list_callback(
void ContinentalARS548DecoderWrapper::sensor_status_callback(
const drivers::continental_ars548::ContinentalARS548Status & sensor_status)
{
// NOTE(knzo25): In the radar firmware used when developing this driver,

Check warning on line 194 in nebula_ros/src/continental/continental_ars548_decoder_wrapper.cpp

View workflow job for this annotation

GitHub Actions / spell-check-differential

Unknown word (knzo)
// corner radars are not supported. We can partially address this,
// but the coordinates look only spatially correct (not the dynamics).
// so its use is the responsibility of the user.
// Corner radars are expected to be supported in a new firmware version,
// but this is not yet confirmed.
if (
std::abs(radar_status_.yaw) > 5.0 * M_PI / 180.0 &&
std::abs(radar_status_.yaw) < 90.0 * M_PI / 180.0) {
RCLCPP_WARN_THROTTLE(
logger_, *rclcpp::Clock::now(), 5000,
"This radar has been configured as a corner radar, which is not supported by the sensor. We "
"can partially address this, but the coordinates look only spatially correct (not the "
"dynamics). so its use is the responsibility of the user. Corner radars are expected to be "
"supported in a new firmware version, but this is not yet confirmed.");
}

diagnostic_msgs::msg::DiagnosticArray diagnostic_array_msg;
diagnostic_array_msg.header.stamp.sec = sensor_status.timestamp_seconds;
diagnostic_array_msg.header.stamp.nanosec = sensor_status.timestamp_nanoseconds;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,23 @@ void ContinentalARS548HwInterfaceWrapper::set_sensor_mounting_request_callback(
pitch = rpy.y;
}

// NOTE(knzo25): In the radar firmware used when developing this driver,

Check warning on line 218 in nebula_ros/src/continental/continental_ars548_hw_interface_wrapper.cpp

View workflow job for this annotation

GitHub Actions / spell-check-differential

Unknown word (knzo)
// corner radars are not supported. We can partially address this,
// but the coordinates look only spatially correct (not the dynamics).
// so its use is the responsibility of the user.
// Corner radars are expected to be supported in a new firmware version,
// but this is not yet confirmed.
if (
std::abs(radar_status_.yaw) > 5.0 * M_PI / 180.0 &&
std::abs(radar_status_.yaw) < 90.0 * M_PI / 180.0) {
RCLCPP_WARN(
logger_, *rclcpp::Clock::now(), 5000,
"This radar has been configured as a corner radar, which is not supported by the sensor. We "
"can partially address this, but the coordinates look only spatially correct (not the "
"dynamics). so its use is the responsibility of the user. Corner radars are expected to be "
"supported in a new firmware version, but this is not yet confirmed.");
}

auto result = hw_interface_->set_sensor_mounting(
longitudinal, lateral, vertical, yaw, pitch, request->plug_orientation);

Expand Down

0 comments on commit f49bb47

Please sign in to comment.