Overview
ESP32 MicroROS Robot Car Virtual Machine as controller (Mac Not Support) is a ROS2 educational robot car that offloads complex computing tasks to a PC virtual machine environment. The robot uses an onboard ESP32 co-processor and MicroROS WiFi UDP communication to transmit sensor/data to the PC virtual machine, where calculations are completed and control decisions are generated.
This platform supports ROS2 Humble and Python3 programming, and is designed for learning and development workflows including lidar obstacle avoidance, following, mapping navigation, RViz simulation, and multi-machine synchronization control.
Key Features
- Virtual machine master control: Uses a PC-side virtual machine as the master controller to reduce learning cost, improve algorithm computing efficiency, and support DIY/upgrades. Note: Mac system is not supported.
- Onboard ESP32 processor: Built-in Wi-Fi and Bluetooth functions; supports MicroROS for real-time data transmission between the robot and the virtual machine.
- ROS2 Humble support: This product uses ROS2 Humble.
- Multi-master support: In addition to the PC virtual machine master, also supports using Raspberry Pi 5 or Jetson Nano as the desktop master to communicate with the chassis (with supporting usage documents and corresponding system image).
- TOF lidar functions: Lidar obstacle avoidance, lidar tracking, lidar guard, and lidar patrol.
- Remote control options: iOS/Android APP remote control; multi-machine handle/keyboard control in real time for synchronous movements. Handle controller is not included.
- Robot information release: The chassis can release control data from sensors such as radar, IMU, speed, and buzzer to the virtual machine.
- Chassis & power: Aluminum alloy body; 4PCS 310 encoder motor; 7.4V large capacity battery pack.
Specifications
ESP32 (Onboard processor)
| ESP32 model | ESP32-S3-WROOM-1U-N4R2 |
|---|---|
| Kernel | Xtensa LX7 32-bit dual-core microprocessor |
| Number of pins | 41 |
| Number of GPIOs | 36 |
| Main frequency clock | 240MHz |
| SRAM | 512KB |
| ROM | 384KB |
| PSRAM | 2MB |
| Flash | 4MB |
| Operating voltage | 3V~3.6V |
| WIFI | IEEE 802.11 b/g/n; 2.4 GHz |
| BT | V5.0 |
| Communication Interface | SPI, I2S, I2C, UART, USB OTG, SDIO, JTAG, DVP, LCD |
| Operating temperature | -40~85C |
TOF high-performance lidar (ORBBEC MS200)
MS200 adopts TOF ranging method, withstands 30Klux of strong light, supports indoor and outdoor mapping navigation, measurement radius up to 12m, a measurement blind zone only 3cm, ranging error 2mm within 2 meters, sampling frequency 4500 times/s, and scanning frequency 7Hz~15Hz, support 230400bps communication rate.
| Ranging principle | TOF ranging |
|---|---|
| Scan angle | 360 |
| Measurement angle accuracy | 0.8 |
| Resistance to ambient light intensity | 30Klux |
| Weight | 40g |
| Waterproof and dustproof | IP5X |
| Measure radius | Black object:12m |
| Minimum measuring distance | 0.03m |
| Ranging accuracy | <=4mm (0.2m~2m), <=15mm (2m~12m) |
| Sampling frequency | 4500 times/s |
| Scanning frequency | 7Hz~15Hz |
| Dimensions | 37.7*37.5*33mm |
| Communication rate | 230400 |
| Communication interface | Standard asynchronous serial port (UART) |
| Drive mode | Built-in brushless motor |
| Power supply | DC5.0 .5V |
| ROS support | ROS1/ROS2 |
| Certified file | ROHS2.0,REACH,CE,FCC |
| Windows support | Provide PC software on Windows |
7.4V large capacity battery pack
MicroROS Robot is equipped with a 7.4V-2000mAh capacity battery with a battery life of up to 5 hours.
| Rated voltage | 7.4V |
|---|---|
| Rated Capacity | 2000mAh |
| Rated current | 15A(7.5C) |
| Maximum discharge current | 20A(10C) |
| Batteries | 18650*2 |
| Battery size | 67*37*22mm |
| Weight | About 115g |
| Discharge wire length | 15cm(AWG14) |
| Charging cable length | 10cm |
| Maximum voltage | 8.5V |
| Cutoff discharge voltage | 5.8V |
| Combination method | Parallel/Series connection |
| Rated charging current | 0.2C |
| Maximum charging current | 1C |
| Overcharge protection | Yes |
| Over-current protection | Yes |
| Over discharge protection | Yes |
| Short-circuit protection | Yes |
Metal reduction motor with encoder
The motor has a built-in Hall encoder for speed and position feedback control.
| Motor model | MD310Z20_7.4V |
|---|---|
| Motor rated voltage | 7.4V |
| Motor type | Magnet with brush |
| Gear set reduction ratio | 1:20 |
| Output shaft | 3mm diameter D type eccentric shaft |
| Encoder type | AB phase incremental Hall encoder |
| Encoder supply voltage | 3.3-5V |
| Magnetic ring wire number | 13 line |
| Interface Type | PH2.0 6Pin |
| Speed before deceleration | 9000rpm |
| Speed after deceleration | 450 rpm |
| Rated torque | 0.4kg*cm |
| Stall torque | >=1.0kg*cm |
| Rated current | <=0.65A |
| Stall current | <=1.4A |
| Rated power | 4.8W |
| Single motor weight | About 70g |
| Function | Equipped with pull-up resistor, the MCU can directly read signal pulses |
Applications
- ROS2 learning and teaching (theory + practice)
- Lidar obstacle avoidance, tracking (following), guard, and patrol
- SLAM mapping and navigation workflows (including RViz simulation)
- Multi-robot synchronization control and multi-machine navigation
- MicroROS/ESP32 driver and data communication practice (WiFi UDP via MicroROS)
Tutorials & Code Resources
Tutorial link:http://www.yahboom.net/study/MicroROS-ESP32
Course outline (as provided):
- 01. Introduction: 1) ReadMe - learning route 2) Introduction to lidar 3) Introduction to microROS control board 4) FAQ 5) About charging
- 02. Assembly course: Assembly steps
- 03. preparation: 1) Write firmware 2) How to install and use VM 3) microROS control board configuration 4) Connect to microROS agent
- 04. VM Remote control course: 1) VM keyboard remote control 2) VM handle remote control
- 05. Robot basic course: 1) Robot information release 2) Robot keyboard control 3) Robot handle control 4) Robot state estimation 5) Linear speed calibration 6) Angular velocity calibration 7) Robot URDF model
- 06. Lidar course: 1) Lidar avoid 2) Lidar following 3) Lidar guard 4) Lidar patrol 5) Gmapping mapping 6) Cartographer mapping 7) Navigation2 navigation avoid 8) ROS Robot APP mapping 9) ROS Robot APP navigation
- 07. Multi-machine course: 1) Multi-machine handle control 2) Multi-machine keyboard control 3) Multi-machine navigation
- 08. Linux basic course: 1) Introduction to Linux system 2) Ubuntu file system 3) Ubuntu common commands 4) Ubuntu common editors 5) Ubuntu software operation commands 6) Virtual machine installation 7) SSH remote control 8) VNC remote control 9) Remote file transfer 10) Driver library and communication 11) Static IP and hotspot mode 12) Bind device ID 13) Capacity expansion and resource allocation 14) Update system software source 15) set root password 16) sudo free password 17) Connect to WiFi network 18) View system version 19) Customized service management 20) Back up system image
- 09. Docker course: 1) Overview and installation 2) Common commands 3) In-depth understand and publishing images 4) Hardware interaction and data processing 5) Enter robot docker container
- 10. ROS2 basic course: 1) Introduction to ROS2 2) ROS2 install Humble 3) ROS2 development environment 4) ROS2 workspace 5) ROS2 function package 6) ROS2 node 7) ROS2 topic communication 8) ROS2 service communication 9) ROS2 action communication 10) ROS2 custom interface message 11) ROS2 parameter service case 12) ROS2 meta-function package 13) ROS2 distributed communication 14) ROS2 DDS 15) ROS2 time related API 16) ROS2 common command tools 17) ROS2 rviz2 use 18) ROS2 rqt toolbox 19) ROS2 Launch startup file configuration 20) ROS2 recording and playback tool 21) ROS2 URDF model 22) ROS2 Gazebo simulation platform 23) ROS2 TF2 coordinate transformation
- 11. microROS control board development environment: 1) Introduction to microROS control board 2) Set up ESP32-IDF development environment 3) ESP32-IDF configuration tool 4) Install ESP32-microROS components 5) Install and start microROS agent 6) Flash-tool burning firmware
- 12. ESP32 basic course: 1) Turn on the LED light 2) Button function 3) Drive the buzzer 4) Serial communication 5) Battery voltage detection 6) Drive PWM servo 7) Drive motor 8) Read motor encoder data 9) PID controls car speed 10) Read IMU data 11) Read radar data 12) Flash access data 13) Partition table and memory 14) Bluetooth communication 15) WiFi networking 16) Robot kinematics analysis
- 13. microROS basic course: 1) Publish topic 2) Subscribe topic 3) Multi-topic subscribe and publish 4) Subscribe buzzer topics 5) Subscribe PWM servo topics 6) Subscribe speed control topics 7) Release speed topic 8) Release IMU data topic 9) Publish lidar data topics 10) Customized transmission interface
Video
Support
For pre-sales compatibility questions (including virtual machine setup and control methods) or after-sales support, contact support@rcdrone.top or visit https://rcdrone.top/.
Details

