From b770518b7286cf6c4a0645cb49c1d8bb65b5781a Mon Sep 17 00:00:00 2001 From: vrilcode <31141078+vrilcode@users.noreply.github.com> Date: Sun, 12 Oct 2025 15:26:26 +0200 Subject: [PATCH] Update i2c_driver.be (#24003) Added a read_bit function as there is also a write_bit function. --- lib/libesp32/berry_tasmota/src/embedded/i2c_driver.be | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/libesp32/berry_tasmota/src/embedded/i2c_driver.be b/lib/libesp32/berry_tasmota/src/embedded/i2c_driver.be index 540dcc169..0b62135d6 100644 --- a/lib/libesp32/berry_tasmota/src/embedded/i2c_driver.be +++ b/lib/libesp32/berry_tasmota/src/embedded/i2c_driver.be @@ -118,10 +118,17 @@ class I2C_Driver var buf = self.wire.read_bytes(self.addr, reg, 4) return (buf[0] << 24) + (buf[1] << 16) + (buf[2] << 8) + buf[3] end + + # Reads a specific bit from a register + # read_bit(reg:int, bit:int) -> bool + def read_bit(reg, bit) + if bit < 0 || bit > 7 return end + return bool(self.read8(reg) & 1 << bit) + end end #- Example d = I2C_Driver("MPU", 0x68, 58) --# \ No newline at end of file +-#