Kom igång med Raspberry pi för hemautomation.
Har börjat komma igång med Raspberry pi för hemautomation. För att minska startsträckan för fler, och kanske få några tips tänkte jag göra en serie ”från start till mål med Raspberry Pi”.

- 2017-02-25 – Uppdaterar stegen för Grafana till V4.1.2, mer info om hur graferna ska ordnas. Guiden är nu testad och verifierad med Asus tinker board (förutom del 1 RPI installationen).
- 2017-02-04 – Lägger till info att tänka på när det gäller minneskort under ”Hårdvara”.
- 2017-01-22 – Rättad rutin för Home Assistant, uppdaterad förklaring på Grafana
- 2017-01-19 – Lägger till guide för installation av Telldus Duo.
- Hela guiden uppdaterades 2017-01-14 för att fungera med version ”PIXEL” som nu finns
- Guiden håller nu på att verifieras med PIXEL som släpptes 2017-01-11
- Ändrad hantering för lösenordsbyte
- Ett extra uppdateringssteg under installationen
- Lägger med Mosquitto i uppdate soruces (Tack för tipset Borkman)
- Uppdaterar Grafana guiden till V4.1.1 (Tack för tipset Borkman)
- Uppdaterat till Node red v0.16 i guiden.
Meny
- Installation av Raspberry PI – 2016-12-08
- Installation av Influxdb – 2016-12-08
- Installation av Grafana – 2016-12-11
- Installation av Mosquitto MQTT – 2016-12-13
- Installation av Node Red – 2016-12-18
- Installation MQTT på Vera – 2016-12-19
- Konfiguration Node red och SMS – 2016-12-26
- Installation av Home Assistant med Virtual env (2017-01-13)
- Installation av Telldus Duo (2017-01-19)
- Vad mer ska ingå i guiden?
När guiden är klar kommer du att ha en InfluxDB (databas), Grafana (grafer, bilden nedan), Mosquitto (MQTT protokoll) och node Red för att trigga på larm och liknande. Det kan säkert komma in mer roligt på vägen allt eftersom jag skriver guiden, ser du något som inte stämmer eller inte fungerar. Säg gärna till i så fall så korrigerar jag 🙂
Redan idag har jag en RPI med en DHT22 och Webbkamera integrerad till Vera. Förhoppningen är att även dela med mig om hur det görs i den här guiden. Kom gärna med tips på vad mer man kan göra med en RPI eller om något inte stämmer i guiden.
Hårdvara
För att få till följande resultat behövs hårdvara för ca 700 – 800 kr. Då räknar jag med låda och annat med till RPI.
- Raspberry Pi (2 eller 3) Länk till ett startkit på m.nu
- MicroSDHC Minneskort, ju större desto bättre men mist 8GB
- MicroSDHC läsare till dator.
- Usb strömadapter, tänk på att skaffa en som klarar mer än 2A!
När du väljer att köra med InfluxDB på din RPI tänk på att detta kommer att slita på minneskortet som har en begränsad mängd skrivningar. Fick tipset om att tänka på det när det gäller stora mängder loggar (dvs skrivningar) i InfluxDB.
- Tänk på att använda ett så stort minneskort som möjligt för att undvika att slita ut minneskortet.
- Kosta på och köp ett riktigt minneskort som klarar hög skriv/läs hasighet och många skrivningar (länk wiki).
Guiden byggs på här nedan allt eftersom jag hinner med mig. MYCKET tacksam för tips eftersom jag själv håller på att sätta mig in i området med.
Installation av Raspberry PI
Börja med att ladda hem Raspbian från en Windows dator. Jag valde ”Raspbian Jessie with PIXEL”, spara den på en disk med nog mycket utrymme.
Packa upp filen till en mapp (notera vart mappen är)
Koppla in minneskortet i kortläsaren och koppla in det i klient. Skriv upp vilken diskenhet minneskortet får.
Jag valde att ladda ”win32 Disk Imager”, det finns säkert fler men även den här guiden rekommenderar den

När detta är klart är det bara att trycka Write och vänta till skrivningen är klar.
Mer än så är det inte! koppla in minneskortet i din Raspberry Pi (RPI) och koppla in tangentbord, mus, skärm.