Micro-ROS extends ROS 2 to resource‑constrained microcontrollers, enabling ROS 2 communication through an agent layer.

A PC virtual machine handles the heavy ROS 2 compute work while the robot sends sensor data over Wi‑Fi for responsive control.

Virtual‑machine master control helps simplify setup, improve performance by using PC resources, and makes backup/restore easier.

ROS 2 Humble support with flexible master options, including a PC virtual machine or compatible embedded masters.

Step‑by‑step learning content and example code support common ROS 2 robotics workflows from basics to advanced demos.

TOF lidar functions enable obstacle avoidance, object tracking, guard alerts, and autonomous patrol behaviors.

Control options include an iOS/Android app as well as real‑time multi‑robot synchronization using a handle or keyboard.

Sensor topics such as lidar, IMU, wheel speed, and buzzer status can be published to the master for monitoring and control.

RViz visualization helps test, debug, and verify robot behavior while developing ROS 2 applications.

An onboard ESP32 co‑processor provides Micro‑ROS communication plus integrated Wi‑Fi/Bluetooth for the chassis data link.

The MS200 TOF lidar supports mapping and navigation with fast sampling and strong‑light resistance for varied environments.

A 7.4V battery pack supplies portable power for extended learning, testing, and demo sessions.

Encoder motors provide stable motion control with feedback for odometry and closed‑loop driving experiments.

Online documentation and downloads guide installation, configuration, and ROS 2 project practice.


Dimension drawings help plan add‑ons and integration with DIY parts or classroom workbenches.

What’s included covers the assembled chassis and core modules, plus wiring, tools, and documentation for setup.
Related Collections
