#include "ads1115_pol_sensor.h" #include "esphome/core/log.h" namespace esphome { namespace ads1115_pol { static const char *const TAG = "ads1115_pol.sensor"; float ADS1115Sensor::sample(int16_t& raw_value) { return this->parent_->request_measurement(raw_value, this->multiplexer_, this->gain_, this->resolution_, this->samplerate_); } void ADS1115Sensor::update() { int16_t raw_value = -1000; float v = this->sample(raw_value); if (!std::isnan(v)) { if(this->count_ % 10 == 0) { ESP_LOGI(TAG, "'% -18s': Raw=% 6d %fV", this->get_name().c_str(), raw_value, v); } this->count_++; ESP_LOGD(TAG, "'%s': Got Voltage=%fV", this->get_name().c_str(), v); this->publish_state(v); } } void ADS1115Sensor::dump_config() { LOG_SENSOR(" ", "ADS1115_pol Sensor", this); ESP_LOGCONFIG(TAG, " Multiplexer: %u", this->multiplexer_); ESP_LOGCONFIG(TAG, " Gain: %u", this->gain_); ESP_LOGCONFIG(TAG, " Resolution: %u", this->resolution_); ESP_LOGCONFIG(TAG, " Sample rate: %u", this->samplerate_); } } // namespace ads1115 } // namespace esphome