community italiana di domotica personale
 
Controllare un Sonoff Basic R2 tramite un pulsante o un interruttore esterno

Controllare un Sonoff Basic R2 tramite un pulsante o un interruttore esterno

Scopi del progetto:
  • Controllare un interruttore Sonoff Basic R2 tramite l’uso di un interruttore o di un pulsante esterno, anche in deviazione (tramite pulsanti)
  • Livello di difficoltà: medio
  • Costo: n.a.
Concetti affrontati:
  • Modifica a dispositivo elettrico
Componenti software utilizzate:
Dispositivi fisici utilizzati:
Progetto maggiormente indicato per:

Tutti gli ambienti

NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata e realizzata SOLO da personale qualificato;
  • qualsiasi modifica non prevista attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno infatti puro scopo didattico) e fa decadere garanzia, omologazioni e certificazioni di qualità; dei dispositivi interessati;
  • tutte le tecniche descritte si intendono applicate a software e firmware aggiornati alle ultime versioni disponibili;
  • gli articoli di inDomus sono totalmente indipendenti e non sponsorizzati. Se mai questo cambiasse, verrà segnalato chiaramente sulle pagine oggetto di sponsorizzazione;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In caso di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat;
  • se hai bisogno di orientarti, c'è la mappa.
Revisione guida: 1.0

ATTENZIONE: la presente guida applicata al modello R1 è disponibile qui.

Abstract

Gli interruttori intelligenti della famiglia ITEAD Sonoff Smart Home sono componenti domotiche estremamente versatili, molto economiche e funzionali, ma quando si tratta di integrarle negli impianti preesistenti possono, talvolta, rappresentare un problema, specialmente in presenza di uno o più deviatori.

È il caso della trasformazione di un punto luce (o di un’utenza più generica) controllata tramite un interruttore tradizionale a muro in un elemento domotizzato: se ne vuole mantenere la funzionalità manuale, meccanica, integrando quella domotica.

Interruttori-tradizionali-a-muro

Esistono più alternative.

LA PRIMA

La prima alternativa – quella più semplice – è quella di sostituire l’intero elemento a muro con un interruttore touch domotico, ad esempio l’ITEAD Sonoff T1, il quale fornirà sia la funzionalità “meccanica” (a contatto), sia quella domotica. Nello specifico dell’esempio, trattandosi di un Sonoff sarà riprogrammabile col firmware Tasmota, quindi configurabile presso i nostri amati HUB personali e quindi con la nostra domotica personale.

LA SECONDA

Una seconda alternativa è quella di affiancare all’interruttore meccanico un elemento domotico atto a “domotizzarlo”. In tal caso la scelta di questo elemento dovrà essere effettuata con criterio, sopratutto in caso si utilizzino per la propria domotica personale degli HUB personali (la compatibilità verso di essi dovrà essere garantita).

LA TERZA

Una terza alternativa è quella di collegare direttamente un pulsante sull’elettronica del Sonoff Basic.
Il Sonoff Basic presenta già sulla propria board un pulsante per l’attivazione e la disattivazione manuale del relè. La pressione di tale pulsante scaturisce nell’apertura o chiusura del relè in base allo stato pre-esistente. In sostanza chiude se prima era aperto, e apre se prima era chiuso: trattasi di funzione chiamata, in inglese, TOGGLE.

Volendo utilizzare il Sonoff senza alcuna modifica software, l’unico modo di comandarne “esternamente” il funzionamento è quello di collegare in parallelo i due contatti di un pulsante tradizionale (meccanico, a muro) ai due contatti presenti sul pulsante presente sulla board del Sonoff Basic. Questo praticamente sostituirà il pulsante che sta a bordo dell’attuatore con uno esterno.

LA QUARTA – OGGETTO DI QUESTA GUIDA

La quarta strada, quella che proponiamo in questa guida, è quella di modificare il firmware del Sonoff Basic al fine di (tra le tante altre cose) abilitare e poter utilizzare le piazzole (una, nello specifico, che “di fabbrica” non è abilitata) presenti sulla board e potervi così attestare uno o più pulsanti, oppure un interruttore meccanico classico, grazie alle funzionalità garantite dal firmware.
Niente paura: spieghiamo tutto nel paragrafo a seguire.


Prima di proseguire oltre, ricordiamo nuovamente che:

NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata e realizzata SOLO da personale qualificato;
  • qualsiasi modifica non prevista attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno infatti puro scopo didattico) e fa decadere garanzia, omologazioni e certificazioni di qualità; dei dispositivi interessati;
  • tutte le tecniche descritte si intendono applicate a software e firmware aggiornati alle ultime versioni disponibili;
  • gli articoli di inDomus sono totalmente indipendenti e non sponsorizzati. Se mai questo cambiasse, verrà segnalato chiaramente sulle pagine oggetto di sponsorizzazione;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In caso di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat;
  • se hai bisogno di orientarti, c'è la mappa.

Descrizione della modifica

Perseguiamo quindi con questa guida sulla quarta strada.

Il Sonoff Basic R2 (ma anche gli altri componenti della stessa linea prodotto) presenta sulla board una serie di contatti. Quelli che ci interessano sono il GND e l’RX (il quale corrisponde al pin logico GPIO3).

Sonoff-Basic-RF-R2-POWER-V1.0-Retro - Contatti RX e GRN
i contatti visti dal retro dell’unità.

Solitamente GND, TX, RX (GPIO3) e 3.3V (VCC) vengono utilizzate per la riprogrammazione del firmware; ecco perché per questo progetto consiglieremo di saldare dei pin sui quattro contatti: così da poter sia riprogrammare il firmware, sia controllare – successivamente – il comportamento dell’unità utilizzato GPIO3 (RX) e GND.

Per far sì che la coppia di contatti GPIO3 e GND possa essere utilizzata allo scopo, è necessaria l’adozione di un firmware alternativo, nello specifico il Tasmota. La guida dà per scontata la presenza di tale firmware.

In presenza di tale firmware, quando il contatto GPIO3 viene brevemente cortocircuitato con GND, l’azione causa l’apertura o chiusura del relè in base allo stato pre-esistente. In sostanza chiude se prima era aperto, e apre se prima era chiuso: il TOGGLE di cui sopra che solitamente si effettua utilizzando il pulsate presente, di fabbrica, sulla board.

N.b.  C’è un ma.
Abbiamo appena spiegato che il Sonoff Basic R2 (dotato di firmware Tasmota) cambia di stato (aperto/chiuso) quando si cortocircuita il GPIO3 e la GRD. Per cambiare nuovamente stato, è necessario rimuovere il cortocircuito e applicarlo nuovamente.Questo è il comportamento offerto da un pulsante (o bottone), NON da un interruttore (meccanico, da muro) che presenta due stati meccanici (chiuso e aperto) i quali si protraggono nel tempo (fino al successivo cambio di stato meccanico).In sostanza, con la modifica allo schema elettrico che stiamo proponendo, per comandare manualmente il TOGGLE di stato sarebbe necessario impostare l’interruttore (meccanico, da muro) nella posizione di spento/acceso/spento.Tale fastidiosa situazione è facilmente risolvibile, come segue.
Nota per smanettoni.
A differenza della board modello R1, sulla R2 non esiste il “tradizionale” pini GPIO14. È invece presente un nuovo pin chiamato IO2: se cortocircuitato con GND, l’azione attiva il relè. Si tratta in pratica dello stesso contatto saldato sul pulsante presente a bordo. Va da sé che sia possibile utilizzare la coppia IO2 – GND per attestarvi sopra un pulsante estero senza il bisogno, quindi, di aggiornare il firmware.Abbiamo realizzato la presente guida indicando il solo uso della coppia GPIO3 – GND per l’uso sia con pulsante che con interruttore (in associazione al firmware Tasmota) per pura semplicità, ma è ovvio che se si vuole installare solo un pulsante esterno la strada può anche solo essere quella di usare IO2 – GND senza alcuna modifica firmware.
SOLUZIONe

Sarà possibile lasciare invariata la presenza dell’interruttore (meccanico, da muro), il quale agirà (ad ogni suo cambio di stato, indipendentemente che si tratti della chiusura o dell’apertura del contatto tra GPIO3 e GRD) come TOGGLE grazie all’uso del comando Tasmota “SWITCHMODE” debitamente configurato.

Ovviamente non esisterà una posizione meccanica dell’interruttore atta ad indicare lo stato di funzionamento del Sonoff (relè chiuso o aperto). Ogni attuazione dell’interruttore causerà un cambio di stato del relè, fine.

