Hi,
I have this sensor defined
i2c:
scan: false
id: i2c_bus_a
# Individual sensors
sensor:
- platform: bmp085
i2c_id: i2c_bus_a
address: 0x77
id: bmp180_sensor
temperature:
name: "Frontbalcony Temperature"
id: frontbalcony2_temperature
on_value:
- logger.log:
format: "--> updated temperature"
- lambda: |-
id(updates)++;
pressure:
name: "Frontbalcony Pressure"
id: frontbalcony2_pressure
on_value:
- logger.log:
format: "--> updated pressure"
- lambda: |-
id(updates)++;
update_interval: never
- platform: wifi_signal
name: "WiFi RSSI"
id: wifirssi
update_interval: never
on_value:
- logger.log:
format: "--> updated rssi"
- lambda: |-
id(updates)++;
- platform: adc
pin: A0
id: bat
name: 'Battery Voltage'
filters:
- multiply: 4.5 # (130+220+100)/100
update_interval: never
on_value:
- logger.log:
format: "--> updated battery voltage"
- lambda: |-
id(updates)++;
on a script, I’m calling
- lambda: |-
id(updates) = 0;
id(bmp180_sensor).update();
id(bat).update();
id(wifirssi).update();
adding id(bmp180_sensor).update();
wont’ cause any error, but the D1 mini wont read the sensor.
adding id(frontbalcony2_temperature).update();
will cause an error:
error: 'class esphome::sensor::Sensor' has no member named 'update'
what would be the preferred way for me to manually trigger updates for this sensor/component? I’m trying to optimize my sensor for low power consumption, and run it over batteries. Inspired by this: Optimizing ESP8266/ESPHOME for battery power (and making an ice bath thermometer as well) – Necromancer's notes
thanks!