MetalIO

MetalIO l-am scris atunci când am dorit să am în casă un bec pe care să îl pot controla de la telefonul mobil. Am întâmpinat o serie de probleme cu soluțiile existente atunci când am făcut planul despre cum de la un sigur bec vreau să pot controla mai multe în casă. După asta am hotărât să scriu singur codul așa ca să fie comod, s-a ajuns ca proiectul funcționează și poate fi utilizat și de alții, nu are rost să îl țin ascuns. Utilizez MQTT pentru modul în care funcționează și despre dimensiunea mică a pachetului, fiind bun pentru transmiteri de pachete cu conținut mic.

MetalIO e disponibil gratuit și e open-source pe Github: http://github.com/daniftodi/metalio

Ideea ar fi că toți clienții MetalIO se conectează la un broker și ascultă. În momentul când primesc un mesaj destinat lor, se uită la mesaj și execută ceea ce este scris.

Exemplu:

Imaginați-vă că aveți un dispozitiv care sa conectat la un broker MQTT și ascultă subiectul: home/lights/kitchen. El ascultă, stă deoparte, pe nimeni nu deranjează. În acest moment „cineva” anunță „cei care ascultă home/lights/kitchen” executați comanda „aprindeLumina”. El „aude” acest mesaj, altceva nu „aude” decât mesajele destinate lui. Se uită ce date au venit și execută. După asta revine în starea de ascultare.

PS: În realitate o comanda arata asa: <nume metoda>:<parametru1>,<parametru2>…. (ex: digitalWrite:13,1)

Schema de funcționare:

 

Dupa ce este scris pe microcontroler ofera interfață pentru configurare:

 

Vedeți video pentru a vedea cum funcționează:

Lasă un răspuns

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