38 explicit ADS1115(uint8_t address = 0x48,
40 TwoWire *wire = &Wire,
41 uint8_t dataRrate = 7)
44 SUPLA_LOG_ERROR(
"Unable to find ADS1115 at address 0x%x", address);
46 ads_.setDataRate(dataRrate);
49 SUPLA_LOG_DEBUG(
"ADS1115 is connected at address: 0x%x, Gain: %d, "
50 "DataRate: %d", address, ads_.getGain(), ads_.getDataRate());
54 void customPinMode(
int channelNumber, uint8_t pin, uint8_t mode)
override {}
56 void customDigitalWrite(
int channelNumber, uint8_t pin,
57 uint8_t val)
override {}
59 int customDigitalRead(
int channelNumber, uint8_t pin)
override {
63 unsigned int customPulseIn(
int channelNumber, uint8_t pin, uint8_t value,
64 uint64_t timeoutMicro)
override {
68 void customAnalogWrite(
int channelNumber, uint8_t pin,
int val)
override {}
70 int customAnalogRead(
int channelNumber, uint8_t pin)
override {
72 SUPLA_LOG_WARNING(
"[ADS1115] invalid pin %d", pin);
75 if (mutex_) mutex_->lock();
76 if (ads_.isConnected()) {
78 readValue_[pin] = ads_.readADC(pin);
80 if (mutex_) mutex_->unlock();
81 return readValue_[pin];
84 void setGain(uint8_t value) {
91 int16_t readValue_[4] = {-1, -1, -1, -1};