Skip to main content

ESP32 co-processor

Inkplate 6MOTION features an ESP32-C3-WROOM-02 module, which serves as a WiFi co-processor. It communicates with the STM32 via SPI, using AT commands to handle network operations.

In our documentation and code, you may sometimes see the ESP32 co-processor referred to as the ESP32 modem, as it functions similarly to traditional modems by processing network-related tasks.

ESP32-C3 on Inkplate 6MOTION
ESP32-C3 co-processor on Inkplate 6MOTION

ESP-AT firmware

⚠️
Overwriting the ESP32 firmware that comes pre-installed on Inkplate 6MOTION will disable WiFi functionality!

The ESP32-C3 runs ESP-AT, an official firmware by Espressif that enables the ESP32 to act as a co-processor controlled via AT commands. This setup allows the STM32 to request the ESP32 to connect to WiFi, download files, and transmit data over SPI.

ℹ️
The ESP32 on Inkplate 6MOTION is running the official esp-at firmware. Learn more in Espressif's official repository:

ESP-AT

Official repository by Espressif, control your ESP32 device with AT commands.

The ESP-AT binary used on Inkplate 6MOTION was built using Espressif's official tools. If you're interested in compiling your own version, refer to the ESP-AT documentation.

⚠️
Build details and the official binary for Inkplate 6MOTION's ESP32-C3 will be available soon.

Using the ESP32 with the Inkplate Motion library

The Inkplate Motion library includes a software driver that manages the ESP32 co-processor, making WiFi features easy to use. Check out the WiFi example for practical implementation.

If you're curious about how the driver works internally, you can explore its low-level communication with the ESP32 in the source files inside the Inkplate Motion library (src/system/wifi).

Additionally, Espressif provides an AT Command Set detailing all the available AT commands. The Inkplate driver only uses a subset of these commands, focusing on essential WiFi functionality.