hugokernel / esphome-weather-station

ESPHome version of Elektor weather station v2
MIT License
280 stars 19 forks source link

publish_state excepts float #7

Closed dansity closed 5 months ago

dansity commented 1 year ago

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

hugokernel commented 1 year ago

Use `` and not for multiline block.

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

hugokernel commented 8 months ago

Is this still relevant? Have you updated ESPHome?

dansity commented 8 months ago

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.