Gateway 433MHz Arduino & FHEM

Gateway
Gateway

In tutorialul de astazi vom construi singuri un Gateway ce functioneaza in frecventa 433MHz, pentru a controla un set de priza cu telecomanda. Constuctia este relativ simpla, se bazeaza pe un modul aduino si un transciever 433MHz. Acest Gateway poate fi atasat la FHEM si poate comanda prizele ce functioneaza cu frecventa de 433MHz. Aceste prize sunt de regula mai accesibile din punct de vedere al pretului fata de prizele WI-FI, sau cele cu module ZigBee, insa sunt evitate de cumparatori datorita faptului ca pot fi folosite doar local, in raza de actiune a telecomenzii.

Materiale necesare:

  1. Arduino nano
  2. Transciever CC1101 433Mhz (cu antena)
  3. Cablu mini USB (in caz ca placa arduino nu vine deja cu el)
  4. Cabluri de conectare

Schema de conectare o avem in imaginea alaturata si o vom face dupa cum urmeaza.

Arduino Nano V3 -> Transciever

  1. 3V3 -> VCC
  2. D11 -> SI
  3. D12 -> SO
  4. D10 -> CSN
  5. GND -> GND
  6. D13 -> SCK
  7. D2 -> GD2
  8. D3 -> GDO

Odata facute conexiunile putem atasa cablul USB la Arduino Nano si conecta la Raspberry PI.

Desigur cablurile pot fi cositorite (este indicat), insa pentru acest tutotial demonstrativ am ales ca ele sa fie doar conectate. Pentru cei la inceput de drum ar fi de recomandat a se folosi cabluri de culori diferite, asfel incat sa poata urmari traseele cat mai usor si sa poata fi reconectate in caz ca una dintre conexiuni nu este corect facuta.

Odata ce am conectat arduino la Raspberry PI vom avea nevoie sa instalam software-ul necesar. Pentru a realiza acest lucru ne conectam la Raspberry PI prin SSH.

Folosind comanda lsusb vom verifica ce deviceuri avem deja conectate.

lsusb

Dupa ce conectam arduino mai rulam inca odata comanda lsusb pentru a verifica conexiunea. Dupa a doua rulare a comenzii vom vedea ca arduino este conectat.

lsusb
Bus 001 Device 008: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

Pentru a instala softwareul necesar rulam urmatoarea comanda:

sudo apt-get update && sudo apt-get install arduino make gcc-avr avrdude avr-libc git

Confirmam cu „y” si Enter.

Descaracam software-ul necesar.

git clone https://github.com/heliflieger/a-culfw.git

Schimbam directorul:

cd a-culfw/culfw/Devices/nanoCUL/

Instalam softwareul necesar pe arduino:

make program-433

Verificam deviceul:

ls -la /dev/ttyUSB*

Pentru a defini Gateway-ul in FHEM vom verifica ID-ul asa cum este creat in sistem:

ls -la /dev/serial/by-id/

Deschidem browserul si accesam FHEM. Putem defini Gateway-ul cu urmatoarea comanda:

Gateway CUL_433
define CUL_433 CUL /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@38400 1234

Atentie! folositi ID-ul oferit de sistemul vostru pentru o integrare corecta. Ultimile 4 cifre reprezinta Hause code-ul si in cazul in care avem mai multe Gateway-uri construite dupa acelasi principiu, la definirea in FHEM acesta trebuie sa fie diferit.

Dupa definirea in sistem, daca statusul este „opened„, va trbui sa dam un restart la sistem.

Atentie! Salvati configuratia actuala, altfel dupa restart va trebui sa definim din nou Gateway-ul.

Daca rulam sistemul pe Raspberry PI, si avem setarile facute din acest tutorial, atunci puem face acest lucru direct din FHEM cu comanda

{ system("sudo reboot &") }

Sau putem reporni sistemul din terminal cu comanda:

sudo reboot