Uppe till vänster finns en ikon som är ett hallon, tyck på det och gå ner till ”preference / raspberry pi configuration”
Sätt ett lösenord genom ”Change Password”, nytt från och med PIXEL (2017-01-11 Kernel 4.4) är att man nu behöver ange det gamla lösenordet för att få byta till ett nytt!
Lösenordet för pi är: ”raspberry”
Jag valde att även lägga till VNC för att kunna fjärrstyra RPI och visa skärmen. Det går lika bra att sitta vid RPI eller köra SSH (obs SSH måste aktiveras i så fall), men då antar jag att man inte behöver läsa den här delen av guiden 🙂





Nu är det klart. Spara alla inställningar och välj att den ska starta om. När det är klart är den grundläggande konfigurationen klar.
Uppe på menyn finns en svart ruta (terminalen) öppna den och skriv som nedan ”ip addr”, detta ger dig information om vilken ip adress din RPI har.

Det är bra idé att nu uppdatera all mjukvara i din RPI till den senaste, detta görs genom att skriva:
sudo bash apt-get update apt-get upgrade


Passar även på att köra följande när den andra installationer var klar:
apt-get upgrade dist
2016-12-08 – Del 1 av guiden klar
Nu är din RPI grundinstallerad och uppgraderad. Jag kommer inom kort att fortsätta med nästa del av guiden.
Installation av InfluxDB
InfluxDB är en nosql databas som används för att lagra information, i mitt fall är tanken att koppla den till Grafana. Men det går att använda den till mer än så.
Jag utgick själv från dessa guider när jag skrev min: Influx och Influx
Öppna en terminal och kör kommandona i följande ordning för att installera Influxdb:
# ladda hem http transport sudo apt-get install apt-transport-https curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add - source /etc/os-release # Kommandot ovan borde ge ett "OK" om allt gick vägen. echo "deb https://repos.influxdata.com/debian jessie stable" | sudo tee /etc/apt/sources.list.d/influxdb.list sudo apt-get update && sudo apt-get install influxdb

# För att konfigurera tjänsten körs följande kommando: sudo nano /etc/influxdb/influxdb.conf # editera följande tre rader genom att ta bort "#" tecknet. # [http] # Determines whether HTTP endpoint is enabled. enabled = true # The bind address used by the HTTP service. bind-address = ":8086" # Determines whether HTTP authentication is enabled. auth-enabled = false # The default realm sent back when issuing a basic auth challenge. # realm = "InfluxDB" # Determines whether HTTP request logging is enable.d # log-enabled = true #### För att sedan spara tryck ctrl+x och J och enter skriv sedan service influxd restart # nu är influx Redo för en databas.
Öppna en webbläsare på din dator och verifiera att du får följande resultat:

Nästa steg är att skapa en databas att lagra datat i (i den här guiden flyttar jag inte lagningen, utan den förblir på minneskortet!).

# Konfiguration av en databas sudo influx CREATE DATABASE db_automatiserar show databases exit # resultatet bör då se ut som bilden nedan.

För att verifiera att databasen fungerar kör följande kommando i terminalen
# testa att skriva en rad till databasen. curl -i -XPOST "http://localhost:8086/write?db=db_automatiserar&precision=s" --data-binary 'test,sensornamn=Demo temperatur=50 ' # kör sedan följande kommando för att öppna databasen med influx influx -execute 'SELECT * FROM test' -database db_automatiserar # beroende på hur många gånger du körde bör du få nått liknande bilden nedan:

