Carl Bugeja's CodeCell Is a Tiny "Robot Brain" with Espressif ESP32-C3 and Motion-Fusion Sensor
Absolutely tiny USB-programmable microcontroller module includes nine-axis IMU, light sensor, and even a battery charging circuit.
Engineer Carl Bugeja has created what he claims to be "probably the smallest wireless sensory controller" for motion-fusion and control in compact robotics, wearables, smart home devices, and more — combining a nine-axis inertial measurement unit (IMU) with an Espressif ESP32 microcontroller module to create the penny-sized CodeCell.
"It is designed to be a tiny maker-friendly Arduino-compatible module which can sense light and perform nine-axis motion fusion," Bugeja explains of the CodeCell, "making it easier to build wearables, tiny robots, and cool IoT [Internet of Things] projects. But with hundreds of Arduino-compatible boards already out there, why design a new one? Let's say you want to build a tiny robot: you need motors, wheels, drivers, a small wireless controller, sensors, a battery, and a charger — suddenly your tiny robot is not so tiny any more, so in this project I want to simplify as many of these connections as possible to build a more compact brain for our tiny robot."
Bugeja had already discounted a range of relatively small, off-the-shelf wireless microcontroller modules in his hunt for the perfect "robot brain" — discounting some as being built on relatively obscure microcontroller architectures, others for their reliance on external antennas. Having decided that there was a need for something custom, Bugeja started with an Espressif ESP32-C3 -MIMI-1 module with on-board antenna — then began adding the features considered necessary for a flexible robot platform.
While attempting to keep the overall footprint as small as possible, Bugeja was able to bring out power and general-purpose input/output (GPIO) pins to castellated 0.1" pin headers across three sides of the board, add a USB Type-C connector for data and power, and even include a battery charging circuit — but ran out of room in the first prototype for any on-board sensors. Numerous redesigns and revisions followed to deliver the final version: the CodeCell.
This, Bugeja explains, measures just 18.5×18.5mm plus 5.2mm for the PCB antenna (around 0.73×0.73" plus 0.2" for the antenna) yet offers a full-performance Espressif ESP32-C3 with a 160MHz 32-bit RISC-V processor core, 400kB of static RAM (SRAM), 4MB of flash, and both Wi-Fi and Bluetooth Low Energy (BLE) radios, a lithium-polymer battery charging system, and a choice of on-board sensors: a Vishay VCNL4040 light sensor as standard, with an optional CEVA BNO085 nine-axis motion-fusion inertial measurement unit (IMU).
To prove its capabilities, Bugeja has created a series of demos with the CodeCell at their heart: depth gesture recognition, tap detection recognition, proximity sensing, automatic dimming, a step counter, angle control, personal activity guessing, a wireless remote, AI prompting, and Alexa-based smart home light control. "I'm super proud of how this project turned out," he says, "and I'm personally using it to build smaller and smaller robots."
The CodeCell is available to purchase on Bugeja's Microbots store at a currently-discounted €12.50 for the light-only and €29.99 for the light-and-motion variants (around $13.50 and $32 respectively).
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.