esphome-weather-station
esphome-weather-station copied to clipboard
publish_state excepts float
Hi,
When trying to flash it the Beaufort wind scale produces error as publish_state excepts float instead of char. It might be something that has changed with updates over time.
/config/esphome/weatherstation.yaml: In lambda function:
/config/esphome/weatherstation.yaml:77:40: error: cannot convert 'const char [2]' to 'float'
77 | id(wind_scale_code).publish_state("0");
| ^~~
| |
| const char [2]
In file included from src/esphome/core/controller.h:17,
from src/esphome/components/api/api_server.h:4,
from src/esphome/components/api/api_connection.h:6,
from src/esphome.h:3,
from src/main.cpp:3:
src/esphome/components/sensor/sensor.h:126:28: note: initializing argument 1 of 'void esphome::sensor::Sensor::publish_state(float)'
126 | void publish_state(float state);
| ~~~~~~^~~~~
github messed up the indentation, attached a screenshot for clarity

Use ``` and not ` for multiline block.
About the problem, I will look at that when I have some time.
Is this still relevant? Have you updated ESPHome?
Hi, for me it is not relevant in the sense that I removed the Beaufort scale and been using the rest of the script happily. So I'm not sure if it compiles with new ESPhome versions. If it does feel free to close the issue.