Skip to content

Commit 06b4da0

Browse files
committed
fixing typo and adding i2c stop for register read
1 parent 1425f87 commit 06b4da0

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

adafruit_scd30.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ def __init__(self, i2c_bus, ambient_pressure=0, address=SCD30_DEFAULT_ADDR):
7070

7171
# cached readings
7272
self._temperature = None
73-
self._relative_humitidy = None
73+
self._relative_humidity = None
7474
self._e_co2 = None
7575

7676
def reset(self):
@@ -198,7 +198,7 @@ def relative_humidity(self):
198198
**NOTE** Between measurements, the most recent reading will be cached and returned. """
199199
if self.data_available:
200200
self._read_data()
201-
return self._relative_humitidy
201+
return self._relative_humidity
202202

203203
def _send_command(self, command, arguments=None):
204204
# if there is an argument, calculate the CRC and include it as well.
@@ -223,7 +223,10 @@ def _read_register(self, reg_addr):
223223
self._buffer[0] = reg_addr >> 8
224224
self._buffer[1] = reg_addr & 0xFF
225225
with self.i2c_device as i2c:
226-
i2c.write_then_readinto(self._buffer, self._buffer, out_end=2, in_end=2)
226+
i2c.write(self._buffer, end=2)
227+
# separate readinto because the SCD30 wants an i2c stop before the read (non-repeated start)
228+
with self.i2c_device as i2c:
229+
i2c.readinto(self._buffer, end=2)
227230
return unpack_from(">H", self._buffer)[0]
228231

229232
def _read_data(self):
@@ -243,7 +246,7 @@ def _read_data(self):
243246

244247
self._e_co2 = unpack(">f", self._buffer[0:2] + self._buffer[3:5])[0]
245248
self._temperature = unpack(">f", self._buffer[6:8] + self._buffer[9:11])[0]
246-
self._relative_humitidy = unpack(
249+
self._relative_humidity = unpack(
247250
">f", self._buffer[12:14] + self._buffer[15:17]
248251
)[0]
249252

0 commit comments

Comments
 (0)