Closed df2qy closed 4 years ago
I suspect this is depended on the include files used. Without the cast (void ) would be 'more correct' code. This would prevent an incompatible function to be used (you can cast any function to a (void ) even when the parameters do not match).
I tried this change on my system and it fails because it does an explicit cast to (void *) in the include files. But I am running an older version of PlatformIO. I am running: _CONFIGURATION: https://docs.platformio.org/page/boards/espressif8266/d1_mini.html PLATFORM: Espressif 8266 2.2.3 > WeMos D1 R2 and mini HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash PACKAGES: toolchain-xtensa 2.40802.190218 (4.8.2), tool-esptool 1.413.0 (4.13), tool-esptoolpy 1.20600.0 (2.6.0), framework-arduinoespressif8266 2.20502.0 (2.5.2)_
Could you provide the version information of your system ?
To answer your question: You fix is ok.
I will investigate if there is an 'universal' fix.
Thanks for reporting !
I fixed that problem in the EMS-ESP project a while ago - just copy over the updated TelnetSpy.* files.
@proddy thanks for the tip ! I have merged the 'TelnetSpy' from the EMS-ESP project, this fixes the compiler problems. @df2qy could you confirm this fixes your problem?
Closing this issue, the software change has solved the issue.
Just tried to compile IRT-EMS-ESP for an ESP-01 board. I get the following error two times:
src/TelnetSpy.cpp: In member function 'void TelnetSpy::setDebugOutput(bool)': src/TelnetSpy.cpp:450:59: error: invalid conversion from 'void' to 'fp_putc_t {aka void ()(char)}' [-fpermissive] os_install_putc1((void *)TelnetSpy_ignore_putc); // Ignore system printing
After removing "(void *)" the code compiles without errors and I can access the web-interface on the ESP. I have not yet tested if I also get any communication to iRT-bus. Can anyone confirm this issue and that my fix is OK?
Regards, df2qy