
OpenWeather è un fornitore di dati meteorologici che offre informazioni meteo globali tramite REST API. Il template TapHome si connette all’API gratuita OpenWeather v2.5 tramite HTTPS e legge le condizioni meteorologiche attuali, una previsione a 3 ore e una previsione a 24 ore per una posizione configurata.
Il template effettua due chiamate API ogni 5 minuti — una per il meteo attuale e una per la previsione a 5 giorni/3 ore. Fornisce 18 dispositivi in sola lettura che coprono temperatura dell’aria, temperatura percepita, umidità, pressione atmosferica, visibilità, velocità del vento e condizioni meteorologiche. Tutte le temperature sono in Celsius (unità metriche) e non è richiesto alcun abbonamento a pagamento.
Configurazione
Ottenere la chiave API
- Registra un account gratuito su openweathermap.org — non è richiesta carta di credito
- Dopo la registrazione, la chiave API (APPID) viene inviata tramite e-mail di conferma
- La chiave è disponibile anche nella pagina account sotto la scheda API key
- Le nuove chiavi si attivano automaticamente, in genere da 10 minuti a 2 ore
Il piano gratuito consente 60 chiamate al minuto e 1.000.000 di chiamate al mese. Il template TapHome effettua circa 576 chiamate al giorno (2 chiamate ogni 5 minuti), rientrando ampiamente nei limiti gratuiti.
Parametri di importazione
Durante l’importazione del template in TapHome, sono richiesti tre parametri:
| Parametro | Descrizione | Esempio |
|---|---|---|
latitude | Latitudine della posizione in gradi decimali | 48.1778 |
longitude | Longitudine della posizione in gradi decimali | 17.1426 |
appid | Chiave API OpenWeather dal dashboard dell’account | a1b2c3d4e5f6... |
Per trovare le coordinate di una posizione, fai clic con il tasto destro su Google Maps e seleziona le coordinate dal menu contestuale.
Endpoint API
Il modulo si connette ad api.openweathermap.org tramite HTTPS (porta 443) e chiama due endpoint per ciclo di polling:
| |
La prima richiesta restituisce le condizioni meteorologiche attuali. La seconda restituisce un elenco di previsioni dove list[0] è il prossimo slot a 3 ore e list[8] è lo slot a +24 ore (8 x 3h = 24h).
Funzionalità dei dispositivi
Il template espone 18 dispositivi in sola lettura organizzati in tre gruppi: meteo attuale (6 dispositivi), previsione a 3 ore (6 dispositivi) e previsione a 24 ore (6 dispositivi). Ogni gruppo fornisce le stesse sei misurazioni.
Temperatura e umidità
- Current Air Temperature — temperatura attuale in Celsius con umidità come valore secondario (l’API restituisce 0–100%, convertito nel rapporto 0–1 per TapHome)
- Current Feels Like Temperature — temperatura percepita che tiene conto del wind chill e dell’umidità. La funzionalità umidità è disabilitata (restituisce NaN) — viene utilizzato solo il valore della temperatura
- Forecast (+3h) Air Temperature — temperatura e umidità per il prossimo slot di previsione a 3 ore. Include un attributo di servizio Forecast Date che mostra il timestamp del punto dati
- Forecast (+3h) Feels Like Temperature — temperatura percepita per il prossimo slot a 3 ore
- Forecast (+24h) Air Temperature — temperatura e umidità per lo slot di previsione a +24h. Include un attributo di servizio Forecast Date
- Forecast (+24h) Feels Like Temperature — temperatura percepita per lo slot a +24h
Pressione atmosferica e visibilità
- Current Air Pressure — pressione atmosferica in hPa
- Current Visibility — distanza di visibilità in metri (massimo 10.000 m)
- Forecast (+3h) Air Pressure — pressione atmosferica per il prossimo slot a 3 ore
- Forecast (+3h) Visibility — visibilità per la previsione a 3 ore
- Forecast (+24h) Air Pressure — pressione atmosferica per lo slot a +24h
- Forecast (+24h) Visibility — visibilità per la previsione a 24 ore
I dispositivi Forecast (+3h) Visibility e Forecast (+24h) Visibility hanno gli indici dei dati invertiti nella versione attuale del template. Il dispositivo +3h legge da list[8] (la posizione 24h) e il dispositivo +24h legge da list[0] (la posizione 3h). I valori sono invertiti fino alla correzione in un futuro aggiornamento del template.
Velocità del vento
- Current Wind Speed — velocità del vento in m/s
- Forecast (+3h) Wind Speed — velocità del vento per il prossimo slot a 3 ore
- Forecast (+24h) Wind Speed — velocità del vento per lo slot a +24h
Condizioni meteorologiche
Tre dispositivi selettore multi-valore visualizzano la categoria delle condizioni meteorologiche:
- Current Weather — condizione meteorologica attuale
- Forecast (+3h) Weather — condizione meteorologica per il prossimo slot a 3 ore
- Forecast (+24h) Weather — condizione meteorologica per lo slot a +24h
Ogni dispositivo meteo mappa il campo API weather[0].main su una delle 7 categorie:
| Valore selettore | Etichetta | Gruppi meteo API |
|---|---|---|
| 0 | Clear | Clear |
| 1 | Clouds | Clouds |
| 2 | Rain | Rain |
| 3 | Drizzle | Drizzle |
| 4 | Thunderstorm | Thunderstorm |
| 5 | Snow | Snow |
| 6 | Atmosphere | Mist, Smoke, Haze, Dust, Fog, Sand, Ash, Squall, Tornado |
Se l’API restituisce un gruppo meteo non riconosciuto, il selettore assume il valore predefinito 0 (Clear). I valori 7, 8 e 9 del selettore sono definiti nella configurazione del template ma non hanno mappatura nella logica dello script — sono segnaposto non utilizzati.
Funzionalità aggiuntive
L’API OpenWeather fornisce anche direzione del vento, raffiche di vento, percentuale di nuvolosità, volume di pioggia e neve (1h) e orari di alba/tramonto. L’umidità è esposta solo come valore secondario sui sensori di temperatura, non come dispositivo autonomo. Queste funzionalità possono essere aggiunte in un futuro aggiornamento del template.
Risoluzione dei problemi
Tutti i dispositivi mostrano NaN o nessun dato
- Verifica che il TapHome Core abbia accesso a internet — il template richiede connettività HTTPS in uscita verso
api.openweathermap.org - Controlla che la chiave API sia valida — apri
https://api.openweathermap.org/data/2.5/weather?lat=48.18&lon=17.14&appid=YOUR_KEY&units=metricnel browser per verificare - Le nuove chiavi API possono richiedere fino a 2 ore per l’attivazione dopo la registrazione
- Conferma che i valori di latitudine e longitudine siano coordinate decimali corrette (non gradi/minuti/secondi)
I dati di previsione sembrano errati
L’API di previsione restituisce dati a intervalli di 3 ore. I dispositivi +3h leggono il primo slot di previsione (list[0]), che è il prossimo blocco a 3 ore disponibile — non esattamente 3 ore da adesso. Analogamente, i dispositivi +24h leggono list[8] (il 9° slot), che rappresenta circa 24 ore avanti.
Nota l’inversione degli indici di visibilità descritta nell’avviso sopra — se i valori di visibilità +3h e +24h sembrano invertiti, si tratta del bug noto del template.
Errore di battitura nel nome del dispositivo
Il dispositivo n. 17 nel template si chiama “Forecast (+24h)Weather” (manca lo spazio prima di “Weather”). Si tratta di un problema estetico nel XML del template che non influisce sulla funzionalità. Il dispositivo viene visualizzato correttamente nella tabella dispositivi TapHome utilizzando il suo nome arricchito.
