esphome-weather-station icon indicating copy to clipboard operation
esphome-weather-station copied to clipboard

publish_state excepts float

Open dansity opened this issue 2 years ago • 3 comments

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 2023-03-28 16_32_08-ESPHome – Home Assistant — Mozilla Firefox

dansity avatar Mar 28 '23 14:03 dansity

Use ``` and not ` for multiline block.

About the problem, I will look at that when I have some time.

hugokernel avatar Sep 12 '23 17:09 hugokernel

Is this still relevant? Have you updated ESPHome?

hugokernel avatar Mar 04 '24 14:03 hugokernel

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.

dansity avatar Mar 04 '24 15:03 dansity