Neobotics Foundation Inc.
These docs are public and open source.Edit on GitHub

ROS 2 PARAMETERS

This page lists the parameters the driver nodes declare and the values they ship with.

CHANGING A VALUE

The driver nodes read their parameters once at startup. To change a value, edit the matching YAML under neoracer_ros2_driver/config/ and restart the services. ros2 param list and ros2 param get show the live values.

bash
ros2 param list /throttle_node # every parameter the node declares ros2 param get /throttle_node max_speed_forward # change a value: edit config/throttle.yaml, then racecar service restart

THROTTLE

//config/throttle.yaml

A command in [-1, 1] is multiplied by these caps, then by the controller's max_speed_mps.

ParameterShipped valueMeaning
max_speed_forward1.0Scales every forward /drive command.
max_speed_backward1.0Scales every reverse /drive command the same way.
max_steering0.625Scales the commanded steering angle before the servo mapping. 0.625 is full servo lock; a higher value stalls the servo against the linkage.

CONTROLLER

//config/controller.yaml
ParameterShipped valueMeaning
max_speed_mps6.0The physical speed a full-scale command maps to, in m/s. Raising it past 6.0 requires a firmware change.
max_steering_angle_deg30.0The steering angle a full-scale command maps to, in degrees.
steering_trim_deg0.0Added to every steering command so a 0.0 angle drives straight. Measured with lab_trim_cal.py and set in controller.yaml.
rc_min / rc_center / rc_max1000 / 1500 / 2000The FlySky channel calibration, in microseconds. Readings below rc_failsafe_below (500) mean no signal and read as neutral.
port_name/dev/osrbot_baseThe ESP32 serial device, held stable by the udev rules the setup installs.
publish_magtruePublishes the raw magnetometer on /mag. The fused orientation on /imu/fused does not use it.

CAMERA

//config/camera.yaml
ParameterShipped valueMeaning
image_width × image_height640 × 480The capture resolution requested from the camera.
framerate60.0Frames per second on /camera. The node passes the camera’s native MJPG stream through unchanged.
video_device/dev/osrbot_usb_camThe stable udev name for the USB camera. If the symlink is missing, the node scans /dev/video*.

LIDAR

//launch arguments

The LakiBeam1 driver takes these as launch arguments in lidar.launch.py rather than runtime parameters; the driver pushes them to the sensor's own configuration at startup.

ParameterShipped valueMeaning
frame_idlaserThe TF frame stamped on every /scan.
sensorip192.168.8.2The LakiBeam1’s address on the USB-C bridge (the host side is 192.168.8.1). The driver pushes configuration to the sensor here at startup.
scanfreq30Revolutions per second the sensor is configured to spin, which is the /scan publish rate.
scan_range_start / stop45 / 315The sensor’s live window in its own frame: 270 degrees of returns. This is why the rear wedge of a scan carries no data.