From 14e405f5152c99e3e2db9948a8cee780e1af04a3 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Sun, 15 May 2022 16:14:44 +0200 Subject: scd4x.read(): indicate whether read was successful --- src/driver/scd4x.cc | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'src/driver') diff --git a/src/driver/scd4x.cc b/src/driver/scd4x.cc index 3ad34a0..365cde8 100644 --- a/src/driver/scd4x.cc +++ b/src/driver/scd4x.cc @@ -32,16 +32,18 @@ void SCD4x::startLowPower() i2c.xmit(address, 2, txbuf, 0, rxbuf); } -void SCD4x::read() +bool SCD4x::read() { txbuf[0] = 0xec; txbuf[1] = 0x05; - if (i2c.xmit(address, 2, txbuf, 9, rxbuf) == 0) { - co2 = (rxbuf[0] << 8) + rxbuf[1]; - rawTemperature = ((rxbuf[3] << 8) + rxbuf[4]); - rawHumidity = (rxbuf[6] << 8) + rxbuf[7]; + if (i2c.xmit(address, 2, txbuf, 9, rxbuf)) { + return false; } + co2 = (rxbuf[0] << 8) + rxbuf[1]; + rawTemperature = ((rxbuf[3] << 8) + rxbuf[4]); + rawHumidity = (rxbuf[6] << 8) + rxbuf[7]; + return true; } SCD4x scd4x; -- cgit v1.2.3