75 GPIO on a Single Board: The IOX-77 Beats the Arduino Mega with Wi-Fi
The IOX-77 is a development board based on the ESP32-C3 that solves one of the most common problems in complex embedded projects: the scarcity of GPIO. The project, published on GitHub under an open source license, provides as many as 75 input/output pins on a PCB that measures only 71 × 42 mm.

A multi-MCU architecture on the I²C bus
The heart of the board is the ESP32-C3-MINI-1-N4 module, which acts as the master and handles the main logic of the project. It is flanked by five RISC-V CH32V003 microcontrollers, each connected via I²C. Each CH32V003 adds 14 additional GPIOs to the system, for a total of 75 usable pins. Of these, 10 are compatible with 5V logic levels, a useful feature when interfacing with legacy peripherals or industrial sensors.
All chips operate at 3.3V, and the board integrates a TLV75733P LDO regulator rated at 1A with an input range between 4V and 5.5V. Power can be supplied via the USB-C connector, 5V or 3.3V solder pads, or directly from the header pins, allowing the use of expansion shields with their own power supply.
Parallel execution: 6 simultaneous tasks
Unlike classic GPIO expanders (such as the PCF8574 or MCP23017), the CH32V003s are not passive components. Each one has 16 KB of FLASH memory and can execute code autonomously in parallel with the ESP32. In practice, the system behaves like a 6-core architecture: the ESP32 handles the main activities while the five CH32s run dedicated tasks — reading sensors, controlling actuators, managing protocols — without burdening the main processor.
The ESP32 also controls the NRST pins of each CH32V003: if a slave microcontroller stops responding on the I²C bus, the master resets it automatically. Furthermore, in low power mode, the CH32s can be put to sleep with a consumption of a few µA, and then woken up by the ESP32 via the NRST pin.
Connectivity and physical interfaces
The IOX-77 offers several connection options. The two 1.27mm 2×25 pin headers allow custom shields to be mounted. A 40-pin FPC connector (0.5mm pitch) exposes 32 GPIOs from the CH32s, while a 6-pin FPC handles I²C, UART, GND and 3.3V for external modules. An additional 8-pin FPC is dedicated to individual programming of the five CH32V003s via the WCH-LinkE programmer.
For rapid prototyping, there is a standard 2.54mm header with 16 pins, which includes power supply voltages, UART signals, I²C, analog inputs and 5V-tolerant GPIOs.
Software and Arduino library
The firmware is available in the GitHub repository. The IOX.h library for Arduino allows you to manage the CH32 GPIOs with the same standard functions of the Arduino ecosystem: pinMode(), digitalWrite(), digitalRead(), analogRead() and analogWrite(). The current firmware occupies about 51% of the RAM and 44% of the FLASH of each CH32, leaving enough room for the implementation of custom macros by the user. The 4-layer PCB can be manufactured with our PCBPRODUCTION service.