I have been trying to understand why the scheduler would not work and found that the scheduler time is not using the correct time zone I have set at thing level even though ArduinoCloud.getLocalTime() reports my local time and scheduler widget shows correct timezone.
In the image below I was able to set the cloud to 1500 (+6 ahead of real local time) even though local time was 900 and it worked as expected. I am at -6 (ignore timezone reported in image as i was testing) and when i checked the utc conversion, it shows GMT as my actual local time as seen in the second image.
I've figure it out where the problems comes from but still trying to figure it out how to fix it.
In TimeServices, the command getlocalTime is wrong, since getTime (Should be UTC time) is already shifted by the time zone offset. The problem is somewhere in the sync functions.
What type of board you're using? I'm using an ESP32