I am trying to use https://github.com/SwiCago/HeatPump/tree/master/examples/mitsubishi_heatpump_mqtt_esp8266 that was developed for esp2866 on the photon to connect the heat pump to home assistant. While trying to compile I get the following errors
Processing heatpumpcom.ino
Checking library ArduinoJson...
Checking library PubSubClient...
Installing library PubSubClient 2.6.0 to lib/PubSubClient ...
Installing library ArduinoJson 5.11.2 to lib/ArduinoJson ...
Library PubSubClient 2.6.0 installed.
Library ArduinoJson 5.11.2 installed.
make -C ../modules/photon/user-part all
make[1]: Entering directory '/firmware/modules/photon/user-part'
make -C ../../../user
make[2]: Entering directory '/firmware/user'
Building cpp file: src/HeatPump.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.7.0 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../hal/src/photon/include -I../hal/src/photon/wiced/security/BESL/host/WICED/ -I../hal/src/photon/wiced/security/BESL/include -I../hal/src/photon/wiced/security/BESL -I../hal/src/photon/wiced/security/BESL/crypto -I../hal/src/photon/wiced/WWD/include/ -I../hal/src/photon/wiced/platform/include/ -I../hal/src/photon/wiced/platform/GCC/ -I../hal/src/photon/wiced/security/BESL/supplicant/ -I../hal/src/photon/libraries/crypto -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Ilib/ArduinoJson/src -Ilib/PubSubClient/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/HeatPump.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -Wundef -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DBOOTLOADER_SDK_3_3_0_PARTICLE -DPARTICLE_DCT_COMPATIBILITY -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-builtin-realloc -DLOG_INCLUDE_SOURCE_INFO=1 -DPARTICLE_USER_MODULE -DUSER_FIRMWARE_IMAGE_SIZE=0x20000 -DUSER_FIRMWARE_IMAGE_LOCATION=0x80A0000 -DMODULAR_FIRMWARE=1 -DMODULE_VERSION=5 -DMODULE_FUNCTION=5 -DMODULE_INDEX=1 -DMODULE_DEPENDENCY=4,2,207 -DMODULE_DEPENDENCY2=0,0,0 -D_WINSOCK_H -D_GNU_SOURCE -DLOG_MODULE_CATEGORY="\"app\"" -fno-exceptions -fno-rtti -fcheck-new -std=gnu++11 -c -o ../build/target/user/platform-6-msrc/HeatPump.o src/HeatPump.cpp
src/HeatPump.cpp: In function 'bool operator!(const heatpumpSettings&)':
src/HeatPump.cpp:41:20: error: conversion from 'const String' to 'bool' is ambiguous
return !settings.power &&
^
In file included from ../wiring/inc/spark_wiring_stream.h:30:0,
from ../wiring/inc/spark_wiring.h:38,
from ./inc/application.h:40,
from ./inc/Particle.h:5,
from ./inc/Arduino.h:11,
from ./inc/WString.h:1,
from src/HeatPump.h:19,
from src/HeatPump.cpp:16:
../wiring/inc/spark_wiring_string.h:144:2: note: candidate: String::operator String::StringIfHelperType() const
operator StringIfHelperType() const { return buffer ? &String::StringIfHelper : 0; }
^
../wiring/inc/spark_wiring_string.h:102:9: note: candidate: String::operator const char*() const
operator const char*() const { return c_str(); }
^
src/HeatPump.cpp:42:20: error: conversion from 'const String' to 'bool' is ambiguous
!settings.mode &&
^
In file included from ../wiring/inc/spark_wiring_stream.h:30:0,
from ../wiring/inc/spark_wiring.h:38,
from ./inc/application.h:40,
from ./inc/Particle.h:5,
from ./inc/Arduino.h:11,
from ./inc/WString.h:1,
from src/HeatPump.h:19,
from src/HeatPump.cpp:16:
../wiring/inc/spark_wiring_string.h:144:2: note: candidate: String::operator String::StringIfHelperType() const
operator StringIfHelperType() const { return buffer ? &String::StringIfHelper : 0; }
^
../wiring/inc/spark_wiring_string.h:102:9: note: candidate: String::operator const char*() const
operator const char*() const { return c_str(); }
^
src/HeatPump.cpp:44:20: error: conversion from 'const String' to 'bool' is ambiguous
!settings.fan &&
^
In file included from ../wiring/inc/spark_wiring_stream.h:30:0,
from ../wiring/inc/spark_wiring.h:38,
from ./inc/application.h:40,
from ./inc/Particle.h:5,
from ./inc/Arduino.h:11,
from ./inc/WString.h:1,
from src/HeatPump.h:19,
from src/HeatPump.cpp:16:
../wiring/inc/spark_wiring_string.h:144:2: note: candidate: String::operator String::StringIfHelperType() const
operator StringIfHelperType() const { return buffer ? &String::StringIfHelper : 0; }
^
../wiring/inc/spark_wiring_string.h:102:9: note: candidate: String::operator const char*() const
operator const char*() const { return c_str(); }
^
src/HeatPump.cpp:45:20: error: conversion from 'const String' to 'bool' is ambiguous
!settings.vane &&
^
In file included from ../wiring/inc/spark_wiring_stream.h:30:0,
from ../wiring/inc/spark_wiring.h:38,
from ./inc/application.h:40,
from ./inc/Particle.h:5,
from ./inc/Arduino.h:11,
from ./inc/WString.h:1,
from src/HeatPump.h:19,
from src/HeatPump.cpp:16:
../wiring/inc/spark_wiring_string.h:144:2: note: candidate: String::operator String::StringIfHelperType() const
operator StringIfHelperType() const { return buffer ? &String::StringIfHelper : 0; }
^
../wiring/inc/spark_wiring_string.h:102:9: note: candidate: String::operator const char*() const
operator const char*() const { return c_str(); }
^
src/HeatPump.cpp:46:20: error: conversion from 'const String' to 'bool' is ambiguous
!settings.wideVane &&
^
In file included from ../wiring/inc/spark_wiring_stream.h:30:0,
from ../wiring/inc/spark_wiring.h:38,
from ./inc/application.h:40,
from ./inc/Particle.h:5,
from ./inc/Arduino.h:11,
from ./inc/WString.h:1,
from src/HeatPump.h:19,
from src/HeatPump.cpp:16:
../wiring/inc/spark_wiring_string.h:144:2: note: candidate: String::operator String::StringIfHelperType() const
operator StringIfHelperType() const { return buffer ? &String::StringIfHelper : 0; }
^
../wiring/inc/spark_wiring_string.h:102:9: note: candidate: String::operator const char*() const
operator const char*() const { return c_str(); }
^
src/HeatPump.cpp: In member function 'void HeatPump::createInfoPacket(byte*, byte)':
src/HeatPump.cpp:429:68: warning: operation on '((HeatPump*)this)->HeatPump::infoMode' may be undefined [-Wsequence-point]
infoMode = (infoMode == (INFOMODE_LEN - 1)) ? 0 : infoMode += 1;
^
src/HeatPump.cpp: In member function 'int HeatPump::readPacket()':
src/HeatPump.cpp:558:21: warning: unused variable 'receivedRoomTemp' [-Wunused-variable]
float receivedRoomTemp;
^
../build/module.mk:267: recipe for target '../build/target/user/platform-6-msrc/HeatPump.o' failed
make[2]: Leaving directory '/firmware/user'
make[2]: *** [../build/target/user/platform-6-msrc/HeatPump.o] Error 1
../../../build/recurse.mk:11: recipe for target 'user' failed
make[1]: Leaving directory '/firmware/modules/photon/user-part'
make[1]: *** [user] Error 2
../build/recurse.mk:11: recipe for target 'modules/photon/user-part' failed
make: *** [modules/photon/user-part] Error 2
Can anyone point me in the right direction of how to solve this issue or how to get the existing code to work on a photon.
Any help would be great.