Putting it all together

A project log for Rosmo robot - BLDC

Creating a small modular robot with pluggable daughter boards.

SamukSamuk 10/05/2022 at 17:080 Comments

Rosmo is a project to make small openhardware robots for educational and hobbyist use. We aim to design capable robots which can be assembled without soldering. It’s a modular set of open-hardware components that can be assembled into robots of different complexity and price. It’s all based on ESP32 so should support MicroROS work.

We value modularity. The project started working with the M5stack system. The robot you see above is the culmination of that work. We built a chassis, ESP32dev board and ESC in this 5cmx5cm profile. We learnt a lot doing this. Unfortunately the parts crisis has meant that the ESC is not obtainable until at least 2023. We continue to test and develop using the small numnber of ESC boards we have produced.

We also identified some issues with the M5stack system, in particular the header is hard to obtain at resonable prices. We’ve therefore pivoted our work to work with the Feather footprint to give a wider array of add-on boards. Whilst the Feather is great it is very small, so we’re also working with some slightly larger daughter boards using our own pinout in 6cm x ~5-10cm.

We have some early drafts of this work underway with the Feather:bit board the intention is to use this board in two versions of a ~10cm x ~10cm robot.

The first variation is Rosmo:Bot which uses cheaper brushed motors. Brushed

The pinout at the rear is for daughter boards


The second variation will be ‘Rosmo:BLDC’ using Brushless motors. We have a chassis and plan to use it initially with a very overpowered rp2040 ESC


The idea is the Rosmo:Bit PCB can be ‘upgraded’ by removing the wheels and attaching it to this chassis. It will provide mounting for the Microcontroller, sensors. In time we hope to use or develop smaller and cheaper SimpleFOC driver boards that are more suitable for this small robot.

Software wise our intention is to run MicroROS/ROS2 on both the Rosmo:bot and Rosmo:BLDC. Initial work has started using Linorobot2. We’re waiting on a couple of upstream bugs to be fixed before this can progress.

We’re also interested in supporting Smartcar_shield firmware on Rosmo:bot