Dupa restart statusul deviceului trebuie sa fie ” Initialized„.

Pentru a functiona cu device-urile care transmit in frecventa 433MHz, definim acest lucru cu:

attr CUL_433 rfmode SlowRF

Atribuim room-ul Hardware.

Atribuim grupul Gateway.

Pentru ca la mine autocreate-ul este activ, dupa cateva momente a aparut in sistem deja primul device. Este vorba despre o statie meteo, care livreaza date despre umiditate si temperatura.

Daca apar si alte device-uri pe care nu vrem sa le integram in FHEM atunci acelui device ii vom defini atributul ignore 1, dupa care putem sa il stergem din FHEM

Insa telul Gateway-ului era sa integram in sistem un set de prize semi-smart, daca le putem spune asa, si sa le controlam de la distanta, reducand utilizarea telecomenzilor lor originale, oferindu-ne astfel libertatea de a le putea controla de oriunde.

Integrarea este foarte simpla, apasand pe butonul de ON al telecomenzii , practic se va autocrea un device nou in FHEM in room-ul IT.

Dupa ce apasam butonul de ON al telecomenzii cele doua prize s-au autocreat.

Desigur prizele au luat numele default dat de sistem, insa acesta se poate schimba, asa cum am vazut in acest tutorial.

rename IT_00000FFF0F IT_xyz
define IT_Monitor IT 00000FFF0F 0F F0
attr IT_Monitor IODev CUL_433
attr IT_Monitor group PC
attr IT_Monitor room Living,Hardware,IT

Definitia completa vizibila in fhem.cfg

define CUL_433 CUL /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@38400 1234
attr CUL_433 group Gateway
attr CUL_433 rfmode SlowRF
attr CUL_433 room Hardware

define Prologue_158 CUL_TCM97001 CUL_TCM97001_158
attr Prologue_158 event-min-interval .*:300
attr Prologue_158 event-on-change-reading .*
attr Prologue_158 model Prologue
attr Prologue_158 room CUL_TCM97001

define FileLog_Prologue_158 FileLog ./log/Prologue_158-%Y-%m-%d.log Prologue_158
attr FileLog_Prologue_158 logtype temp4hum4:Temp/Hum,text
attr FileLog_Prologue_158 room CUL_TCM97001

define SVG_Prologue_158 SVG FileLog_Prologue_158:SVG_Prologue_158:CURRENT
attr SVG_Prologue_158 label "Prologue_158 Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_Prologue_158 room Plots

define IT_RaspberryPI4 IT 00000FFFFF 0F F0
attr IT_RaspberryPI4 IODev CUL_433
attr IT_RaspberryPI4 group PC
attr IT_RaspberryPI4 room Hardware,IT,Living

define FileLog_IT_RaspberryPI4 FileLog ./log/IT_RaspberryPI4-%Y-%m-%d.log IT_RaspberryPI4
attr FileLog_IT_RaspberryPI4 logtype text
attr FileLog_IT_RaspberryPI4 room IT

define IT_Monitor IT 00000FFF0F 0F F0
attr IT_Monitor IODev CUL_433
attr IT_Monitor group PC
attr IT_Monitor room Living,Hardware,IT

define FileLog_IT_Monitor FileLog ./log/IT_Monitor-%Y-%m-%d.log IT_Monitor
attr FileLog_IT_Monitor logtype text
attr FileLog_IT_Monitor room IT

Si iata ca am reusit cu o investitie minima sa facem propriul Gateway astfel incat sa putem controla un set de prize telecomandate, sau alte deviceuri care functioneaza pe frecventa de 433MHz.

De Iulian Susnea

Pasionat de tehnologie, gadgeturi smart home si automatizari si am pornit la drum in crearea acestui site cu tutoriale pentru cele mai importante sisteme Smart Home ale momentului din dorinta de a-i ajuta pe cei la inceput de drum.

Lasă un comentariu

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *