Spent some time trying to figure out how to get weather details to my PineTime watch using only the official Home Assistant app vs having to have another weather app running as well.
There are still things to work out and this isn’t perfect but its probably a good starting point for some.
Below is the service call to tell Gadget Bridge via an Intent what temperature to pass over. This is also passing the humidity and some other info but there are only two things being displayed by the watch using the PineTime watch face ATM temperature and the currentConditionCode.
Things to note. The temperature must be sent in Kelvin. The temperature on the watch is always displayed in Celsius (PineTime bug I think?) the condition code is used to show sun/sun + clouds/just clouds but I don’t have a good way to get that info yet so its just hard coded 803 (partly cloudy for now) the data sent is JSON but it has to be url encoded.
I’m running this automation every 15 minutes and things seems to be working. There is a PineTime bug that can cause the watch to run out of memory and crash if too much weather data is sent so keep that in mind.
Building upon w1ll1am23’s foundation for PineTime weather integration, I made the followng enhancements to create a more comprehensive weather display:
Added support for dynamic min/max temperature tracking using HA Statistics sensors
Implemented weather condition mapping to display appropriate weather icons, converting states to OpenWeatherMap condition codes.
Integrated real wind speed and direction data from the weather forecast
Added 5-day weather forecast support using the weather.get_forecasts action.
Note:
the solution below assumes Celsius temperatures reported from your sensors and converts them to Kelvin.
the mapping from a condition string to a code has been created by an LLM and hasnt been fully tested.