Come trasformare in SMART una Centrale d’Allarme Filare e usarla in Home Assistant

HassioHelp

Come trasformare in SMART una Centrale d’Allarme Filare e usarla in Home Assistant

Oggi il nostro utente Davide ‘zUpm4n’ Granata ci presenta il suo progetto che coinsiste nella modifica dell’Allarme esistente filare per renderlo SMART e avere il pieno controllo in remoto, ovviamente integrarlo anche in Home Assistant.

NOTE E DISCLAIMER

qualsiasi modifica all’impianto elettrico dev’essere effettuata da personale qualificato
qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo 
qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere la garanzia (la guida ha puro scopo didattico).

In questa guida vedremo come è possibile recuperare un allarme filare di casa trasformandolo in SMART per poterlo poi utilizzare tramite homeassistant.

I componenti necessari per realizzare il progetto sono i seguenti:

Nodemcu nr.2 pz , o in alternativa potete usare dei Wemos D1 Mini

Relé 12v

Relè 5v

Alimentatori 12v-5v microusb

Cavetti vari per collegare i nodemcu alla centrale

Un tester multimetro

Prima di procedere con la configurazione dei Nodemcu è necessario armarsi di una buona dose di pazienza; con l’aiuto del tester,e magari del manuale d’uso (meglio ancora quello di installazione), è necessario capire come funziona la vostra centrale.

Nota: Consiglio di leggere anche i sensori/zone sia nello stato di “riposo” che in quello di “allarme”.

Dopo diverse misurazioni mi sono ritrovato nella seguente situazione:

⦁ tutti i sensori (pir/motion, contatto finestra) sono come contatto pulito normalmente chiuso nel momento in cui collegati alla centrale.
⦁ la sirena è collegata ad un 12v a mancare in caso di allarme, stesso discorso per lo stato della centrale (nel mio caso ho utilizzato un pin usato per attivare il combinatore telefonico).
⦁ un pin key/gnd che permette l’inserimento della centrale da remoto. Per attivarla è necessario metterlo in modalità NA, viceversa chiudendolo la centrale viene disabilitata.

Molte centrali dovrebbero funzionare con un sistema “push” ovvero dando un impulso si possono attivare e disattivare. (in questo caso consiglio di studiare il comando PulseTime di Tasmota).

Una volta capito come funziona la centrale potete procedere con la configurazione di Tasmota. Per installare Tasmota potete utilizzare una delle tante guide che è possibile trovare in rete.
Io di solito utilizzo Atom per OSX con un programmatore USBtoTTL.

Nota: Con i Nodemcu non è possibile utilizzare tutti i pin per leggere lo stato dei sensori, alcuni al boot devono necessariamente essere impostati in una determinata condizione, il d3 di solito è usato per la modalità flash. I pin che ho utilizzato sono RX, D1, D2, D5, D6, D7. Credo si possa utilizzare anche il D8 ma è da verificare opportunamente.

Una volta installato il firmware Tasmota procediamo alla configurazione.
Accediamo alla pagina web del nostro NodemCU e impostiamo i parametri del server MQTT; inserite l’ip del vostro broker Mqtt, user, password. Impostate poi il client e il topic come “allarme1”. E infine salviamo.

Passiamo poi nel menu Configuration, Configuration Module e impostiamo il Nodemcu in modalità Generic (18) e salviamo. Dopo il riavvio torniamo nello stesso menu e impostiamo come nella foto seguente:

Io ho numerato gli switch con lo stesso numero del PIN (D1 – Switch1, D5 -Switch5, ecc) ma potete utilizzare il numero switch corrispondente come preferite, dovrete naturalmente a cascata modificare i parametri che vedremo successivamente.
Salviamo e passiamo alla configurazione nel menu Console.

Aprite la Console di tasmota e impostiamo gli switch in modalità 1 (un commando per volta):

Nota: I comandi vanno dati uno alla volta.

In questa modalità tasmota leggerà il pin collegato al sensore relativo indicando 1 in caso di ON e 0 in caso di OFF.

A questo punto possiamo creare una RULE per pubblicare sul nostro broker il cambio di stato dei singoli switch digitando il seguente comando:

Quindi verifichiamo la corretta sintassi se acquisita da tasmota digitando:

Per abilitarla digitate:

