This module is a customer favorite but currently out of stock. Pre-order now for shipping by Dec 15th! *FedEx Shipping is Required for 170mAh Battery Option
Get started with sensing light, proximity, motion & activity tracking.
CodeCell features an Arduino-compatible ESP32-C3 with both WiFi and BLE, a VCNL4040 light sensor, and an optional BNO085 9-axis motion-fusion sensor. We made these sensors beginner-friendly with a simple library and easy-to-follow examples.
Incredibly Small!
It's just 1.85 cm wide, with 8 GPIO pins, powered by USB-C or battery.
The USB-C port allows you to easily reprogram the CodeCell, read serial data, and recharge the LiPo battery. The Software Library can directly manage the power and battery, indicating the status with the onboard RGB LED.
Specifications
Electrical:
Processor: ESP32-C3 32-bit RISC-V Single-Core
Memory: 4 MB (Flash) 400 KB (SRAM)
Clock Speed: 160MHz
Average Sleep Current: 689μA
LiPo Battery Charge Current: 90mA
Maximum Output Current: 1500mA (Battery) / 450mA (USB)
Mechanical:
Dimensions: 9.4mm H x 18.5mm L x 18.5mm W (+5.2mm antenna)
The CodeCell is a compact 1.85 cm wide module featuring an Arduino-compatible ESP32-C3 that offers both Wi-Fi and BLE connectivity. It provides 6 programmable GPIO pins, along with 2 I2C pins that can be reconfigured as GPIOs if not needed for communication. The module also has multiple power pins for connecting additional modules, sensors, and actuators. CodeCell can be powered through a LiPo battery connector or via USB-C, which is also used for reprogramming and charging the battery. The power management system of the CodeCell is built around the BQ24232 battery management chip, which enables dynamic power-path control. This allows the battery to charge while the system continues to operate. The charging process is broken into preconditioning, constant current, and constant voltage phases. By default, the charge current is set to 90mA for the optional 170mAh LiPo battery. The RGB LED provides clear visual indications of power and charging states, with animations showing red for low battery, green for battery power, and blue when charging/powered via USB. The CodeCell includes a VCNL4040 light sensor, allowing it to measure ambient light and proximity up to 20 cm. For more advanced projects, an optional BNO085 motion sensor is available, which adds 9-axis sensing capabilities. This is an expensive sensor but combines a 3-axis accelerometer, 3-axis gyroscope, and 3-axis magnetometer, using sensor fusion algorithms to provide detailed motion data such as angular readings (roll, pitch, yaw), motion state, personal activity guessing, linear acceleration, tap detection, and even step counts. This feature makes the CodeCell especially suitable for robotics and wearable applications. To make interacting with the sensors easier, the 'CodeCell.h' library provides easy-to-use functions and multiple examples. Use the Init() function to configure the module and enable its sensing features, and the Run() function in the main loop to handle power management tasks automatically. The CodeCell will ship with a default software that initializes the light sensor, runs the power management, and displays a breathing-light animation controlled by proximity sensing. Check out this tutorial to easily get started with CodeCell.
The box will include the CodeCell, a set of four M1.2 screws and 3 set of female headers (soldering is optional). It will also include a battery-cable (1.25mm pitch) or the optional battery.