THE COMPATIBILITY MATRIX.
The NeoRacer runs the same compute, operating system, and middleware the autonomous racing community already uses, so what you learn here carries over. This page is the reference for what the car is built on and what it interoperates with, grouped into the platform, the sensors and drive, and the racing ecosystem around it.
COMPUTE, OS, MIDDLEWARE.
Every layer below is a standard the community already builds on. The Orin Nano is the same class of compute used across modern small-scale autonomy, Ubuntu 22.04 LTS is the release ROS 2 Humble targets, and Humble is the middleware your code talks to. Nothing here is bespoke to one vendor.
| Layer | What ships | Notes |
|---|---|---|
| Compute | NVIDIA Jetson Orin Nano | The OSCORE ESP32-S3 handles the real-time motor, servo, IMU, and Flysky RC loops, while the Jetson Orin Nano runs the stack and delivers 67 TOPS for perception and planning. |
| NVIDIA SDK | JetPack 6.2 | The Linux kernel, GPU drivers, CUDA, and the AI runtime that come pre-flashed on the Jetson. Re-flashing follows Seeed's JetPack guide for the reComputer J4012. |
| Operating system | Ubuntu 22.04.5 LTS (jammy) | The long-term support release ROS 2 Humble is built and tested against, so packages from the wider ecosystem install without surprises. Python 3.10.12. |
| Middleware | ROS 2 Humble | The robotics layer every topic, node, and message on the car is published through. Code you write against Humble targets standard ROS 2 interfaces. |
| NeoRacer driver | neoracer_ros2_driver 0.1.0 | The ROS 2 backend that ships on every NeoRacer. Migrated from the MIT RACECAR Neo driver, retargeted for the OSCORE ESP32, the Lakibeam over UDP, and a USB MJPG camera. GPLv3. |
| Student library | racecar-neo-library | The Python module student code is written against. The rc.* namespace it exposes is identical on the browser sim and the physical car, and it consumes the topic contract above. |
| Autonomy stack | osracer | The general ROS 2 autonomy stack: SLAM through gmapping or Cartographer, and navigation through Nav2. Runs alongside the driver or on its own. |
SENSORS AND DRIVE.
Each sensor reaches your code through one rc.* call, so you read the world without touching a driver. The drive side speaks ackermann_msgs/AckermannDriveStamped, the same Ackermann message format the racing ecosystem expects, which is what makes the cross-platform rows further down hold.
| Component | Hardware | rc.* access | What it gives you |
|---|---|---|---|
| LiDAR | Richbeam LakiBeam1 | rc.lidar | A planar scan exposed as 720 samples at 0.5 degree spacing through rc.lidar. The sensor scans at 0.25 degree natively, so the raw cloud is finer than the teaching view. |
| Camera | Color camera | rc.camera | A 640 by 480 color frame per read. The depth source for color tracking, line following, and any vision your own code adds. |
| IMU | QMI8658A + QMC6309 (9-axis) | rc.physics | Linear acceleration and angular velocity from the QMI8658A, plus a magnetometer vector from the QMC6309, read through rc.physics. |
| Drive | Ackermann steering | rc.drive | Speed and steering commands carried as ackermann_msgs/AckermannDriveStamped, the same Ackermann message the wider racing ecosystem uses. |
THE RACING ECOSYSTEM.
Because the car runs standard ROS 2 on standard topics, it lines up with the autonomous racing platforms students already meet in courses and competitions. The common ground is the topic contract: the LiDAR scan, the Ackermann drive command, and odometry under the names these stacks expect.
| Target | Status | How it lines up |
|---|---|---|
| F1TENTH | Topic-compatible | The contract matches on the topics that matter: /scan for the LiDAR, /drive for Ackermann commands, and /odom for odometry. Code written against the F1TENTH topic layout reads and drives the NeoRacer. |
/scancarries the planar LiDAR sweep, the depth source for wall follow, gap follow, and mapping./drivecarries the Ackermann speed and steering command, the one channel your autonomy code writes to./odomcarries odometry, the pose estimate the navigation layers read.
