smbus2 icon indicating copy to clipboard operation
smbus2 copied to clipboard

Workarounds for 32 byte I2C block size limitation dictated by SMBus

Open altineller opened this issue 8 months ago • 1 comments

Hello,

I am reading i2c data from my custom device as:

status = bus.read_i2c_block_data(0x3C, 0xA0, STATUS_BUFFER_SIZE)

Where 0x3c is the address, and 0xa0 is the offset.

I needed to read 64 bytes, and discovered the 32 bytes block size limit, so:

status64 = i2c_msg.read(0x3C, STATUS_BUFFER_SIZE) but this omits the offset.

how can I make > 32bytes reads by using i2c_msg and still be able to use this offset.

Best Regards, C.

altineller avatar Nov 03 '23 20:11 altineller