A micro-robot for ROS2 & Microblocks that can be assembled without soldering, or access to a 3D printer. An affordable, adaptable, and open-source robot, for students, makers, universities, R&D.

If you’d like one please sign up for Tindie waitlist

Parts list

Part Description Quantity
~$12 Rosmo Chassis Custom PCB Chassis for sale soon 1
~$16-$32 Motors with encoder & wheel 6v 150RPM $Bringsmart motors 2 or 4
~$5 80mm motor cables 6Pin reverse direction cables 4
~$6 - $12 ESP32-S3-C1 N16R8 Olimex open hardware -recomended, UK US, AUS official or Closed Waveshare ESP32s3 very cheap alternatives may require soldering 1
~$5 Hex Spacers 15mm height M3 standoff or 200pc M3 pack 1
~$9 1x 2A powerbank OSHW powerbank or TNTOR Powerbank or Aliexpress Powerbank* 1
~$4 USB>Pin adaptor Type 3 DIP-4P* 1

*buy batteries locally if your postage service has restrictions on Lithium.

IMAGE ALT TEXT HERE

~$50 US for 2wd, ~$80 for 4wd

Rosmo is built from modular components on the Open Robotic Platform rules

Some of the links on this page are affiliate links to help offset the costs of this project, no one is getting rich off of these. List of the above items on Aliexpress cost can be reduced, by using existing powerbank.

Optional extras

Add on ROS2 Linorobot Microblocks Micropython
MPU6050 IMU Yes Yes To do
BNO055 IMU Yes To do To do
Ultrasonic - ZIO Yes Yes To do
LD19/D300 LiDAR module, Yes Never Never
TOF Adafruit or Sparkfun Yes Yes To do
OLED/Eyes - Zio To do To do To do
Line finder - ZIO To do To do To do
Servo - Zio for mini arm To do To do To do
LED - Zio To do To do To do
Mecanum wheels (48mm) & Adaptor Yes To do To do
10mm Cube standoff Yes Yes Yes
Loader attachment (closed hardware) Grabber attachment To do Yes To do
1300 MikroBUS, other sensors (closed hardware) partial partial partial


Daughter boards

Mikrobus header can break out into a add on board concept here) students or others may want to design their own breakouts.

Add on for breakouts ROS2 Linorobot Microblocks Micropython
ESP32-S3 camera (closed hardware) Likely Untested Untested
USBC power adaptor (closed hardware) Untested Untested Untested
1.3” OLED Untested Untested Untested
Pimoroni SPI or I2C sensors Untested Untested Untested

I also did a breakout in a Wemos D1 format as there are a good number of cheap sensors available in this footprint

Schematic

Can be found here

Microblocks; Best if you’re just starting

1) Download ESP32-S3 bin

3) Visit ESP web tool in a Chrome browser

5) Connect ESP32-S3 and flash device (you may need to hold the ‘boot’ button)

7) Use the Pilot version in Chrome

8) In Microblocks; Cog icon > Install ESP firmware from URL > Paste https://microblocks.fun/downloads/pilot/vm/vm_esp32-s3.bin

9) Download this raw UBP file and open it in the Microblocks app.

Current status: Working but encoders not yet configured.

Linorobot2 Software; Best if you want to learn ROS2

Status: Wheels spinning, but not fully tested yet.

  • Linorobot2
  • Install Docker desktop
  • Download Docker image and run in Docker desktop
  • Open browser to http://127.0.0.1:6080/ fullscreen the Linux desktop tab
  • Open a terminal
  • git clone https://github.com/johnny555/rosmo
  • cd /rosmo/firmware/include
  • nano config.h (put in your wifi credentials at line 195, set the agent IP at line 207 to the address of your computer, get this from your router or AngryIP.) <ctrl +O> to save <ctrl + X> to exit
  • cd ..
  • pio run -e esp32s3_wifi
  • Open a file browser & search for .bin
  • Send the .bin file to yourself via email or Google drive
  • In your normal Windows/Mac desktop environment visit ESP web tool
  • Connect ESP32-S3 and flash device with the .bin file
  • Back in the terminal on your virtual machine; ros2 launch linorobot2_bringup bringup.launch.py micro_ros_transport:=udp4 micro_ros_port:=8888
  • In a browser access http://localhost:8888/ to get teleop UI
  • Have fun

Openbot (Android) software; Best if you want to explore affordable vision

Status: Needs tweaking for ESP32S3

Micropython software

Status: Doesn’t exist yet,

Interest from author of Otto Mecanum in adapting for Rosmo

Arduino software

Status: Doesn’t exist yet, Might be interesting to do something with Arduino Mecanum and maybe Smartcar Shield at some point

Collaborators

I’d love to work with people on the software, give us a shout on Twitter or Hackaday.io if you’re interested some ideas here

License

PCB is CERN-OHL-S This documentation is CC-BY-4.0 unless otherwise noted on the page.

Older photos of iteration process

  • 2WD

  • 4WD/ Mecanum

Alternate IMU

Top plate removed to expose battery layer Battery layer removed to expose motor controller, microcontroller, exposed motor/encoder connections. Mikrobus click footprint Not shown are screw terminals as I haven’t soldered them yet.