Installera Grafana
Grafana är ett verktyg för att presentera data, liknande den som finns i till Vera: DataMine
Personligen tycker jag att Grafana ger en stor flexibilitet i hur grafer ska presenteras, mycket större än den som ges med DataMine.
Guiden bygger vidare på instruktionerna för influxDB på en RPI. Eftersom version v4.0.2 släpptes 8 Dec 2016 insåg jag att det är lika bra att försöka få igång den direkt, istället för att göra en guide på den gamla versionen jag redan kör.
Om du inte får koden i exemplet nedan att fungera kan du scrolla en bit längre ner till ”Testar därför att köra installationen manuellt”
# FUNGERADE EJ ------- Lägg till Grafana som permanent betrodd och med stöd för apt-get install # Fungerade ej när jag testade, kanske kan komma att fungera i framtiden (eller om man gör rätt) sudo nano /etc/apt/sources.list # Detta öppnar en editor, under de befintliga raderna klistra in följande: deb https://packagecloud.io/grafana/stable/debian/ jessie main # Tryck CTRL+X och sedan j och enter # Lägg till nyckeln curl https://packagecloud.io/gpg.key | sudo apt-key add - # --- # fungerar det bör du få ett resultat "OK" som bilden nedan
# Sök efter uppdateringar sudo apt-get update # Fick nu inte till kommandot nedan direkt, testar därför att starta om och köra det igen. Tyvärr samma fel sudo apt-get install grafana
Testar därför att köra installationen manuellt.
# Guiden uppdaterad till v4.1.1 av Grafana 2017-01-14, tack Borkman att du såg att det fanns en ny version
#Gå till mappen Downloads
cd /home/pi/Downloads
wget https://github.com/fg2it/grafana-on-raspberry/releases/download/v4.1.2/grafana_4.1.2-1487023783_armhf.deb
# Uppdaterar libfontconfig mm
sudo apt-get install -y adduser libfontconfig
# Installerar grafana.
sudo dpkg -i grafana_4.1.2-1487023783_armhf.deb
# om allt går bra så ta bort den nerladdade filen med:
sudo rm grafana_4.1.2-1487023783_armhf.deb
# Grafana ska nu vara installerat. Starta tjänsten genom att skriva:
sudo /bin/systemctl start grafana-server
# Fick tips från Jonsson i kommentaren nedan att även lägga köra följande för att få tjänsten att auto starta:
sudo systemctl enable grafana-server.service
För att verifiera att Grafana nu fungerar skriv: http:// ( DIN IP ADRESS TILL RPI ) :3000 ( exempelvis 10.20.30.40:3000 ), du bör då mötas av sidan nedan.

