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 |
||||||||||
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
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)
| File | Size | Uploaded | |
|---|---|---|---|
| pyi2cflash-0.2.2.tar.gz | 7.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|