From: Lady Ada Date: Fri, 6 Dec 2019 04:44:28 +0000 (-0500) Subject: fix multibyte-write-then-read! X-Git-Tag: 3.1.2^2~1 X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/commitdiff_plain/102ba2251d6aa8f40d1475f1767b176b44cc745c?ds=sidebyside;hp=-c fix multibyte-write-then-read! --- 102ba2251d6aa8f40d1475f1767b176b44cc745c diff --git a/src/adafruit_blinka/microcontroller/generic_linux/i2c.py b/src/adafruit_blinka/microcontroller/generic_linux/i2c.py index e309e9e..ed8c8b8 100644 --- a/src/adafruit_blinka/microcontroller/generic_linux/i2c.py +++ b/src/adafruit_blinka/microcontroller/generic_linux/i2c.py @@ -58,9 +58,7 @@ class I2C: self.readfrom_into(address, buffer_in, start=in_start, end=in_end) else: # To generate without a stop, do in one block transaction - if out_end-out_start != 1: - raise NotImplementedError("Currently can only write a single byte in writeto_then_readfrom") - readin = self._i2c_bus.read_i2c_block_data(address, buffer_out[out_start:out_end][0], in_end-in_start) + readin = self._i2c_bus.read_i2c_block_data(address, buffer_out[out_start:out_end], in_end-in_start) for i in range(in_end-in_start): buffer_in[i+in_start] = readin[i]