Konfigurera en graf med Grafana
För att konfigurera en graf enligt instruktionerna krävs att en InfluxDB installerats och konfigurerats. Om du inte gjort detta så finns instruktioner för hur detta sker längre upp.
För att få någon testdata att jobba med kör jag följande rad på den RPI där Installationen är gjord.
# Detta förutsätter att du satt upp InfluxDB som instruktionerna jag gjorde för att installera InfluxDB curl -i -XPOST "http://localhost:8086/write?db=db_automatiserar&precision=s" --data-binary 'test,sensornamn=Demo temperatur=50 ' # databasen blir db_automatiserar # datat som skickas är: # Topic: Test # Sensornamn : Demo # temperatur : 50 # för att sedan visa detta i forsätter du guiden nedan.
Skapa graf
Logga in i grafana genom att surfa till adressen till din RPI på port 3000 ( exempelvis http://10.20.30.40:3000 )
Välj: Add data source
Ange sedan:
Name: ett namn på din databas
Type: InfluxDB (som finns installerat på din RPI)
Url: http://DINRPIS IP ADRESS: 8086 ( typ http://10.20.30.40:8086, testade att köra localhost och 127.0.0.1 men den gillar inte riktigt det..)
Access: direct
Database: db_automatiserar
User: admin
Password: admin
Fungerar instruktionerna ovan bör du nu se följande under data seources.
Nu är det dags att skapa en graf av informationen, detta görs genom att trycka på knappen längst upp till vänster, dashboard, home och ”Create New”
Klicka på bilden ”Graph”
Tryck på listan ovanför grafen som du just fick och välj ”Edit”
Under ”panel data source” ändra från default till ”auotmatiserar databas” (den som du tidigare kopplad upp under stegen Data sources)
Verifiera att du har rätt databas nedan och tryck sedan ”Add query”. Tänk på att ta bort den som heter ”A” med, den kommer inte att behövas längre.
Nu har du fått en ny fråga, genom att trycka på varje text efter ”FROM” kommer du sakta men säkert att få informationen nedan presenterad automatiskt. Verifiera att det ser ut som bilden nedan, då är du säker på att det ska fungera.
Du bör nu få fram en stapel med som går från 0 till 50, vilket visar att det fungerar.
Namnsätt den nya grafen till önskat namn
Välj sedan att spara panelen med lämpligt namn.
Nu är graferna klar, för att testa att det fungerar kan du testa att köra följande rad igen på din RPI:
# kör följande rad för att verifera att du får en ny datapunkt i grafen (uppdatera längst upp till höger på sidan) curl -i -XPOST "http://localhost:8086/write?db=db_automatiserar&precision=s" --data-binary 'test,sensornamn=Demo temperatur=10 '
2017-02-25 – Får du problem att visa grafen så kan det vara bra att även kollade dessa stegen:
Genom att bocka Bars, Lines och Points ser man tydligt om en datapunkt finns i grafana. (obs bilden visar data inskickat under någon dags tid)
Får du mot förmodan inte någon data kan det bero på hur du valt att gruppera datat, testa att ändra enligt bilden nedan om du inte får Grafana att visa något.
Skulle du mot förmodan ändå inte se någon data, kolla i din ssh session om du fått in någon data i influxdb genom att köra följande kommando:
influx -execute ’SELECT * FROM test’ -database db_automatiserar
Nu är Grafana installerad och klar, allt som behövs nu är att skicka in data. Det kommer jag att visa i kommande delar med MQTT och Node Red.
Installation av Mosquitto MQTT broker
Tänkte i den här delen skriva om MQTT som är ett protokoll som speciellt används för batteridrivna enheter. Protokollet kommer från IBM men är Open Source. Protokollet möjliggör publish / subscribe. Dvs att enheter kan välja att prenumerera och skicka information till olika ”topics”. Den stora fördelen är att avsändaren (enheten) och mottagaren inte behöver känna till varandra, detta hanteras av en ”brokers”, i det här fallet en RPI. MQTT Brokern som jag valt att nyttja heter Mosquitto. Den finns utan något större jobb tillgänglig till RPI.
Jag baserar den här guiden på en från Adafruit.com
Börja med att uppgradera din RPI
# 2017-01-14: Lägg med Mosquitto i sources för att automatiskt få veta när det finns uppdateringar, tackar Borkman för tispet! cd /tmp sudo wget http://repo.mosquitto.org/debian/mosquitto-repo.gpg.key sudo apt-key add mosquitto-repo.gpg.key cd /etc/apt/sources.list.d/ sudo wget http://repo.mosquitto.org/debian/mosquitto-jessie.list # Uppdatera klienten sudo apt-get update # Installera själva MQTT servern och klienten. sudo apt-get install mosquitto mosquitto-clients # svara J på frågan och tryck sedan Enter
Nu är själva klienten Installerad, för att få den att göra något vettigt behövs en konfigurationsfil.
Detta skapas genom att köra följande delar.
# Skapa filen " mosquitto.conf " under sökvägen /etc/mosquitto/conf.d sudo touch /etc/mosquitto/conf.d/mosquitto.conf # Kör följande för att öppna filen i editeringsläge sudo nano /etc/mosquitto/conf.d/mosquitto.conf # Klistra sedan in följande rader: # --- start ---- # Config file for mosquitto user mosquitto max_queued_messages 200 message_size_limit 0 allow_zero_length_clientid true allow_duplicate_messages false listener 1883 autosave_interval 900 autosave_on_changes false persistence true persistence_file mosquitto.db allow_anonymous false password_file /etc/mosquitto/passwd # --- stop ----- Tryck Ctrl + X och sedan J och Enter. # Verifiera att filen innehåller samma som ovan genom att skriva: cat /etc/mosquitto/conf.d/mosquitto.conf
2017-01-06 – Ändrade idag ”allow_anonymous true” till allow_anonymous false”, orsaken är att Mosquitto inte kontrollerar behörigehten! Har du kört guiden sedan tidigare räcker det att du öppnar filen igen och ändrar värdet från true till false för att öka säkerheten. Detta uppmärksammades av en läsare, stort tack för att du uppmärksammade min miss i guiden 🙂
Nu är den grundläggande konfigurationen klar, det är dags att verifiera att tjänsten hoppar igång (och klagar på att den saknar lösenord, bilden nedan visar det du bör se)
# starta om MQTT tjänsten sudo systemctl restart mosquitto # Kontrollera om loggfilen skapats och om den innehåller "fel", vilket är helt ok ännu. cat /var/log/mosquitto/mosquitto.log # Om du får att den inte hittade lösenordsfilen ovan är allt helt ok, den skapas nu. # kontot blir "hemautomation" (namnet på kontot sätts efter passwd) sudo mosquitto_passwd -c /etc/mosquitto/passwd hemautomation # Ange sedan ett valfritt lösenord ( jag valde hemautomation igen eftersom det är en guide jag gör)

När lösenordet är satt är det dags att testa att tjänsten fungerar som tänkt.
# Ta bort den gamla loggfilen: sudo rm /var/log/mosquitto/mosquitto.log # Starta om tjänsten igen (man måste inte göra på det här sättet, men det ger info om att configen är ok) sudo systemctl restart mosquitto # Om du inte får någon information alls när du skriver raden nedan är allt klart och igång! cat /var/log/mosquitto/mosquitto.log # Klart !
För att göra ett test mot MQTT servern behöver du skapa en lyssnare på en valfri topic.
Kommandot jag kommer att köra byggs upp av följande:
- -t = Topic
- -u = Användare
- -P = Lösenord
# För att starta en lyssnare till topicen Automatiserar/demo körs följande: mosquitto_sub -d -t Automatiserar/demo -u hemautomation -P hemautomation # Nu är en lyssnare ( klient ) klar.

Nu behöver du öppna en ny SSH session eller en ny terminal på till/på din RPI och köra följande:
# Skicka följande rad, tänk på att ändra efter -h till IP:T på din RPI! mosquitto_pub -h DINIPADRESS -t Automatiserar/demo -m "Data skickat OK" -u hemautomation -P hemautomation # När du kört detta bör du ha fått något i den andra terminalen.

Nu är MQTT konfigurerat och redo att kopplas till Node Red och andra roliga verktyg! Om du uppskattar guiden gilla / dela den gärna så fler får se den och jag får motivation att fortsätta med kommande delar av guiden.
Installation av Node Red
Node red är en mycket behändig visuell programmerare som bygger på Node.JS, Jag har helt gått ifrån mina egna http loggserver till den här istället, orsaken är att man här kan samla på allt från MQTT flöden till att själv få den att samla data från webbsidor. Node Red har idag över 1000 olika nooder som det bara är att lägga till. En nood är ett färdig ”block” som kan kopplas ihop med andra flöden. Flödet lyssnar på två st DHT22 som kopplats på två olika RPI:er. Dom rapporterar temperatursensorer och luftfuktighet via MQTT varje minut. Resultatet visas sedan under ”LIVE!!”


Ingen kod behövdes skrivas för att uppnå resultatet ovan!!! De två konfigurationerna nedan av noderna är allt som behövs.
Topic sätts till den jag vill visa i grafen ( data kommer via MQTT borkern i guiden)

Jag sätter vilken tab gaugen ska visas i och vilket värde som ska visas {{value}}, dvs det som kommer från MQTT nooden. Mer än så är det inte!

Installation av Node Red
Börja alltid med att se om det finns några uppdateringar. Jag har även fått installationen att fungera på asus tinker board (fick dock köra kommandot bash <(curl -….. osv en bit ner i guiden)
# börja med att uppgradera din RPI sudo apt-get update sudo apt-get upgrade # Se om installationen redan finns på plats, i mitt fall behövdes det inte göras någon installation. sudo apt-get install nodered # 2017-01-14: Uppdaterar till senaste NodeJS och Node-Red på din RPI. Steget kan ta tid! update-nodejs-and-nodered # Fungerar inte kommantod ovan kan du testa att köra följande rad: bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered) # I så fall är det bara att aktivera så att tjänsten alltid startar när din RPI startar sudo systemctl enable nodered.service
Du bör nu se något liknande som nedan om allt gick bra.

( väljer du att köra med kommandot bash <(curl -sL…..) så bör du mötas av en liknande bild nedan när allt är klart.
För att verifiera att tjänsten stoppar och startar som den ska, kör följande:
# Testa att stoppa tjänsten sudo systemctl stop nodered.service # Testa att starta tjänsten. sudo systemctl start nodered.service # bilden nedan kommer du inte att se, den ser du bara om node red startas via CLI och inte som tjänst!

För att verifiera att allt fungerar kan du nu surfa in på din RPI:S ip adress på porten 1880, exempelvis http://10.20.30.40:1880
Du bör nu mötas av följande sida:

Installation av ”noder” (2016-12-18)
Det finns en hel del inbyggt i Node Red, men vissa saker behöver man lägga till för att få den funktionalitet man önskar. Nedan lägger jag till den delen som behövs för att skapa gränssnittet med knappar.

# stoppa node red sudo systemctl stop nodered.service # jag börjar med att installera npm, följ anvisningarna och svara y på frågan om att installera. sudo apt-get install npm # starta node red igen via grässnittet, bara för att se att allt laddas. sudo systemctl start nodered.service #
Efter du öppnat ”Manage Palette” ges fler val till vänster, sök efter ”node-red-contrib-ui”, välj sedan Install”
starta om tjänsten:
# stoppa node red sudo systemctl stop nodered.service # starta node red igen via grässnittet, bara för att se att allt laddas. sudo systemctl start nodered.service
Genom att ange IP till din RPI och avsluta med /UI så har du nu gränssnittet öppet. http://10.20.30.40:1880/ui. Nu är det dags att testa att hämta upp temperaturen från din RPI:s processor och visa den i gränssnittet.
# Kopiera in följande till ditt node red flöde [{"id":"83e56d78.e9fbb8","type":"inject","z":"de1eae93.59ad78","name":"tick 15","topic":"tempC","payload":"","payloadType":"str","repeat":"15","crontab":"","once":false,"x":134,"y":220,"wires":[["6d48d640.ada4b8"]]},{"id":"6d48d640.ada4b8","type":"exec","z":"de1eae93.59ad78","command":"vcgencmd measure_temp","addpay":false,"append":"","useSpawn":"","timer":"","name":"read cpu temperature","x":338,"y":220,"wires":[["8ef3941d.a8e978"],[],[]]},{"id":"8ef3941d.a8e978","type":"function","z":"de1eae93.59ad78","name":"format temperature","func":"msg.payload = Number(msg.payload.slice(5,-3));\nreturn msg;","outputs":"1","noerr":0,"x":584,"y":208,"wires":[["c2962844.58a13","23e60386.46b89c"]]},{"id":"c2962844.58a13","type":"debug","z":"de1eae93.59ad78","name":"","active":true,"console":"false","complete":"false","x":819,"y":206,"wires":[]},{"id":"23e60386.46b89c","type":"ui_gauge","z":"de1eae93.59ad78","tab":"c103edc9.53a33","name":"RPI Temperatur","group":"","order":1,"format":"{{value}}","min":"20.0","max":"70.0","x":834,"y":257,"wires":[]},{"id":"c103edc9.53a33","type":"ui_tab","z":"","name":"Hemma","icon":"dashboard","order":"1"}]

Om koden ovan gick att importera via en clipboard är det bara att trycka på ”Deploy” längs upp till höger.

Nu är allt klart, du har en live uppdaterande graf på http://10.20.30.40:1880/ui likt bilden nedan (10.20.30.40 ändras till adressen till din RPI)
Skicka samma information till Grafana
Om du inte kommer fram till sidan ”http://10.20.30.40:3000” (10.20.30.40 ändras till din RPI:s ip) så kan du behöva starta tjänsten ”systemctl start grafana-server”, Om du inte tidigare konfigurerat Grafana och InfluxDB kommer följande ej att fungera. Kolla i guiden ovan och följ stegen för att kunna använda följande exempel. Genom att addera en funktion till och lägga till en http post så får jag samma information skickad till RPI:ens influxDB, den kommer sedan att visas i Grafana med.
# klistra in följande i ett tomt flöde i Node Red för att få motsvarande resultat som jag (obs fungerar ej på ASUS tinker board) # OBS tänk på att ändra IP 10.20.30.40 till din RPI:s ip med! [{"id":"7719b21e.761cb4","type":"inject","z":"de1eae93.59ad78","name":"tick 15","topic":"tempC","payload":"","payloadType":"str","repeat":"15","crontab":"","once":false,"x":218,"y":172,"wires":[["d800341b.79d688"]]},{"id":"d800341b.79d688","type":"exec","z":"de1eae93.59ad78","command":"vcgencmd measure_temp","addpay":false,"append":"","useSpawn":"","timer":"","name":"read cpu temperature","x":422,"y":172,"wires":[["4fb51c82.7c6d0c"],[],[]]},{"id":"4fb51c82.7c6d0c","type":"function","z":"de1eae93.59ad78","name":"format temperature","func":"msg.payload = Number(msg.payload.slice(5,-3));\nreturn msg;","outputs":"1","noerr":0,"x":668,"y":160,"wires":[["8b7dc6d6.752ff8","fcb22ba8.b61758","6cbb0b71.b8649c"]]},{"id":"8b7dc6d6.752ff8","type":"debug","z":"de1eae93.59ad78","name":"","active":false,"console":"false","complete":"false","x":903,"y":158,"wires":[]},{"id":"fcb22ba8.b61758","type":"ui_gauge","z":"de1eae93.59ad78","tab":"c103edc9.53a33","name":"RPI Temperatur","group":"","order":1,"format":"{{value}}","min":"20.0","max":"70.0","x":928,"y":237,"wires":[]},{"id":"fa2a94a.a4e1768","type":"http request","z":"de1eae93.59ad78","name":"Skicka till Influx","method":"POST","ret":"txt","url":"http://10.20.30.40:8086/write?db=db_automatiserar","tls":"","x":915,"y":330,"wires":[["158ede6.da70022"]]},{"id":"6cbb0b71.b8649c","type":"function","z":"de1eae93.59ad78","name":"Skicka till influxDB","func":"//msg.url =\"http://10.20.30.40:8086/write?db=db_automatiserar\";\nmsg.payload =\"RPI\" + \",DataTyp=CPU\" + \",Rum=UTE\" + \",Datatyp=Temperatur\" + \" value=\" + msg.payload;\nreturn msg;\n","outputs":1,"noerr":0,"x":668,"y":329,"wires":[["fa2a94a.a4e1768"]]},{"id":"158ede6.da70022","type":"debug","z":"de1eae93.59ad78","name":"","active":false,"console":"false","complete":"true","x":1075,"y":328,"wires":[]},{"id":"c103edc9.53a33","type":"ui_tab","z":"","name":"Hemma","icon":"dashboard","order":"1"}] # slut
Genom att öppna nooden ”Skicka itll influxDB” och editera IP där till adressen du har på din RPI är allt klart (OM du har en databas på influxdb som heter db_automatiserar), aktivera debugen genom att trycka på den gröna fyrkanten på msg noden, detta bör ge en statuscode i meddelandet som är ”
”. Får du det är det bara att gå vidare till Grafana.Öppna dashboarden som skapades i RPI guiden (förustätter att du kopplat upp grafana mot InfluxDB enligt guiden ovan). Välj databasen och tryck på ”add query”
När detta är gjort tar du bort den defaulta frågan som ligger på ”A” och kopplar den nya frågan likt nedan. De texter nedan som är markerade med rött ska väljas från vänster till höger som nedan. Nu har du även konfigurerat Grafana 🙂
Om du följt guiden fram tills nu och inte stött på några problem gilla den gärna, och om du kommit hit men stött på problem på vägen gilla den ändå och säg vad som felade.
Installera MQTT på Vera
Jag måste börja med att varna för att följande görs på egen risk och att garantin på din Vera kanske inte gäller sedan, nog med varningar 😀
Tackar bland annat Borkman som gjort de störasta jobbet för den här MQTT guiden 🙂
Guiden visar hur du får Vera att skicka alla events till en MQTT broker, dessa hämtas sedan upp med Node Red.
Börja med att göra en backup av din Vera
Nu är det dags att ladda hem https://github.com/jonferreira/vera-mqtt/archive/master.zip till läm