TinyBot

A very tiny (~ 10x10x10 mm) wireless remote-controlled car.

It started out with a claim on the title of “smallest robot” in a Reddit post [image below]. It used the ESP8266 as the controller, motor driver boards on the sides, a LiPo battery and small stepper motors at the bottom. Pretty impressive, but I decided to try and do better.

The "smallest robot" as claimed by someone in a Reddit post.

In my design, I used the ESP8285 (ESP-01F) module, which is half the size of the ESP8266 (ESP12) module used above. Along with a custom PCB for the power and 2x motor drivers, the overall dimensions are about 10mm*10mm.

Tiny stepper motors are used for movement, and a python script running on a PC uses MQTT for communication with the modules. MQTT has been designed with multiple robot communication in mind, and seemed perfect for creating a swarm of multiple such TinyBots! That’s what I call them - TinyBots…super creative!

TinyBot components and ESP-01F vs ESP12 modules size comparison.
[Left] A programming tool had to be hand-crafted for the tiny ESP-01F, [Right] Soldering the PCB with 0201 SMD components. If you look closely, there are two 0201 components between the two switch pins!
[Left] Assembling the robot, [Right] Wired testing as I wait for batteries to arrive.

I had trouble procuring the 10mm LiPo batteries (smallest that can be found online) because of import regulations on lithium batteries in India. Eventually, I did get them but testing showed that the battery voltage quickly dropped when the stepper motors are loaded (drawing higher current), causing the ESP8285 to reset. Shown below is a short video of the bot controlled from my Desktop.

The C rating of the batteries in such a small package is not sufficient to support the requirements of TinyBot. I don’t see getting better batteries under my budget anytime soon - I am limited by the technology of my time! The current project code and PCB files can be found at TinyBot on GitHub.