#Integrazione delle lampade IKEA Tradfri alla CM3-Home <abstract> Appunti sulle prove tra la scheda CM3-Home e il sistema di illuminazione IKEA Trådfri </abstract> <img src="ikea.jpg"> ## Installazione Installare il gateway Ikea seguendo le istruzioni su questo video: * [Come installare il kit con gateway TRÅDFRI](https://www.youtube.com/watch?v=xCfMftLAqyc&feature=youtu.be) ### Da linea di comando Questo è un estratto dal tutorial disponibile su: <https://learn.pimoroni.com/tutorial/sandyj/controlling-ikea-tradfri-lights-from-your-pi> Installazione libcoap con supporto per DTLS sudo apt-get install build-essential autoconf automake libtool git clone --recursive https://github.com/obgm/libcoap.git cd libcoap git checkout dtls git submodule update --init --recursive ./autogen.sh ./configure --disable-documentation --disable-shared make sudo make install Gli esempi sul sito Pimoroni non funzionano se non aggiornandoli con quanto scritto in questa email di Ikea: * <a href="./update_ikea.png">Update Ikea</a> In pratica bisogna chiedere al gateway una nuova shared key specificando una stringa che identifica l'applicazione. In questo caso ho usato <b>tanzolab</b>. <b>qefE5g6WZbhbmPXn</b> è invece il codice di sicurezza del gateway Ikea installato sul pannello e <b>192.168.1.48</b> il suo indirizzo IP. Per richiedere la chiave: coap-client -m post -u "Client_identity" -k "qefE5g6WZbhbmPXn" -e '{ "9090":"IDENTITY"}' "coaps://192.168.1.48:5684/15011/9063" Dopodiché: coap-client -m get -u "IDENTITY" -k "OZLecZ3ijejmlNsd" -v 4 "coaps://192.168.1.48:5684/15001/65536" Per accendere la lampadine di SX: coap-client -m put -u "IDENTITY" -k "OZLecZ3ijejmlNsd" -e '{ "3311": [{ "5850": 1 }] }' "coaps://192.168.1.48:5684/15001/65537" Per spegnere la lampadine di SX: coap-client -m put -u "IDENTITY" -k "OZLecZ3ijejmlNsd" -e '{ "3311": [{ "5850": 0 }] }' "coaps://192.168.1.48:5684/15001/65537" Per accendere la lampadine di DX: coap-client -m put -u "IDENTITY" -k "OZLecZ3ijejmlNsd" -e '{ "3311": [{ "5850": 1 }] }' "coaps://192.168.1.48:5684/15001/65538" Per spegnere la lampadine di DX: coap-client -m put -u "IDENTITY" -k "OZLecZ3ijejmlNsd" -e '{ "3311": [{ "5850": 0 }] }' "coaps://192.168.1.48:5684/15001/65538" Sostituire 5850 con 5851 per poter inviare il valore di luminosità da 0 a 254 ### Esempio di codice in Python Questo esempio legge un pulsante da uno degli ingressi opto della CM3-Home e accende un lampadina IKEA Trådfri quando il punsante è premuto. Legge anche uno switch e pilota una seconda lampadina. #!/usr/bin/python import os import time import RPi.GPIO as GPIO PUSHBUTTON=28 SWITCH=29 GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) GPIO.setup(PUSHBUTTON,GPIO.IN) GPIO.setup(SWITCH,GPIO.IN) while True: if GPIO.input(PUSHBUTTON): os.system("coap-client -m put -u \"IDENTITY\" -k \"OZLecZ3ijejmlNsd\" -e '{ \"3311\": [{ \"5850\": %d }] }' \"coaps://192.168.1.48:5684/15001/65537\"" % 0) time.sleep(0.5) else: os.system("coap-client -m put -u \"IDENTITY\" -k \"OZLecZ3ijejmlNsd\" -e '{ \"3311\": [{ \"5850\": %d }] }' \"coaps://192.168.1.48:5684/15001/65537\"" % 1) time.sleep(0.5) if GPIO.input(SWITCH): os.system("coap-client -m put -u \"IDENTITY\" -k \"OZLecZ3ijejmlNsd\" -e '{ \"3311\": [{ \"5850\": %d }] }' \"coaps://192.168.1.48:5684/15001/65538\"" % 0) time.sleep(0.5) else: os.system("coap-client -m put -u \"IDENTITY\" -k \"OZLecZ3ijejmlNsd\" -e '{ \"3311\": [{ \"5850\": %d }] }' \"coaps://192.168.1.48:5684/15001/65538\"" % 1) time.sleep(0.5) time.sleep(0.1) ### OpenHAB Dal pannello wed di OpenHAB (PAPER UI) andare sul menu a sinistra __Add-ons__ cercare "tradfri" e installare http://localhost:8080/paperui. Nel menu Inbox dovrebbe apparire immdiatamente un messaggio che indica che il gateway è stato trovato. Accedere alla documentazione del binding IKEA Trådfri * [Trådfri Binding](http://docs.openhab.org/addons/bindings/tradfri/readme.html) ## Links * [IKEA Smart lighting for a brighter everyday](http://www.ikea.com/gb/en/products/lighting/smart-lighting/) @include='bio_sergio_tanzilli'
2018 Ⓒ TanzoLab