Nu kan du styra din Tellstick via Node-RED ( node.js )!
Moderator: Telldus
Nu kan du styra din Tellstick via Node-RED ( node.js )!
Hej,
Efter att ha kört själv ett tag så släppte jag nyss en modul till Node-RED publikt. Finns nu tillgängligt på NPM/Github: https://www.npmjs.com/package/node-red- ... -tellstick
Node-RED är ett fantastiskt fint node.js-baserat verktyg för att koppla ihop olika (hårdvaru-)enheter, apier och online-tjänster. Såhär kan det t.ex. se ut:
Här är en liten video på när jag styr min sovrumslampa via Node-RED på min Raspberry https://www.youtube.com/watch?v=qWhjNiy9fuU.
Feedback är alltid välkommet!
Efter att ha kört själv ett tag så släppte jag nyss en modul till Node-RED publikt. Finns nu tillgängligt på NPM/Github: https://www.npmjs.com/package/node-red- ... -tellstick
Node-RED är ett fantastiskt fint node.js-baserat verktyg för att koppla ihop olika (hårdvaru-)enheter, apier och online-tjänster. Såhär kan det t.ex. se ut:
Här är en liten video på när jag styr min sovrumslampa via Node-RED på min Raspberry https://www.youtube.com/watch?v=qWhjNiy9fuU.
Feedback är alltid välkommet!
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Detta är nog en av de coolaste och kraftfullaste lösningarna man kan tänka sig för allahanda automations och informationslösningar. Det finns ju massor av moduler och flows som är gjorda och delade publikt.
Bara ett förtydligande, jag antar att du supportar TellStickDuo?
mvh
Bara ett förtydligande, jag antar att du supportar TellStickDuo?
mvh
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Självklart!krambriw wrote: Bara ett förtydligande, jag antar att du supportar TellStickDuo?
Faktiskt bara testat med en Duo. Men då den snackar mot de officiella API:erna så borde den klara av Tellstick:en också (men då kan du självfallet bara använda out-noden)
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Då är det alltså tveksamt med TellStickNet såvida du inte integrerat med Telldus Live!
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Inte bara tveksamt utan helt omöjligt.
Det här är en modul för Tellstick och Tellstick Duo. Eller som översta raden i README:n lyder: This is a full featured Node-RED module to communicate with a Tellstick or Tellstick Duo.
Det här är en modul för Tellstick och Tellstick Duo. Eller som översta raden i README:n lyder: This is a full featured Node-RED module to communicate with a Tellstick or Tellstick Duo.
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Bra, det var vad jag trodde
Så för att komma igång, alltså med en ren RPi, så börjar man med
och därefter enligt din installationsanvisning på npm?
Räcker det eller måste Node.js installeras först??
Så för att komma igång, alltså med en ren RPi, så börjar man med
Code: Select all
sudo npm install -g node-red
Räcker det eller måste Node.js installeras först??
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Node-RED är en node.js-applikation, så om om du har en helt fräsch Pi så är det första du vill göra installera node.js.
Installera node.js gör du enkelt genom att följa t.ex. den här guiden: http://weworkweplay.com/play/raspberry-pi-nodejs/
Men om det är så att du vill köra Node-RED (och min modul för att styra Tellsticken) så stödjer ännu inte node.js version 0.12.x av Node-RED. Se istället till att installera version 0.10.x. Om du följer guiden ovan så säger den vid ett tillfälle att du ska köra kommandot
gör inte det utan kör istället:
När du väl installerat node.js så har du tillgång till NPM (som då alltså är Node Package Manager) och kan installera Node-RED precis med det kommandot du skrev. Och så kan du installera node-red-contrib-telldus genom att följa guiden. Eller installera någon av de hundratals andra Node-RED-modulerna.
Installera node.js gör du enkelt genom att följa t.ex. den här guiden: http://weworkweplay.com/play/raspberry-pi-nodejs/
Men om det är så att du vill köra Node-RED (och min modul för att styra Tellsticken) så stödjer ännu inte node.js version 0.12.x av Node-RED. Se istället till att installera version 0.10.x. Om du följer guiden ovan så säger den vid ett tillfälle att du ska köra kommandot
Code: Select all
wget http://node-arm.herokuapp.com/node_latest_armhf.deb
Code: Select all
wget http://node-arm.herokuapp.com/node_0.10.36_armhf.deb
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Tack! Superbra, det här blir intressant, jag har redan noterat att det också finns en node för min andra transceiver (RFXtrx433)
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Ja RFX TRX-noden är finfin!
Jag kan även rekommendera Node-REDs Google-grupp. Behöver du hjälp/inspiration/föreslå utveckling/osv så är folk väldigt hjälpsamma! Såväl jag, som Node-RED core-utvecklare och Max som utvecklat RFX TRX-noden är aktiva där https://groups.google.com/forum/#!forum/node-red
Jag kan även rekommendera Node-REDs Google-grupp. Behöver du hjälp/inspiration/föreslå utveckling/osv så är folk väldigt hjälpsamma! Såväl jag, som Node-RED core-utvecklare och Max som utvecklat RFX TRX-noden är aktiva där https://groups.google.com/forum/#!forum/node-red
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
OK, allt kör nu och jag kan styra en lampa (testat bara med en vanlig TellStick än så länge)
Men när jag försöker konfigurera ett existerande device så kraschar node-red med 'cannot find module 'when' '. Har jag missat att installera något???
Men när jag försöker konfigurera ett existerande device så kraschar node-red med 'cannot find module 'when' '. Har jag missat att installera något???
Code: Select all
Welcome to Node-RED
===================
14 Apr 10:40:55 - [info] Node-RED version: v0.10.6
14 Apr 10:40:55 - [info] Node.js version: v0.10.36
14 Apr 10:40:55 - [info] Loading palette nodes
14 Apr 10:41:12 - [warn] ------------------------------------------
14 Apr 10:41:12 - [warn] Failed to register 3 node types
14 Apr 10:41:12 - [warn] Run with -v for details
14 Apr 10:41:12 - [warn] ------------------------------------------
14 Apr 10:41:12 - [info] User Directory : /home/pi/.node-red
14 Apr 10:41:12 - [info] Flows file : /home/pi/.node-red/flows_raspberrypi.json
14 Apr 10:41:12 - [info] Server now running at http://127.0.0.1:1880/
14 Apr 10:41:13 - [info] Starting flows
14 Apr 10:41:13 - [info] Started flows
14 Apr 10:42:11 - [red] Uncaught Exception:
14 Apr 10:42:11 - Error: Cannot find module 'when'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.getParametersValues (/home/pi/.node-red/node_modules/node-red-contrib-tellstick/tellstick/lib/tellstickDevices.js:133:13)
at /home/pi/.node-red/node_modules/node-red-contrib-tellstick/tellstick/tellstick-out.js:305:22
at /home/pi/.node-red/node_modules/node-red-contrib-tellstick/tellstick/lib/tellstickDevices.js:125:4
at /home/pi/.node-red/node_modules/telldus/telldus.js:181:16
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Attans, fel på min sida!
Jag har precis skickat upp en liten bugfix som löser problemet.
Uppdatera modulen genom att:
Dubbelkolla att modulen uppdaterades:
Där bör det nu finnas en katalog som heter "when"
(Tekniskt: Tidigare så låg noder i Node-REDs katalog vilket de gjorde att de kunde använda sig av Node-REDs dependencies. Nu ligger moduler i user home vilket gör att vi inte kan ärva på samma sätt längre)
Jag har precis skickat upp en liten bugfix som löser problemet.
Uppdatera modulen genom att:
Code: Select all
cd /home/pi/.node-red/node_modules
npm update node-red-contrib-tellstick
Code: Select all
cd /home/pi/.node-red/node_modules/node-red-contrib-tellstick/node_modules
ll
(Tekniskt: Tidigare så låg noder i Node-REDs katalog vilket de gjorde att de kunde använda sig av Node-REDs dependencies. Nu ligger moduler i user home vilket gör att vi inte kan ärva på samma sätt längre)
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Hej, tack det fungerar fint nu
En liten fråga?
Jag brukar autostarta processer med hjälp av crontab men lyckas inte riktigt med att starta node-red på detta sätt
Följande kommando i crontab fungerar inte
Däremot går följande men då får jag inte upp min tidigare konfiguration och jag ser inte heller Tellstick noden då längre och jag vill ju helst inte köra under sudo
Har installerat allt med user Pi
En liten fråga?
Jag brukar autostarta processer med hjälp av crontab men lyckas inte riktigt med att starta node-red på detta sätt
Följande kommando i crontab fungerar inte
Code: Select all
@reboot /usr/local/bin/node-red-pi --max-old-space-size=128
Code: Select all
@reboot sudo /usr/local/bin/node-red-pi --max-old-space-size=128
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Här är Node-RED:s preferred way av att autostarta Node-RED: http://nodered.org/docs/getting-started ... ed-on-boot
Stöter du på patrull där så finns det massor av trådar om det i Node-REDs Google Group
Stöter du på patrull där så finns det massor av trådar om det i Node-REDs Google Group
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Tack, jag såg det också men var lite lat och tänkte 'gena över ängen'....lagt in pm2 nu och då fungerar autostart naturligtvis bra. Dessutom verkar Node-RED återstartas automatiskt om den kraschar vilket också är bra (hur är det möjligt att jag lyckas fingra på funktioner som kraschar???. I detta fall var det TCP noderna jag labbade med)
I övrigt att säga: klart imponerande, kul att dra in olika informationer från olika håll och kombinera; 1-wire, Tellstick, RFXtrx, MQTT, TCP/UDP osv,
En fundering: Det vore läckert om man kunde skriva noder också i python (har massor av det sen tidigare) som alternativ till att behöva skriva om allt i javascript. Dessutom skulle python vara bättre i ett avseende, multi-threading
mvh
I övrigt att säga: klart imponerande, kul att dra in olika informationer från olika håll och kombinera; 1-wire, Tellstick, RFXtrx, MQTT, TCP/UDP osv,
En fundering: Det vore läckert om man kunde skriva noder också i python (har massor av det sen tidigare) som alternativ till att behöva skriva om allt i javascript. Dessutom skulle python vara bättre i ett avseende, multi-threading
mvh
Re: Nu kan du styra din Tellstick via Node-RED ( node.js )!
Det här verkar ju sjukt smidigt, måste provas så fort jag kommer hem!
Kan jag äntligen uppfylla min dröm att få ljusen i mitt tv rum att släckas så fort jag startar vlc i fullskärm med detta tro? Har lite problem med det eftersom rpin som tellsticken är inkopplad på inte är den enheten jag använder när jag kollar på filmer osv på, det är gör jag genom en annan dator, går det att få de att samarbeta tror ni?
Bra jobbat iaf!
Kan jag äntligen uppfylla min dröm att få ljusen i mitt tv rum att släckas så fort jag startar vlc i fullskärm med detta tro? Har lite problem med det eftersom rpin som tellsticken är inkopplad på inte är den enheten jag använder när jag kollar på filmer osv på, det är gör jag genom en annan dator, går det att få de att samarbeta tror ni?
Bra jobbat iaf!