MCPcopy Index your code
hub / github.com/Psychotropos/flipper_serprog

github.com/Psychotropos/flipper_serprog @v0.2.23

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.2.23 ↗ · + Follow
22 symbols 28 edges 1 files 1 documented · 5%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

flipper_serprog

A serprog-based SPI programmer for use with flashrom on the Flipper Zero.


Wiring Guide

Flipper Zero Pin Target Device Pin
PA7 MOSI
PA6 MISO
PA4 CS
PB3 SCK
3V3 VCC
GND GND

Note: Some additional SPI chip pins may need to be held high for proper operation.
This can be done with pull-up resistors to 3V3, or (less recommended) by directly connecting them to the 3V3 rail.
Example: the /HOLD and /WP pins on Winbond chips.

Safety tip:
If using a SOP8 clip, attach the device and verify connections while the Flipper Zero is powered off.
Voltage fluctuations on the 3V3 rail may interfere with other peripherals (e.g., the SD card interface) if the Flipper is powered on.


Usage

Use flashrom to interface with the Flipper Zero via USB.

By default, flipper_serprog uses the secondary VCP channel, so the serprog interface may appear under a different tty device number.

You can change the VCP channel by modifying USB_VCP_CHANNEL in the source code and recompiling.

If you set the VCP channel to 0, the standard Flipper Zero RPC interface will be unavailable while flipper_serprog is running.

Example usage:

```bash flashrom -p serprog:dev=/dev/tty.usbmodemflip_3 -r spi.bin

Core symbols most depended-on inside this repo

blocking_furi_stream_buffer_receive
called by 4
src/main.rs
signal_usb_cdc_send
called by 3
src/main.rs
furi_create_thread
called by 2
src/main.rs
_entry
called by 1
src/main.rs
set_spi_baud_rate
called by 1
src/main.rs
usb_process_packet
called by 1
src/main.rs
main
called by 0
src/main.rs
input_callback
called by 0
src/main.rs

Shape

Function 16
Enum 5
Class 1

Languages

Rust100%

Modules by API surface

src/main.rs22 symbols

For agents

$ claude mcp add flipper_serprog \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact