“Souliss – Arduino based SmartHome and IoT“ fa passi da gigante, ed è sempre più vicino a chi si vuole cimentare in realizzazioni domotiche, intese come automazione di luci, prese, riscaldamento, irrigazione, tende, etc….
Per realizzazioni domotiche, ad oggi, è ancora necessaria una certa dimestichezza nel campo informatico ed elettronico, perchè non esiste alcun kit “scarta configura ed usa” ma è necessario studiare, acquistare pezzi compatibili tra loro, ed in alcuni casi conoscere gli schemi di massima dei componenti e mettere mano al saldatore. Per quanto riguarda la parte software invece, esistono strumenti magnifici: uno di questi è Souliss (vedi: sito, forum italiano, forum inglese), mentre l’altro è openhab.
Dalla versione 1.6.3 dell’IDE Arduino è possibile installare in modo semplice e veloce la versione aggiornata del framework Souliss e, nella sezione Esempi di Souliss, troviamo l’occorrente per prendere confidenza con il codice.
In questo articolo riporto, in tre passi, le pochissime righe necessarie per configurare il plugin di Souliss per Openhab e per provare ad integrare il nostro primo nodo Souliss in Openhab.
Passo 1: aggiungere il file .jar del plugin nella cartella ./openhab/addon
Scarica la versione aggiornata al 25.02.2015 [Download not found]. L’ultima versione è recuperabile qui. (prossimamente sarà disponibile anche il plugin per Openhab 2.0)
Passo 2: aggiungere quanto segue al file .openhab/configurations/openhab.cfg
################################ Souliss Binding ########################################## # # Souliss is an open-source framework designed for Smart Homes and Internet of Things, # it runs over Arduino AVR microcontrollers and include all the libraries and drivers # required for a complete a distributed intelligent network, with a ready to use Android # user interface. # # For ITEM defination in file .item #{souliss=<Typical>:<nodeID>:<slot>:[<bit>]} souliss:IP_LAN=192.168.1.126 souliss:USER_INDEX=71 souliss:NODE_INDEX=134 #SERVERPORT - Leave empty for casual port souliss:SERVERPORT= #time in mills souliss:REFRESH_DBSTRUCT_TIME=600000 souliss:REFRESH_SUBSCRIPTION_TIME=120000 souliss:REFRESH_HEALTY_TIME=60000 souliss:REFRESH_MONITOR_TIME=500 souliss:SEND_DELAY=1500 souliss:SEND_MIN_DELAY=100 souliss:SECURE_SEND_TIMEOUT_TO_REQUEUE=5000 souliss:SECURE_SEND_TIMEOUT_TO_REMOVE_PACKET=30000
ATTENZIONE: L’unico parametro che è indispensabile cambiare è IP_LAN. Cambiare USER_INDEX e NODE_INDEX solo se i relativi valori coincidono con quelli si SoulissApp (vedi Google Play)
A proposito di IP_LAN: lanciare SoulissApp ed inserire l’indirizzo IP trovato dall’App.
Passo 3: Inserire il file nomeProfilo.item seguente codice nella cartella ./openhab/configurations/items
Group All Group All Group grp1 (All) Group Diagnostic (All) Group TechnicView_Node0 (All) Switch SimpleLight "SimpleLight" (grp1, TechnicView_Node0) {souliss="T11:0:0", autoupdate="false"} Number HEALTHNodo0 "Health Node 0 [%1d]" <keyring> (Diagnostic, TechnicView_Node0, Health) {souliss="D98:0:998"} String TIMESTAMP_Nodo0 "Update Node 0 [%1$td.%1$tm.%1$tY %1$tk:%1$tM:%1$tS]" <keyring> (Diagnostic, TechnicView_Node0) {souliss="D99:0:999"}
Passo 4: Inserire il file nomeProfilo.sitemap seguente codice nella cartella ./openhab/configurations/sitemaps
sitemap nomeProfilo label="Main Menu" { Frame label="Souliss - Hello World" { Switch item=SimpleLight mappings=[ON="ON", OFF="OFF"] Text item=HEALTHNodo0 icon="icon16x16" Text item=TIMESTAMP_Nodo0 icon="icon16x16" } }
NOTA: Prestare attenzione al nomeProfilo. Il nome del file deve essere uguale al nomeProfilo indicato nella sitemap.
Ecco il risultato su OpenHAB: