The CodeCell C6 Drive is a compact all-in-one robotics module designed to be the brain of your next robot. Measuring just 2.25 cm in width, it features an Arduino-compatible ESP32-C6 microcontroller (ESP32-C6-MINI-1-H8 - 8 MB Flash and 512 KB SRAM) with Wi-Fi 6, BLE 5, and Zigbee connectivity. Like our standard CodeCell C6, it integrates battery charging management, light/proximity sensing, and a 9-axis IMU motion sensor.
What makes the C6 Drive different is its built-in dual H-bridge drivers, allowing you to directly drive DC motors, buzzers, and actuators such as the CoilPad and FlatFlap. This makes it the ultimate all-in-one robotics controller – no extra motor driver boards required. In fact this is the same module that powers our ProtoBot Robotic Platform - with the combination of onboard sensors, wireless connectivity, and driving 4 geared dc-motors!
The CodeCell C6 Drive includes the same advanced sensors as the C6. A VCNL4040 light sensor provides ambient light and proximity detection up to 20 cm, while the BNO085 9-axis IMU combines an accelerometer, gyroscope, and magnetometer with onboard sensor-fusion. Together, they deliver orientation (roll, pitch, yaw), motion detection, activity classification, tap detection, step counts, linear acceleration, and more – enabling robots to sense and react to their environment in real time.
For low-power applications, the C6 Drive supports multiple wake-up sources: timers, light interrupts, proximity interrupts, and tap detection. This optionally lets your projects remain efficient.
To simplify development, the CodeCell.h
Arduino library offers easy-to-use functions with examples and tutorials. The CodeCell C6 Drive also pairs with our free app, letting you add wireless controls (sliders, buttons, joystick), view real-time sensor feedback, and even display messages on a 20-character live display – ideal for robotics debugging and control.
Each box includes the CodeCell C6 Drive, a set of four M1.2 screws, and an optional pin-header. A 1.25 mm pitch battery cable is also provided, along with the optional 170 mAh 20C LiPo battery. The optional battery measures 23 × 17.5 × 8.7 mm, weighs 4.6 g, and comes pre-wired with a 1.25 mm female connector that plugs directly into the onboard connector. See the full battery datasheet here. Schematics for this module are available here.
This module uses the ESP32-C6-MINI-1-H8, which is certified for FCC, CE, TELEC, and Wi-Fi Alliance compliance. The CodeCell C6 Drive is also RoHS compliant and follows the IPC-A-600 II standard. Please note that the CodeCell C6 Drive is intended as a DIY maker kit. For commercial use, please contact us.
We designed the C6 Drive to help you build robots in the smallest possible form factor — and we hope you’ll enjoy it as much as we do.
Happy Robo-Building!
CodeCell comes with well explained tutorials and multiple examples. All tutorials can be found here: CodeCell Tutorials.
To install the CodeCell library, go to 'Sketch > Include Library > Manage Libraries' - the 'Library Manager' should open up. Just type "CodeCell" and click 'Install' to download the latest version of the CodeCell library.
We are continuously updating and adding new features to this library, so make sure you're using the latest version. To quickly get familiar with this library, go to 'File > Examples > CodeCell,' where you'll find multiple examples you can use and modify for your projects. We recommend starting with the 'GettingStarted' example, which contains just a few lines of code but explains all the sensing functionalities available with CodeCell.
The CodeCell C6 Drive includes dual H-bridge drivers for powering DC motors, buzzers, and actuators (like the CoilPad or FlatFlap) – no extra motor boards required! Each driver can theoretically support up to 1.8A, but the actual limits depend on the CodeCell's power management chip: up to 1500 mA when powered by a LiPo battery, and up to 450 mA when powered through USB. With a LiPo battery, this means each driver can provide around 750 mA.
It’s important to keep these limits in mind when designing robots. For example, our ProtoBot uses this same module to drive four N20 motors. At certain loads, this could exceed the current limits, so we limit the current to 90% in software to stay within safe operating levels.
The new CodeCell C6 supports both RTC-timer and interrupt-triggered sleep wake-ups. Here are the available options and their typical sleep currents:
You can select a wake-up source depending on your project’s needs and the desired battery life. If long battery life is the main priority, the RTC-timer wake-up source is the most efficient option (≈40 uA), since it put both sensors into sleep mode. If your project requires light- or tap-based wake-ups, you can enable those instead, though they come with higher sleep current.
To estimate battery life, divide your battery capacity by the average current draw of your project:
Battery Life (hours) = Capacity (mAh) ÷ Current (mA)
For example, a 170 mAh battery with RTC-wakeup could theoretically last about 6 months in standby. In practice, this value will be lower because active usage and wake-up checks needs to be also factored in.
CodeCell can be shipped using all our available shipping methods. However, if you choose the 170mAh LiPo battery option, it must ship via FedEx due to regulations. This may increase your cart total, but it’s express and reliable. You can also add other items to the same shipment to make the most of it. We appreciate your understanding 😊
CodeCell is suitable for anyone curious about electronics! It comes with well-explained Arduino examples that make it easy for kids and teenagers to get started. For children under 12, we recommend that any soldering is done under proper adult supervision and guidance. Please also note that the package includes small parts, such as screws, so care should be taken when handling them.
Yes, you can flash CodeCell with MicroPython since it’s based on the ESP32-C6, which supports MicroPython just like other ESP32-based boards. However, please note that our official CodeCell library is written in C++, designed for use with the Arduino IDE. If you plan to use MicroPython, you may need to write custom drivers to interface with the onboard sensors and peripherals
Some ESP32 development boards include both a RST (Reset) button and a BOOT button to manually put the device into programming mode. However, the ESP32-C6, such as the one on the CodeCell module, can automatically enter boot mode through the serial interface when using the Arduino IDE. This means the CodeCell doesn't need dedicated RST or BOOT buttons, which allowed us to make it as small as it is.
In the rare case that your CodeCell freezes or encounters an exception (causing it to continuously reset), you can manually force it into boot mode to reflash the firmware. To do this, simply follow these steps:
Following these steps will restore your CodeCell back to life.
The optional advanced IMU sensor is a pricey upgrade, but we believe it's well worth the investment! It upgrades the CodeCell’s capabilities with an integrated 3-axis accelerometer, 3-axis gyroscope, and 3-axis magnetometer. The BNO085’s advanced sensor fusion algorithms combine data from these sensors to accurately determine motion data, such as:
![]() |
Full Control at Your FingertipsUnlock Wireless Control for Your Projects! Easily add our MicroLink Library to your Sketch & pair it with our free App to:
|
Processor: ESP32-C3
Memory: 4 MB Flash + 400KB SRAM
Connectivity: Wi-Fi 4 + BLE 5
Sensors: Light/Proximity + 9-Axis IMU
GPIOs: 6 GPIO (3 ADC, 6 PWM) + I2C
Minimum Sleep Current: 476uA
Wakeup: RTC Timer
Processor: ESP32-C3
Memory: 4 MB Flash + 400KB SRAM
Connectivity: Wi-Fi 4 + BLE 5
Sensors: Light/Proximity + 9-Axis IMU
GPIOs: 6 GPIO (3 ADC, 6 PWM) + I2C
Minimum Sleep Current: 861uA
Wakeup: RTC Timer
Processor: ESP32-C6
Memory: 8 MB Flash + 512KB SRAM
Connectivity: Wi-Fi 6 + BLE 5 + Zigbee
Sensors: Light/Proximity + 9-Axis IMU
GPIOs: 6 GPIO (3 ADC, 6 PWM) + I2C
Minimum Sleep Current: 40uA
Wakeup: Timer, Light, Proximity, Tap
Processor: ESP32-C6
Memory: 8 MB Flash + 512KB SRAM
Connectivity: Wi-Fi 6 + BLE 5 + Zigbee
Sensors: Light/Proximity + 9-Axis IMU
GPIOs: 2 Motor Drivers + 2 GPIO + I2C
Minimum Sleep Current: 40uA
Wakeup: Timer, Light, Proximity, Tap