Interfaccia WiFi per contatore Geiger GMC-320+ con ESP-01S

Con il contatore GMC-320+ abbiamo già visto vari progetti tra cui Pubblicazione delle misurazioni del contatore Geiger su Adafruit IO (MQTT)Interfacciamento GMC-320+ con Raspberry PI, ora portiamo il tutto in versione standalone, useremo infatti un modulo ESP-01S per renderlo direttamente accessibile via web.

Funzioni implementate

  • NTP Time sync
  • Report su RadMon
  • Report su GmcMap
  • Risparmio energetico di ESP32 se offline
  • Invio dati via MQTT su Adafruit IO

Hardware necessario

Analisi del circuito

Il contatore monta un microcontrollore STM STC15L2K60S2, un chip che funziona a 3.3V proprio come serve a noi, non dovremo nemmeno usare un convertitore di livello, ci basterà saldare i fili sulle linee seriali ed inviare i comandi come da specifica.

Codice sorgente

Il codice è stato scritto su Arduino IDE ed è possibile scaricarlo dalla mia repository GitHub: Arduino_GmcCounter.

Le personalizzazioni avvengono nelle prime righe in cui dovremo specificare i dati della rete WiFi, il server NTP ed i parametri di registrazione di RadMon e GmcMap. Ho anche aggiunto il reporting via MQTT al server di Adafruit IO per poter tracciare su grafico il valore letto.

NOTA: dovremo ricordarci di abbassare a 1200bps il baudrate del convertitore per aumentare l’affidabilità della comunicazione seriale

Riferimento istruzioni: GQ-RFC1201

Scaricamento del codice

 

Per scaricare il codice sulla scheda ESP-01S ci servirà un piccolo trucco: dobbiamo infatti mettere il chip in modalità flash, per fare questo dobbiamo portare a GND il pin GPIO0 durante l’accensione, scaricare il programma e poi riavviare la scheda.

NOTA: il convertitore USB-TTL ci servirà solo la prima volta, il codice è predisposto per l’aggiornamento via OTA e possiamo scaricare il programma direttamente via WiFi

Nota sulla piedinatura del chip ESP8266

I chip ESP8266 sono abbastanza schizzinosi sulla scelta dei pin: alcuni infatti portano a strane combinazioni o blocchi nel caso in cui vengano forzati ad un certo livello logico

Questo ci impedisce di utilizzare le linee seriali nativamente esposte sul PCB, ci servirà quindi armarci di tanta pazienza e raggiungere i GPIO4 e GPIO5 che per nostra sfortuna non sono stati cablati.

Usando un enorme quantità di pazienza e dei piccoli fili di rame smaltato saccheggiati da delle vecchie cuffie sono riuscito a collegarmi ai pin desiderati.

Test

Una volta saldato ed isolato il circuito possiamo provarlo live, la data e ora del contatore vengono automaticamente aggiornati via NTP ed ogni minuto viene letto il valore in CPM ed inviato ai vari servizi.

Post Disclaimer

Creative common license BY-NC_SA

Informazioni Importanti

Note generali: Le informazioni contenute in questo articolo sono di carattere informativo e rispecchiano le opinioni personali del autore. Tutte le guide nel sito vengono proposte "as it is" puramente a scopo didattico. L'utente che accetta di seguirne i passaggi si assume ogni responsabilità in caso di guasto/malfunzionamento o altro problema come conseguenza della modifica.

Link di affiliazione e contenuti promozionali: Nei post di iu2frl.it posso includere collegamenti a rivenditori. Posso ricevere una piccola commissione dal rivenditore se effettui un acquisto dopo aver fatto clic su uno di questi link. I post non sono espressamente sponsorizzati da rivenditori, editori, promotori o produttori, se non diversamente specificato chiaramente e tutte le decisioni editoriali sono prese esclusivamente dagli autori dei singoli articoli.

Contenuti riguardanti regolamenti e/o normative: Eventuali riferimenti a normative non costituiscono valore legale, si tratta di libere interpretazioni ed estratti di circolari corredate da eventuali commenti, si invitano tutti gli utenti a verificare la veridicità di tali informazioni sugli organi ufficiali di riferimento, nessuna colpa o responsabilità può essere data agli autori degli articoli.

Licenza di utilizzo: Tutti i contenuti vengono condivisi con licenza CC BY-NC-SA 4.0: Questa licenza consente ad altri di remixare, adattare e sviluppare i contenuti in modo non commerciale, purché accreditino l'autore originale e concedano in licenza le loro nuove creazioni con gli stessi termini. Per maggiori informazioni visitare il sito Creative Commons.

Important Informations

General notes: The information contained in this article is of an informative nature and reflects the personal opinions of the author. All the guides/tutorial on the website are offered "as it is" for educational purposes only. The user who agrees to follow the steps assumes all responsibility in case of failure/malfunctioning or other problem as a result of the modification.

Affiliate links and promotional products: In some posts of iu2frl.it I can include links to resellers. I can get a small commission from the reseller if you make a purchase after clicking on one of these links. The posts are not expressly sponsored by resellers, publishers, promoters or producers, unless otherwise clearly specified and all editorial decisions are made solely by the authors of the individual articles.

Contents about rules and laws: Some articles may contain portions or whole laws or rules regarding specific areas, these kind of content are meant to be indicative only, no responsability can be given to the authors. Always refer to official sources when looking for rules or laws.

Contents licenses: All the contents are published as CC BY-NC-SA 4.0: This license lets others remix, adapt, and build upon your work non-commercially, as long as they credit you and license their new creations under the identical terms.. For more informations please visit Creative Commons website.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *