I2C read-write script
Used for read/write data via the I2C bus with writing/reading from/to binary file.
- I2C Tools for Linux
sudo apt install i2c-tools
- List all I2C buses in yur PC
sudo i2cdetect -l
- Read data from I2C device via bus
i2c-1on address0xA0and write them to fileout.binrw-i2c -r -b 1 -c 0xA0 -f out.bin
- Write data to I2C device via bus
i2c-2on address0x60from filein.binrw-i2c -w -b 2 -c 0x60 -f in.bin
- Write data to I2C device via bus
i2c-2and device start address0x10fromstdinrw-i2c -w -b 2 -s 0x10
- Write data to I2C device via bus
i2c-2with byte osset10from filein.binrw-i2c -w -b 2 -o 10 -f in.bin
- Write data (10B) to I2C device via bus
i2c-2from filein.binrw-i2c -w -b 2 -l 10 -f in.bin
- Write data to I2C device via bus
i2c-1from filein.binin quick (block) moderw-i2c -w -b 1 -q -f in.bin
The default chip address is 0x50.
The default start address is 0x00.
The default byte offset is 0B.
The default length is 128B.
The default transfer mode is sequential.
1: Argument parsing error
2: Neither R not W option was specified
3: Communication bus missing
4: In-out file handling error
5: Chip address format error
6: Length format error
7: Byte offset format error
8: Start address format error