Dotarsi dei contatti

La parte più complessa, se non si ha dimestichezza con le saldature, è proprio questa: dotarsi di contatti tramite i quali collegare il pulsante/interruttore a GPIO3 e GND.

Innanzitutto è necessario dotarsi di connettori pin maschi e dei pin femmine con filo.

PIN maschi
dettaglio dei PIN maschi.

Saldare questi pin (4) sulla board in corrispondenza delle piazzole, avendo cura di posizionare sulla board il segmento più corto. Una volta effettuata la saldatura, avremo dei contatti sui quali posizionarci per la modifica allo schema elettrico (useremo i pin femmina per collegarci ai contatti del pulsante o dell’interruttore).

Uso di un pulsante

Questa strada prevede l’uso di un Sonoff Basic e della sostituzione dell’interruttore pre-esistente con un pulsante (nel caso illustrato di tipo “Normalmente Aperto“).

Vediamo lo schema elettrico iniziale:

Schema interruttore-carico

E come diventa:

 

Schema Pulsante - Sonoff. - GPIO3

 

Una volta attuata tale modifica, il lavoro è completato.

Per far sì che la modifica funzioni è però necessario attuare:

  • su Sonoff Basic con firmware originale: nulla, funziona da sé;
  • su Sonoff Basic riprogrammato con firmware Tasmota: applicare il comando “SWITCHMODE“.

Nel secondo caso, il comando è il seguente:

cmnd/Sonoff/SwitchMode 3

il quale interpreterà la breve chiusura del contatto GPIO3-GRD (attuata tramite pulsante) come “cambiamento di stato rispetto all’attuale“.

In caso si utilizzi un pulsante “Normalmente Chiuso“, il comando sarà:

cmnd/Sonoff/SwitchMode 4

Ciò fatto premendo/rilasciando il pulsante verrà attuato un TOGGLE dello stato del relè del Sonoff (spegne se acceso, accende se spento); contemporaneamente, presso la domotica sarà possibile attuare lo stesso comando. Ovviamente qualora il Sonoff venga controllato manualmente, il nuovo stato verrà correttamente rilevato all’interno della domotica praticamente all’istante.

Nel seguente video si può vedere il comportamento del circuito così concepito:

N.b. L’uso di uno o più pulsanti come “deviatori” è possibile, ma solo:

  • utilizzando appunto pulsanti, e non interruttori;
  • collegando i contatti di tutti codesti pulsanti sui contatti GPIO3 e GROUND del Sonoff Basic.

Così facendo, la pressione di uno qualsiasi dei pulsanti collegati al Sonoff ne controllerà il comportamento.

Uso di un interruttore

Se si decide, invece, di lasciare in sede l’interruttore pre-esistente, allora lo schema sarà il seguente:

Schema - Interruttore - Sonoff - GPIO3

 

Come detto, per un corretto funzionamento del circuito e dell’attivazione manuale sarà necessario, in primis, la presenza del firmware Tasmota, questo perché, come spiegato ampiamente, solo in presenza di tale firmware sarà possibile attuare una configurazione che permetta di interpretare ogni cambio di stato (qualsiasi!) dell’interruttore come TOGGLE.

Effettuato l’aggiornamento del firmware e cablato il circuito come sopra, sarà necessario impostare da console Tasmota il seguente comando (si assume che il dispositivo abbia nome “Sonoff“):

cmnd/Sonoff/SwitchMode 1

il quale predisporrà la chiusura o apertura del corto GPIO3-GRD come “cambiamento di stato rispetto all’attuale“. Per il resto (controllo domotico, rilevazione di cambio di stato in domotica ecc.) varranno le stesse considerazione fatte nell’esempio relativo al pulsante.

In ultimo, è necessario indicare al firmware Tasmota quale sia l’uso del pin GPIO3, nel nostro caso “interruttore”. Per far ciò, recarsi alla voce Configurazione/Configurazione Modulo (Configuration / Module Configuration) dell’interfaccia web alla voce “GPIO3 Sensor”, selezionare la voce “01 Switch“. Cliccare infine su “SAVE“.

Ora l’attuatore agirà come previsto.

Integrare un interruttore Tasmota via MQTT alla configurazione Home Assistant


Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa.