Skip to main content
Python package build status

I2C eeprom device drivers (pure Python)

I2C flash devices, also known as DataFlash are commonly found in embedded products, to store firmware, microcode or configuration parameters.

PyI2CFlash comes with several pure Python drivers for those flash devices, that demonstrate use of I2C devices with PyFtdi. It could also be useful to dump flash contents or recover from a bricked devices.

Supported I2C flash devices

Vendor

Microchip

Microchip

Microchip

Microchip

Microchip

Microchip

Microchip

Microchip

Microchip

Microchip

EEPROM

24AA01

24AA02

24AA04

24AA08

24AA16

24AA32A

24AA64

24AA128

24AA256

24AA512

Status

?

?

No

No

No

Ok

?

?

?

?

Size

128

256

512

1Ki

2Ki

4Ki

8Ki

16Ki

32Ki

64Ki

Notes about performances

  • Read operation is synchronous with I2C bus clock: it therefore only depends on the achievable frequency on the I2C bus, which is bound to the highest supported frequency of the flash device.

  • Write operation depends mostly on the flash device performance, whose upper limit comes mostly from the maximum write packet size of the device, as the device needs to be polled for completion after each packet: the shorter the packet, the higher traffic on the I2C and associated overhead.

Notes about 24AA32

This device is declared obsolete by the manufacturer and is not supported.

Only 24AA32A revision is supported.

Supported I2C flash commands

Read

Read byte sequences of any size, starting at any location from the I2C flash device

Write

Write arbitrary byte sequences of any size, starting at any location to the I2C flash device

Dependencies

  • Python 3.5 or above is required.

  • PyFtdi 0.42 or above is required.

Metadata

Release files for pyi2cflash 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyi2cflash 0.2.2
File Size Uploaded
pyi2cflash-0.2.2.tar.gz 7.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyi2cflash 0.2.2
File Interpreter ABI Platform
pyi2cflash-0.2.2-py35-none-any.whl Python 3.5 none any Details

Total release size: 14.3 kB

Release files / pyi2cflash-0.2.2.tar.gz

Download URL pyi2cflash-0.2.2.tar.gz
Size 7.1 kB
Tags Source
SHA-256 checksum
How to use checksums
a153ca9be48d4000597979e13e35b9ced3705c13dee552bd3c5faa7bdcfb6ada
BLAKE2b-256 checksum
How to use checksums
1aed8e41017c196e361ef930370e177087cff2bae9583aff89e53b854f786a90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.0.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.7.7

Release files / pyi2cflash-0.2.2-py35-none-any.whl

Download URL pyi2cflash-0.2.2-py35-none-any.whl
Size 7.2 kB
Tags Python 3.5
SHA-256 checksum
How to use checksums
8df4bb6b1d194a58e5605ccd4690be19feb067c7f4a60f2a3d3c748cb3f9e684
BLAKE2b-256 checksum
How to use checksums
20b1e6b56f0f084855b1088003ad91d45a65f0fb898369a53ae49054f201c43b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.0.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.7.7

Release history Release notifications | RSS feed

This release

0.2.2 This release

2 release files

0.2.1

1 release file

0.2.0

1 release file

0.1.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page