Practice the ROS2 The Sensor That Speaks the Wrong Protocol coding problem in Integration. Browser-based execution with automated grading — no local ROS install required. 0% of engineers pass this challenge.
A new ultrasonic sensor array was integrated. The driver publishes distance readings to /ultrasonic/ranges. All values are approximately 3000x larger than the actual distances.
A 1-meter wall registers as 1000. A 2-meter corridor registers as 2000.
The sensor outputs distances in millimeters. The driver assumes centimeters, so it divides by 100 (converting to meters incorrectly: mm/100 = 10x too large). Additionally, it never populates range_min, range_max, or header.frame_id in the sensor_msgs/Range message.
Fix the unit conversion and populate all required sensor_msgs/Range fields correctly.
ROS2 convention: all distances in meters.
sensor_msgs/Range.rangeis in meters.
It is a hands-on Integration challenge on SimuCode where you implement and run ROS2 code in the browser with runtime-verified tests.
Open this page, sign in, and solve the problem in the built-in IDE. Your solution is graded against real ROS2 execution checks.
This Medium problem focuses on ros2, integration, sensor-msgs skills used in robotics interviews and production systems.