Hi, it seems that shtx3d sensor does not support “on_value”. It says “[on_value] is an invalid option for [sensor.sht3xd]. Please check the indentation.”, How can I send http request after succesful sensor read?
Show your esphome sensor configuration.
i2c:
sda: 4
scl: 5
scan: true
id: bus_a
# Example configuration entry
sensor:
- platform: sht3xd
temperature:
name: "Outdoor Temperature"
humidity:
name: "Outdoor Humidity"
address: 0x44
update_interval: 60s
on_value:
then:
- http_request.post:
url: !lambda |-
return ((std::string) "https://api.thingspeak.com/update?api_key=******************&field1=" + id(Outdoor Temperature).state).c_str() + "&field2=" + id(Outdoor Humidity).state).c_str();
Yeah I think you have on_value in the wrong spot. On which value?
Temperature or humidity?
Try it in these two places:
sensor:
- platform: sht3xd
temperature:
name: "Outdoor Temperature"
on_value:
then: ...
humidity:
name: "Outdoor Humidity"
on_value:
then: ...
address: 0x44
update_interval: 60s
on_value:
then:
1 Like
Will try, thanks!
Now I get duplicate “on_value” error…
You could open an issue here:
Yes - sounds like a bug with the component. I just tested with a BMP280 and it works fine:
sensor:
- platform: bmp280
temperature:
name: "Man Cave Temperature"
oversampling: 16x
on_value:
then:
- logger.log: "Temperature"
pressure:
name: "Man Cave Air Pressure"
on_value:
then:
- logger.log: "Pressure"
address: 0x76
update_interval: 60s