Per verificare che tutto funzioni correttamente potete ponticellare singolarmente i pin D1,D2,D5,D6,D7 e RX con il pin GND del nodemcu e verificare in console che lo switch passi da 0 a 1 e che venga pubblicato lo stato tramite la RULE che abbiamo scritto prima.

Come scritto nell’introduzione i sensori della mia centrale sono dei semplici contatti pulito quindi ho potuto collegare direttamente i pin del nodemcu in parallelo.
Per i collegamenti potete utilizzare dei cavetti già pronti come in descrizione, o in alternativa io ho preferito utilizzare un semplice semirigido del doppino telefonico che ho tagliato a misura per ogni pin. Una volta terminati i collegamenti possiamo alimentare il nodemcu con il trasformatore 12-5v.

Solitamente in centrale ci sono dei morsetti AUX per sensori, sirene ecc che erogano sempre 12v, e che mediamente rimangono sotto tensione anche in assenza di corrente grazie all’UPS della centrale stessa; questo ci permetterà di avere i nodemcu sempre online anche in assenza di corrente (naturalmente è necessario che anche il wifi sia alimentato da un ups).

Una volta terminato il collegamento in centrale di tutti i sensori e dell’alimentazione potete tornare in console e verificare che i sensori vengano letti correttamente.
Nota: Qualora decidiate di non alimentare i nodemcu direttamente dalla centrale sarà necessario collegare il pin GND del nodemcu con un GND comune della centrale.

In questa configurazione siamo quindi riusciti a recuperare 6 sensori … la mia centrale ha 8 zone di cui 6 sono collegate a dei sensori motion/pir, mentre le altre 2 verranno collegate al secondo nodemcu e sono relative a 4 finestre (collegate 2 a 2).

 

Configurazione del secondo Nodemcu

Dopo aver caricato il firmware tasmota procediamo con la stessa configurazione: modalità Generic (18) e impostiamo l’indirizzo del nostro server mqtt, user e password ma questa volta utilizziamo per Client e Topic la denominazione “allarme2”.

Per la mia configurazione il secondo modulo è stato così impostato:

In Console imposteremo quindi gli switch sempre su 1 digitando in console (un commando per volta):

I pin D1 e D2 saranno utilizzati per i sensori di contatto presenti sulle finestre.

Come scritto nella intro per avere lo stato della centrale (armed or not armed), con il tester sono riuscito a trovare un contatto 12v a mancare dopo attivazione della centrale. E’ stato quindi necessario collegare il pin in centrale (12v) al pin 2 Coil del relè, e un GND (sempre della centrale) al pin 1 Coil.

Ho poi ponticellato il 3COM con il GND (1 Coil) per poter leggere lo stato con un contatto pulito. (NA).

 

 

Il contatto NA sarà quindi poi direttamente collegato al PIN D5.

Stessa procedura è stata realizzata per collegare un altro relè ad un 12V a mancare in caso di allarme per avere in questo caso lo stato della sirena.
Il pin utilizzato per la sirena è il D7.

Nella centrale era infine presente un contatto denominato KEY normalmente chiuso che se aperto è in grado di inserire la centrale (armed), e se chiuso di disenserirla (disarmed). Per questa funzione ho usato il pin D6 collegato ad un relè 5v i cui contatti C/NC sono stati messi in parallelo ai morsetti di cui sopra.

Per l’alimentazione del relé 5v ho usato direttamente i PIN 5V e GND del Nodemcu.

Anche per lo stato di questi sensori è necessario una RULE per pubblicare il loro stato sul broker.
La Rule è la seguente:

E quindi procediamo con l’abilitazione:

Ho preferito utilizzare il comando “publish2” che permette il retain di stato, poiché riavviando homeassistant in caso di finestra aperta veniva perso lo stato. Per i sensori motion non è stato necessario inserirlo poiché funzionano in maniera “pulsante” ovvero al rilevamento del movimento lo stato cambia da off a on in pochi istanti, per poi tornare di nuovo in off.

Il mio allarme prevede anche delle tastiere per inserire e togliere l’allarme .. ho aggiunto una seconda regola per mantenere lo stato del relè sempre allineato con l’inserimento manuale da tastiera e la successiva disattivazione da HA.

PS: essendo una regola presente in Tasmota sarà indipendente da HA.

Una volta terminati tutti i collegamenti ai relè e ai sensori rimasti, possiamo quindi alimentare il nostro secondo nodemcu.

 

Ora passiamo alla configurazione in Home Assistant:

il package che ho scritto è il seguente:

 

