Here’s an example of how to add London, London using OpenWeatherMap’s name and New York to the config.yaml file. These locations would be selectable via the URL, like this:
http://{URL}?weather=london or http://{URL}?weather=new-york.
weather:
rotation_interval: 60# in seconds (10 is the minimum).
You can use any weather data provider by setting custom_weather_url on a weather location. The provider’s response must be JSON, and it must match the structure described below.
You don’t need to include every field, anything not listed is simply ignored, and anything listed but missing just means that part of the display won’t show anything useful.
Fetched into the Forecast struct — same custom URL is called again, but decoded differently:
Field
JSON key
Type
Notes
List
list
array of Weather objects (see above)
Each entry should represent one forecast interval and use the exact same field shape as the current-weather object
Requirements for list items to produce a useful forecast:
dt — required, unix timestamp for the interval. Used to bucket items into calendar days (in the location’s timezone) and to compute the rolling next-24h high/low.
main.temp_max / main.temp_min — required for daily highs and the next-24h range.
weather[0].id — used to pick the icon shown for each summarized day (most frequent icon per day wins). Falls back to 800 if absent.
Everything else in a list item follows the same field table as the top-level current-weather object above, but is unused by the forecast summary logic.
Only the first 3 upcoming days (excluding today) are shown, and only the next 24 hours of items are used for the high/low range.