Cardputer Bit Pirate I2C workbench

Turn the original M5Stack Cardputer into a standalone bus terminal, then check a known I2C sensor through its Grove connector with ESP32 Bit Pirate.

View original project ↗

What you’re building

ESP32 Bit Pirate by geo-tp gives the original M5Stack Cardputer a command-line hardware workbench that can run on its own keyboard and screen or through USB serial. This first experiment uses I2C rather than the firmware’s radio or flash-writing tools: connect a documented, electrically compatible sensor and confirm that its expected address acknowledges. The upstream project explicitly lists the original Cardputer separately from Cardputer ADV, and its PlatformIO configuration has distinct cardputer and cardputer-adv environments. For the original board, the cardputer environment maps I2C SCL to GPIO1 and SDA to GPIO2 at 100000 Hz, matching the two signal pins exposed on the manufacturer’s Grove pin map. The red Grove wire carries 5V power; that is not permission to connect 5V pull-ups to the ESP32 signal pins. Choose a module whose supply and I2C levels are compatible, or use suitable level conversion. The original Cardputer exposes only two Grove signal pins, so do not assume that every SPI, radio or accessory example works without additional wiring. A successful scan proves an address responds, not that a particular sensor model or every register is identified. Keep the test on your own disconnected bench hardware, save the working firmware version and pin settings, and leave register writes, stress tests and radio transmission out of the first session.

Key steps

  1. Identify the original Cardputer and save its current files plus a factory-firmware recovery path. Open the original project’s Web Flasher and select Cardputer, not Cardputer ADV or a generic S3 target. Close other serial monitors before connecting.
  2. If the installer cannot connect, power off and unplug USB, hold G0, then reconnect USB while holding it. Complete the flash with a data-capable cable, release G0 and restart normally after the installer finishes.
  3. Select Standalone to use the built-in keyboard and screen, or USB Serial for a larger log. Run help with no external target attached to confirm that the command prompt works before diagnosing any sensor wiring.
  4. With power disconnected, check the sensor datasheet and Grove wiring. On the original Cardputer, black is GND, red is 5V, yellow is GPIO2 and white is GPIO1. Do not feed 5V logic or pull-ups into the signal pins; arrange compatible power and level conversion before connecting the sensor.
  5. Power the verified setup, enter mode i2c and run config. Confirm SDA GPIO2, SCL GPIO1 and 100000 Hz for the original cardputer target. Run scan and compare the returned address with the sensor datasheet; an acknowledgement alone does not prove the exact sensor identity.
  6. If nothing responds, disconnect power and recheck common ground, supply, pull-ups and SDA/SCL orientation before retrying. Do not substitute random register writes or stress commands for a wiring check. Record the firmware revision, address and pin configuration once the scan is repeatable.

Original project and code

  1. Project by geo-tpgeo-tp
  2. Source codeGitHub repository