Skip to content

Madwesh-india/microros_projects

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Micro-ROS Robot Projects

This repository contains three micro-ROS-enabled Arduino/ESP32 projects for robotics applications:

  • bot_control_twist_microros: Differential drive robot controller with PID motor control and ROS2 Twist command subscription.
  • imu_microros: Publishes IMU sensor data to ROS2 using micro-ROS.
  • oled_text_microros: Displays ROS2 String messages on an OLED screen.

1. bot_control_twist_microros

Description

Implements a differential drive robot controller. Receives velocity commands (geometry_msgs/msg/Twist) via micro-ROS, computes wheel speeds, and controls two DC motors with PID feedback and encoder support.

Key Files

Features

  • Differential drive kinematics
  • PID speed control for each motor
  • Quadrature encoder support
  • micro-ROS WiFi integration

2. imu_microros

Description

Reads data from an LSM6 IMU sensor and publishes it as sensor_msgs/msg/Imu messages to ROS2 via micro-ROS.

Key File


3. oled_text_microros

Description

Subscribes to a ROS2 topic and displays incoming std_msgs/msg/String messages on an SSD1306 OLED display.

Key File


Getting Started

Hardware Requirements

  • ESP32 or compatible Arduino board
  • DC motors with encoders (for bot_control_twist_microros)
  • Motor driver (H-bridge)
  • LSM6 IMU sensor (for imu_microros)
  • SSD1306 OLED display (for oled_text_microros)
  • WiFi network

Software Requirements

Setup

  1. Update WiFi Credentials
    Edit the .ino files and set your WiFi SSID, password, and micro-ROS agent IP address.

  2. Wiring
    Connect your hardware according to your setup. Update pin assignments in the code as needed.

  3. Build and Upload
    Open the desired .ino file in Arduino IDE, select your board, and upload.


License

This project is for educational and research purposes.

About

A collection of micro-ROS-based Arduino/ESP32 projects for robotic systems, including differential drive control, IMU data publishing, and OLED-based ROS2 message display.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages