Ottenere dati da FineOffSet HP1000/WH2600
Introduzione
Fine Offset ha creato delle stazioni meteorologiche wireless, con i dati riportati su una console, da console a Internet o da bridge a Internet. Queste stazioni sono vendute da Ambient, Aercus, Froggit e altri.
Queste stazioni caricano direttamente su Weather Underground. Alcune versioni del firmware includono un'opzione per impostare la destinazione del caricamento in modo da poterlo inviare direttamente al proprio sito web o servizio web. I caricamenti sono guidati da un bridge o da una console, a seconda della configurazione. Il bridge riceve i dati dai sensori, quindi li carica tramite una connessione Ethernet cablata. La console riceve i dati dai sensori, quindi li carica tramite una connessione wireless (WiFi).
I modelli Fine Offset includono:
- HP1000 - Upload tramite console WiFi;
- HP1003 - Display della console, nessun caricamento;
- WH2600 - Upload tramite bridge.
I modelli Ambient includono:
- WS0800 - Upload via bridge (due sensori T/H, no vento/pioggia);
- WS0900 - Upload via bridge (due T/H, vento, pioggia, no console);
- WS1400 - Upload tramite bridge (come WH2600);
- WS1200 - Upload tramite bridge (WH2600 con console);
- WS1001 - Upload tramite console (come HP1000).
I modelli Aercus includono:
- WeatherSleuth - Upload tramite bridge (come WH2600);
- WeatherRanger - Upload tramite console WiFi (come HP1000).
La stazione è venduta anche come Maplin N23DQ. È venduta in Australia come XC0442.
Ambient utilizza il marchio ObserverIP per il bridge e il marchio Observer per le console WiFi e non WiFi.
Questa è una descrizione di come ottenere i dati direttamente dalla stazione meteorologica, invece di fare affidamento solo sul caricamento su Weather Underground.
Configurare la console per inviare dati a Weewx
Se la console ha un'interfaccia web, usala semplicemente per cambiare la destinazione. Immettere il nome host o l'indirizzo IP del computer che esegue il driver weewx-interceptor. I dati verranno inviati direttamente a Weewx.
Se la console non dispone di un'interfaccia web, modificare il file server.ini nella console. Rimuovere la scheda SD, modificare server.ini, quindi inserire la scheda SD. Immettere il nome host o l'indirizzo IP del computer che esegue il driver weewx-interceptor. I dati verranno inviati direttamente a Weewx.
Configurare il bridge per inviare dati a Weewx
Potrebbe essere possibile il telnet al bridge. In tal caso, utilizzare setdsthn host.example.com seguito da saveconfig dove host.example.com è il computer su cui è in esecuzione il driver weewx-interceptor. I dati verranno inviati direttamente a Weewx.
telnet 192.168.0.6 Trying 192.168.0.6... Connected to 192.168.0.6. Escape character is '^]'. username: admin password: Successful login through telnet telnet> setdsthn rtupdate.wunderground.com Ok telnet> saveconfig Saving Configuration to FLASH Ok telnet> reboot Connection closed by foreign host.
Se non è possibile configurare la console o il bridge...
Se la console o il bridge non possono essere configurati, le cose si complicano un po'. Puoi acquisire il traffico utilizzando uno di questi approcci:
• Dirotta il DNS. Crea una voce DNS locale sul tuo router in modo che quando la console o il bridge tenta di contattare Weather Underground, ottenga l'indirizzo IP del computer che esegue Weewx.
• Proxy HTTP. Installa un proxy HTTP in modo che qualsiasi traffico HTTP in uscita dalla tua rete possa essere intercettato. Crea una regola proxy per catturare ogni pacchetto inviato dalla console o dal bridge e reindirizzare quei pacchetti al computer che esegue Weewx.
• Catturare i pacchetti. Esegui tcpdump, ngrep o un'utilità simile per acquisire tutto il traffico dalla console o dal bridge e reindirizzarlo al computer che esegue Weewx.
• Istruzioni dettagliate per DNS, Proxy e Packet Capture sono incluse nel file readme di weewx-interceptor.
L'approccio di scraping può essere instabile. Secondo Pat O'Brien,
Consiglio vivamente di non pubblicizzare il metodo di scraping. È noto che causa problemi con l'unità ObserverIP. L'ObserverIP (scatola nera con antenna) è un'unità economica che riesce a malapena a sopravvivere a un tempo di attività di 30 giorni, usando lo screen scraping ogni 15 secondi.
Riferimenti
• dkm ha creato il primo driver Weewx per queste stazioni (https://github.com/dkmcode/weewx-observerip). Quel driver ha due modalità: diretta (screen scraping) e indiretta (acquisizione tramite php). In modalità diretta, il driver prende la pagina web dalla stazione, quindi la analizza per ottenere i dati meteorologici. In modalità indiretta, la stazione deve essere configurata per inviare i dati al computer che esegue Weewx, uno script PHP cattura i dati nel file, quindi il driver legge i dati dal file.
• mwall ha apportato piccole modifiche al driver dkm per gestire diverse versioni del firmware (https://github.com/matthewwall/weewx-observerip).
• Pat O'Brien ha creato un driver per lo screen scraping, quindi un driver basato sul socket. Le sue esperienze sono documentate su http://obrienlabs.net/redirecting-weather-station-data-from-observerip/ e il codice per il suo driver "SocketLogger" è su https://github.com/poblabs/weewx-socketlogger
• mwall ha creato il driver weewx-interceptor, che ha due modalità: listen o sniff. In modalità di ascolto, il driver accetta connessioni dirette dal bridge o dalla console della stazione meteorologica. In modalità sniff, il driver cattura il traffico mentre la stazione lo invia a Weather Underground. (https://github.com/matthewwall/weewx-interceptor)
• dolfs ha fornito molte informazioni utili sulle varie versioni del firmware su http://www.wxforum.net/index.php?topic=31805