Nel file di config  UI-LOVELACE.YAML

Il risultato finale sarà quindi:

Per aumentare il livello di sicurezza consiglio di mettere una password amministratore per l’apertura della pagina (Menu-Configuration-Configure Other-Web Admin Password)

Per ultimare l’opera è necessario quindi creare le automazioni per inviare tramite telegram e/o mail i messaggi di stato della centrale, stato della sirena, ecc. secondo le vostre esigenze.

In conclusione il pannello di controllo è integrabile anche in HomeKit di Apple:

Se avete domande o dubbi o per qualsiasi altro chiarimento , non esitate a scriverci sul gruppo TELEGRAM o sul nostro FORUM

 

24 risposte

  1. Avatar Nicola Bertelli ha detto:

    Fortunato che te la cavi con 2 node e fortunato che i sensori sono collegati come contatto pulito

  2. Avatar Fabio ha detto:

    Ciao
    Bellissimo lavoro, proprio quello che volevo fare con la mia centrale per poi poter gestire la presenza ed il controllo della temperatura.
    Vedo da quanto fatto, e dalle prove poi effettuate, che solo sei contatti funzionano come switch …. non mi rassegno, ho bisogno di una conferma, sono solo quelli disponibili vero?

    • Avatar Davide Granata ha detto:

      Ciao Fabio, ti ringrazio per i complimenti. io ne ho usati 6, forse si arriva a 7 ma vanno effettuate delle prove ulteriori per verificare che non ci siano falsi positivi o negativi. Ti posso dire con certezza che sto usando da diverse settimane con la mia configurazione i pin: RX, D1, D2, D5, D6 e D7 senza problemi. Sarebbe da verificare opportunamente il D8 e il TX.

      • Avatar Fabio ha detto:

        Dopo vari test ho notato che il firmware risponde bene in MQTT solo con i sensori da te impostati, altrimenti risponde con un generico POWER ON / OFF. Io sono (quasi ) tra i fortunati con le PGM programmabili, solo che non fanno solo la presenza …

        • Avatar Davide ha detto:

          Perdonami non ho capito. Il sistema naturalmente va adattato secondo la tua esigenza .. se ti da Power ON o OFF non hai forse cambiato la modalità dello switch …l’idea è che al cambio di stato lui pubblichi quello che vuoi .. puoi personalizzarlo come meglio preferisci. Se vuoi sentiamoci anche su telegram.. mi trovi nel canale.

  3. Avatar Marco ha detto:

    Ciao,

    io non ho ancora l’allarme ma solo la predisposizione per due sensori movimento, un sensore porta e la sirena. Secondo te come posso fare?

    • Avatar Davide Granata ha detto:

      Ciao Marco, il sensore porta è tipo magnetico quindi potresti leggerlo senza problema direttamente sul Nodemcu. Per quanto riguarda invece quello movimento, devi solo alimentarlo (solitamente si fa da centrale), quindi volendo potresti leggerlo dandogli la 12v. Naturalmente i gnd devono essere tutti ponticellati tra loro. In linea di massima potresti anche non montare la centrale ma usare direttamente il nodemcu in sostituzione alla centrale stessa. Naturalmente sono necessarie delle automazioni in Tasmota o in HA affinché al rilevamento si riesca ad attivare la sirena. Potresti semplicemente inserire un comando per un relè che fa suonare o meno la sirena in funzione del rilevamento .. funzionerebbe con un impianto tradizionale. Certo andrebbe verificata con molta attenzione l’affidabilità del sistema .. su questo non mi pronuncio. Nel mio caso ho voluto lasciare indipendente il vecchio sistema implementandolo anche in HA.

      • Avatar Claudio ha detto:

        Ciao Davide, io ho una centrale Tecnoalarm e vorrei almeno monitorane lo stato. Mi spiego: ho due programmi: FULL e NOTTE. Vorrei che HA sappia quando un programma è attivo o NO. secondo te come posso fare?
        grazie
        Claudio

        • Avatar Matteo ha detto:

          Anch’io ho una centrale tecnoalarm TP6-R e sarei interessato a capire come poterla integrare, sopratutto vorrei capire se inserimento e disinserimento siano ancora possibili dai tastierini esistenti o se si debba necessariamente fare tutto da interfaccia HA.
          grazie

          Matteo

        • Avatar Davide Granata ha detto:

          non conosco la centrale in dettaglio. sostanzialmente sulla centrale devi trovare dei contatti/uscite che ti diano quello stato per poterle leggere col mio sistema. molte centrali possono programmare delle uscite a piacimento. la mia non permetteva tutto ciò.

  4. Avatar francesco ha detto:

    Complimenti per l’articolo, come posso integrare con homekit?

    • Avatar Davide Granata ha detto:

      Con homekit devi includere l’entità del pannello di controllo e creare delle automazioni in maniera tale che quando il pannello di controllo cambia modalità sincronizzi lo switch dell’allarme su on/off e viceversa. Stessa cosa la devi fare dall’inserimento dell’allarme da HomeAssistant o dalla tastiera … per sincronizzarlo poi su pannello di allarme e quindi a cascata su homekit in maniera tale che se tu non sei a casa ma qualcuno esce e lo inserisce tu hai la notifica sul telefono in homekit. mi trovi su telegram se vuoi ne possiamo parlare anche li

  5. Avatar Massimiliano ha detto:

    Ottimo tutorial, come del resto tutti gli altri. Premetto che sono un principiante in quanto ad home assistant quindi preso dall’euforia di voler domotizzare tutto e subito mi piacerebbe integrare anche il mio sistema d’allarme Combivox Wilma32 in HA.
    In cosiderazione del fatto che la mia centrale è ibrida quindi combina sensori wireless a sensori filari, capisco benissimo che si complicherebbe ulteriormente il discorso se volessi anche integrare i vari sensori. Ragion per cui mi basterebbe poter inserire e disinserire l’impianto è al massimo conoscere lo stato impianto, in modo tale da capire lo stesso anche quando attivo il tutto dall’esterno cioè da app proprietaria da tastiera e radiocomando.
    Essendo una centrale recente, potrei ad esempio optare all’Inserimento e al disinserimento semplicemente utilizzando un ingresso programmato o come “Chiave Stato” (un semplice contatto programmabile o come NA o NC) o come “Chiave Implusiva” (pulsante NA o NC). Per lo stato impianto invece, potrei sfruttare un uscita è programmarla in modo da, attivarla ad impianto inserito e disattivarla ad impianto disinserito.

    La mia domanda è devo procedere necessariamente con Nodemcu o potrei optare in altro modo visto che dovrei usare solo 3 GPIO. Dico questo perchè non ho ancora mai usato Nodemcu quindi mi spaventa un po l’idea di dover smanettarci un pò. Tu cosa mi consigleresti?

    Grazie

  6. Avatar Massimiliano Sparacino ha detto:

    Buon pomeriggio, visto che non mi avete consigliato altre soluzioni, sto optando per l’uso di un NodeMCU LUA Amica V2
    Volevo chiedere una cosa a Davide, visto che anche io devo interporre un mini relè per armare e disarmare la centrale non ho capito da dove hai derivato l’alimentazione così come spieghi:
    “Per l’alimentazione del relé 5v ho usato direttamente i PIN 5V e GND del Nodemcu.”

    Visionando il pinout diagram non trovo nessun 5V bensì 3.3V

    Grazie

  7. Avatar Massimiliano ha detto:

    Mi rispondo da solo … mi sono documentato meglio ed ho capito se non erro che il 5V lo posso prendere dal pin VIN.

    Grazie ugualmente.

    • Avatar Davide ha detto:

      Ciao, perdonami se ti rispondo solo ora, purtroppo le notifiche dal sito non arrivano sempre puntuali. Grazie per i complimenti alla guida. Sono arrivato tardi ma si .. VIN e 5V corrispondono alla stessa cosa, Alimentando i wemos con i trasformatori indicati nella guida hai lo stesso gnd della centrale e cosi puoi direttamente leggere i pin che ti servono.

      Se vuoi mi trovi piu facilmente su telegram

      • Avatar Massimiliano ha detto:

        Grazie a te per la guida, non ero riuscito a trovare in giro un tutorial così dettagliato è funzionate come il tuo.
        Ieri sono finalmente riuscito a implementare il tutto, funziona benissimo ma l’unico “neo” se così posso definirlo è che dalla card alarm panel, se armo e disarmo da HA con codice funziona tutto, se invece armo e disarmo dall’esterno (tipo da tastiera) le varie entità fungono, cioè mi viene mostrato lo stato impianto, l’eventuale allarme e anche la possibilità tramite l’apposito switch di armare e disarmare mentre la card alarm panel non capisce che nel frattempo l’allarme inserito o no, quindi ho rimosso tale card lasciando l’altra che sostanzialmente fa tutto, peccato senza l’ausilio della password.

        Buona serata

  8. Avatar Alessandro ha detto:

    Complimenti per l’articolo!!!ho comprato il necessario per provare a convertire il mio allarme della URMET…ma ho molti problemi…. vorrei lasciarti alcune foto del mio allarme e capire se posso collegare i sensori ai GPIO… ma penso che restituiscano una tensione di 12V…

    Morsettiera allarme: https://i.ibb.co/ZgVQrFG/morsettiera.jpg

    Parametri: https://i.ibb.co/jy5jv77/Alimentazione.jpg

    Foto impianto: https://i.ibb.co/mqrStm5/image0.jpg , https://i.ibb.co/pRRqXVH/image1.jpg , https://i.ibb.co/ZLN1bdC/image2.jpg .

    Grazie in anticipo!

    • Avatar Massimiliano ha detto:

      Ciao Alessandro, provo a risponderti io visto che il mio lavoro consiste proprio nell’installare sistemi d’allarme. Molte centrali d’allarme, così come sembrerebbe la tua (anche se non la conosco), utilizzano il polo negativo collegato al contatto al sensore (volumetrico,contatto magnetico etc.) il quale ritorna da tale morsetto e va a collegarsi in un ingresso, quindi avrai un 12v tra il morsetto +RV e In1. Uno sbilanciamento di tale ingresso provoca l’allarme. Tu in centrale puoi stabilire se tale contatto debba essere programmato come normalmente chiuso, bilanciato, normalmente aperto etc.
      Quindi nel morsetto In1 avrai il gnd della 12V della centrale, quindi mettere i pin del nodemcu in parallelo così come ha fatto davide non è possibile nel tuo caso. Tu comunque con un multimetro prova a verificare quanto detto precedentemente, se non c’è tensione fra +RV e In1 ovviamente se l’ingresso è NC c’è sempre il gnd è manca quando va in allrme, mentre se è NA viceversa c’è il gnd quando si sblilancia è va in allarme cioè si chiude.

      Secondo me potresti semplicemente interfacciare il tuo sistema così come ho fatto io, inserimento/disinserimento – stato allarme – stato sirena

      • Avatar alessandro ha detto:

        ti ringrazio per la risposta! in effetti ho analizzato meglio l’impianto e risulta in questo modo:
        https://i.ibb.co/ZBZZGN5/unnamed.png
        Ma deduco che i gpio non posso comunque collegarli perchè la tensione è sempre piu di 3,3v..o mi sbaglio? comunque mi basterebbe anche solo interfacciarmi come hai fatto tu…
        Con il multimetro in effetti mi segnala quelle tensioni li….
        sapresti indicarmi in caso la tua procedura?

        • Avatar Massimiliano ha detto:

          Ciao Alessandro io ho fatto in questo modo:

          1) Ho configurato un solo NodeMCU così come ha spiegato Davide, ho usato però solo 3 gpio, precisamente il D5 (Stato Impianto), D6 (Inserimento/Disinserimento), D7 (Allarme)

          2) La mia centrale dispone di uscite a 12V programmabili, quindi ho interposto un relè a 12V in una di queste uscite, ho programmato da centrale tale uscita in modo da attivarsi solo all’inserimento dell’allarme.
          Nel gpio D5 del NodeMCU ho quindi collegato un contatto NC del relè, quindi ad impianto inserito si eccita tale relè che va ad aprire di conseguenza il contatto.

          3) Ho interposto un altro relè a 12V in un relè a bordo della centrale che si attiva solo ad allarme avvenuta, anche in questo caso ho usato un contatto NC di tale relè collegandolo al gpio D7

          4) Per l’inserimento ed il disenserimento ho usato il relè a 5V così come ha illustrato davide, ho usato il contatto NC è collegato ad un ingresso della mia centrale, programmata come “chiave stato”.

          Ovviamente devi adattare il tutto alla tua centrale, non è complicato basta capire la logica di tali funzioni.
          Leggi attentamente la guida, non è poi così difficile, devi ovviamente adattare la rule e il package visto che non devi implementare nessun sensore.

  9. Avatar Stefano Giugliano ha detto:

    Ciao, ho una SilenyaPhone Top della Silentron. Posso riutilizzare qualcosa del tuo progetto per rendere smart la mia centrale? Grazie

Lascia un commento

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