Skip to main content

Read/write i2c & spi memory chipsets (Flash & EEPROM)

Project description

Python Flash Reader

Flash Reader allows to read and/or write any EEPROM or Flash memory via SPI or I2C. This library is particularly useful in case of reverse engineering or prototyping for embedded systems (RPI, etc..).

Supported platform

Support memory

  • Various spi serial flash
  • Macronix mx25R..., mx25L...
  • Microchip 25aa..., 25lc...
  • Winbond w25q...
  • Microchip 24lc...

Quick start (Raspberry pi 4)

Setup Raspbian

apt-get install python3 python3-pip python3-spidev python3-monotonic
sudo raspi-config
  • Go to "Interfacing Options" > "SPI" > "Enable"
  • Reboot the RPI

Wiring

  • SPI: PIN19(MOSI), PIN21(MISO), PIN23(SCK), PIN11(CS)
  • I2C: PIN3(SDA), PIN5(SCL)

Quick start (Windows)

Setup Windows

  • Plug FT232H
  • Use Zadig (https://zadig.akeo.ie/), select the USB device in the list, select libusb-win32 and replace the driver (DO NOT USE WINUSB or any other driver).

Wiring

  • SPI: D0(SCK), D1(MOSI), D2(MISO), D3(CS)
  • I2C: D0(SCL), D1(SDA)

Run

Read spi flash (By using generic driver: spiflash)

python -m flashreader --platform raspberrypi --memory spiflash --read ./dump.bin --offset 0

Write spi flash (By using generic driver: spiflash)

python -m flashreader --platform raspberrypi --memory spiflash --write ./dump.bin --offset 0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flashreader-1.0.0.tar.gz (9.8 kB view hashes)

Uploaded Source

Built Distribution

flashreader-1.0.0-py3-none-any.whl (11.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page