30 const uint8_t* data,
size_t len) = 0;
36 uint8_t* data,
size_t len) = 0;
41 virtual esp_err_t
writeRaw(uint8_t addr,
const uint8_t* data,
size_t len) = 0;
46 virtual esp_err_t
readRaw(uint8_t addr, uint8_t* data,
size_t len) = 0;
51 virtual esp_err_t
writeReadRaw(uint8_t addr,
const uint8_t* wr,
size_t wr_len,
52 uint8_t* rd,
size_t rd_len) = 0;
57 virtual bool probe(uint8_t addr) = 0;
62 virtual esp_err_t
eepromRead(uint8_t addr, uint16_t offset, uint8_t* buf,
size_t len) = 0;
67 virtual esp_err_t
eepromWrite(uint8_t addr, uint16_t offset,
const uint8_t* buf,
size_t len) = 0;
virtual esp_err_t writeRaw(uint8_t addr, const uint8_t *data, size_t len)=0
virtual esp_err_t writeReadRaw(uint8_t addr, const uint8_t *wr, size_t wr_len, uint8_t *rd, size_t rd_len)=0
virtual esp_err_t addDevice(uint8_t addr, I2cDeviceHandle *out_dev)=0
virtual esp_err_t readReg(I2cDeviceHandle dev, uint8_t reg, uint8_t *data, size_t len)=0
virtual esp_err_t eepromWrite(uint8_t addr, uint16_t offset, const uint8_t *buf, size_t len)=0
virtual ~II2cBus()=default
virtual esp_err_t writeReg(I2cDeviceHandle dev, uint8_t reg, const uint8_t *data, size_t len)=0
virtual esp_err_t eepromRead(uint8_t addr, uint16_t offset, uint8_t *buf, size_t len)=0
virtual bool probe(uint8_t addr)=0
virtual esp_err_t readRaw(uint8_t addr, uint8_t *data, size_t len)=0
II2cBus * getI2cBus1()
Returns singleton instance of I2C bus 1.
II2cBus * getI2cBus0()
Returns singleton instance of I2C bus 0.