njanik / hayward-pool-heater-mqtt

A sketch to control an Hayward pool heater via MQTT
MIT License
13 stars 9 forks source link

Compilation error #17

Open mjackmtl opened 3 months ago

mjackmtl commented 3 months ago

Hi there,

I have similar issue as Nicolas during the compilation of the code: E:\Arduino\hayward-poolheater-mqtt\hayward-poolheater-mqtt.ino:5:23: warning: extra tokens at end of #include directive 5 | #include "my_config.h"; | ^ E:\Arduino\hayward-poolheater-mqtt\hayward-poolheater-mqtt.ino: In function 'char modeToString(byte)': E:\Arduino\hayward-poolheater-mqtt\hayward-poolheater-mqtt.ino:65:16: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] 65 | return "HEAT"; | ^~ E:\Arduino\hayward-poolheater-mqtt\hayward-poolheater-mqtt.ino:69:16: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] 69 | return "COOL"; | ^~ E:\Arduino\hayward-poolheater-mqtt\hayward-poolheater-mqtt.ino:73:16: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] 73 | return "AUTO"; | ^~ E:\Arduino\hayward-poolheater-mqtt\hayward-poolheater-mqtt.ino:75:12: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] 75 | return "unknown_mode"; | ^~~~~~ E:\Arduino\hayward-poolheater-mqtt\hayward-poolheater-mqtt.ino: In function 'boolean mqttMsgReceivedCallBack(char, byte*, unsigned int)': E:\Arduino\hayward-poolheater-mqtt\hayward-poolheater-mqtt.ino:141:23: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 141 | for (int i = 0; i < length; i++) | ^~ E:\Arduino\hayward-poolheater-mqtt\hayward-poolheater-mqtt.ino:237:21: error: control reaches end of non-void function [-Werror=return-type] 237 | isProcessingCmd = false; | ~~~~^~~ cc1plus.exe: some warnings being treated as errors

exit status 1

Compilation error: control reaches end of non-void function [-Werror=return-type]

I understand I need to install the Arduino Core. But I think I am lost with that part. Is this the ESP8266 package from the board manager menu that I need to install? Or any other Library/package needed? Also, is there any specific version to use?

I am also newbie with this and I am trying to learn!

Regards, MJ

alexalex89 commented 1 month ago

+1, would be interested in a solution as well. I read https://github.com/njanik/hayward-pool-heater-mqtt/issues/15 but that doesn't solve it for me. I'm using a Wemos D1 mini. Adding a return true; solves it for me, but I'm afraid that is not correct. However the error message seems valid to me, it's a non-void function without return value. @njanik

ahouin commented 3 days ago

I'm having the same issue. I'm getting lost at Arduino Core. I'm using a NodeMCU ESP12e.

I tried with Arduino IDE 1.8.19 and 2.3.2