SPI JEDEC ID reader
Read the manufacturer and device bytes from a SPI flash chip before trusting any dump, erase or write workflow.
ESP32-S3 SPI protocol debugging
ESP32 Bit Pirate turns a compatible ESP32-S3 board into a practical SPI flash and module debugging workbench. Use it to read JEDEC IDs, inspect SPI flash chips, back up EEPROMs, test SD cards and debug common wiring problems before writing target firmware.
Start with a read-only probe. Once chip select, clock, MOSI, MISO, power and ground are confirmed, move to the recipe that matches the device or memory operation.
Connect GND, CS, SCK, MISO and MOSI.
Confirm the target voltage and keep the setup read-only first.
Start SPI mode on ESP32 Bit Pirate.
Probe the chip with a safe command such as a JEDEC ID read when working with SPI flash.
Continue with a flash dump, EEPROM shell, SD card shell, adapter mode or module-specific recipe.
mode spi
[0x9F r:3]
flash
eeprom
sd
Example CLI flow. See the SPI wiki for exact syntax, pin configuration and firmware-specific options.
Use this overview to choose the right SPI workflow before opening a detailed recipe.
Read the manufacturer and device bytes from a SPI flash chip before trusting any dump, erase or write workflow.
Use the browser SPI Flash Programmer or Flashrom adapter mode to create a clean backup before repair or firmware experiments.
Use CLI-side probe, analyze, search and string extraction workflows before deciding what to dump or modify.
Work with 25X-style EEPROM chips where supply voltage, address organization and safe backup order matter.
Open a small SPI SD workflow for file inspection and basic file operations from the bench.
Use SPI as the control bus for CC1101, nRF24L01, W5500, MCP2515 and other module workflows that add extra GPIO roles.
SPI debugging often starts with a physical question: is the chip selected, powered and answering? A small external tool can separate wiring problems from firmware problems before deeper work.
Read the JEDEC ID, dump the chip twice and compare files before treating a backup as trustworthy.
Use raw SPI reads and simple probes to confirm CS, clock, MOSI, MISO and power before integrating the target into firmware.
Many CC1101, nRF24L01, W5500 and MCP2515 failures are pin mapping, chip-select, interrupt, supply or level problems.
These notes are intentionally short. The detailed command references live in the project documentation and firmware repository.
CS must match the selected target. A floating or wrong CS line often looks like all-FF data, all-00 data or no response at all.
MISO is target-to-controller and MOSI is controller-to-target. Swapping them is one of the most common SPI bring-up mistakes.
ESP32 GPIO is 3.3 V; choose level adaptation before SPI tests on 1.8 V or 5 V hardware.
In-circuit flash access may fail if the original board still powers the chip or another controller drives the same SPI lines.
Most SPI failures are wiring, chip-select, power, bus contention or speed problems. Check these before changing target firmware.
Check MISO, chip select, clip contact, target power and whether the chip is actually selected.
Look for a held-low line, short, wrong voltage, powered-off target or another device fighting the bus.
Improve clip contact, shorten wires, reduce speed and verify the target supply before trusting any dump.
Confirm WP# and HOLD# are high when required, verify image size and avoid in-circuit contention during erase/write.
Recheck CS/CSN, extra pins such as CE, GDO0, IRQ or RESET, and confirm the module uses the expected 3.3 V supply.
These pages are the task-level SPI workflows. This overview keeps the protocol-level guidance here, while each recipe covers wiring, commands and troubleshooting in detail.
This page is a protocol overview. Use the site index for the full web experience, or GitHub for source code, firmware documentation and the SPI command reference.
Flash a supported ESP32-S3 board before testing SPI mode from the browser.
Open Web FlasherOpen the maintained firmware wiki for SPI mode commands and behavior.
Open SPI command referenceCheck board pin mapping, voltage and hardware notes before wiring a SPI bus.
Compare supported ESP32-S3 boardsOpen Web Serial for SPI commands after the matching firmware is running.
Open Web Serial Terminal for ESP32 Bit PirateProbe, dump and save SPI flash data through the browser workflow.
Open Web SPI Flash ProgrammerUse the browser-based BPIO2 tool for direct SPI experiments from the web interface.
Open Bit Bang SPI browser controllerCapture SPI-like signal activity when command-level results do not explain the bus behavior.
Open Logic AnalyzerUse the AVRDUDE-compatible SPI adapter workflow from a browser interface.
Open AVR ProgrammerBrowse recipes that connect SPI work to wiring, commands, captures and troubleshooting.
Browse all hardware debugging recipesCheck firmware source, issues and releases that affect SPI support.
Open GitHub repositoryShort answers for common questions before moving into a detailed workflow.
Yes. ESP32 Bit Pirate can send a JEDEC ID probe to a SPI flash chip and use the response as a first sanity check for chip select, clock, MOSI, MISO and power.
Yes. Use the browser SPI Flash Programmer or the Flashrom-compatible adapter workflow after the chip is probed reliably and the wiring is stable.
No. SPI is also used by EEPROMs, SD cards and modules such as CC1101, nRF24L01, W5500 and MCP2515, depending on the selected ESP32 Bit Pirate mode.