Showing Posts From

Javascript

Guide to Installing Node.js on a Raspberry Pi

Guide to Installing Node.js on a Raspberry Pi

Node.js is a open source platform to create network applications using JavaScript. The applications are executed on the server and not as usual on the client in the browser. Integrated modules, such as the HTTP-module, enable the realisation of web servers. Additional modules can be simply installed using the supplied package manager npm. Update 04.09.2016: - Added further, alternative guideContent Install Node.js - Option #1 (Raspberry Pi B+ and older)As a first step you need to download the ARM package that is optimised for Node.js.wget http://node-arm.herokuapp.com/node_latest_armhf.debNode.js can now be installed usingsudo dpkg -i node_latest_armhf.debNode.js and the package manager npm are now installed. You can check the installed version unsing node -v. Install Node.js - Option #2 (Raspberry Pi 2/3 and newer)Add the Node.js source to your package list.curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -Node.js can now be installed usingsudo apt-get install -y nodejs You can check the installed version unsing nodejs -v.Test Node.js with a "Hello World" applicationCreate a JavaScript file usingsudo nano helloWorld.js and add the following code:var http = require('http'); http.createServer(function (request,response) { response.writeHead(200, {'Content-Type': 'text/plain'}); response.end('Hello World!\n'); }).listen(8000) console.log('Web Server running at http://127.0.0.1:8000');Execute the script with:node helloWorld.jsOpen the browser and go to the address.http://IP-Adresse-des-Raspberry:8000/

IFTTT Aktionen mit Amazon Dash Button auslösen - raspberry pi linux
  • 04 Sep, 2016
  • 4 Min. Lesezeit

IFTTT Aktionen mit Amazon Dash Button auslösen - raspberry pi linux

Amazon hat letzte Woche endlich den Amazon Dash Button in Deutschland released. Was ist der Dash Button? Ein kleiner Knopf (ca. 6cm) der mit deinem Wlan verbunden wird. Per Knopfdruck kannst du dann ein bestimmtes Produkt über Amazon bestellen. Das hört sich erstmal nicht sehr spannend bzw. nützlich an. Wie wäre es, wenn du mit dem Knopf eine beliebige IFTTT Aktion triggern kannst. Wer IFTTT nicht kennt. Dort kannst du ein Auslöser(trigger) und eine Aufgabe festlegen, die dann ausgeführt werden soll. Ein Beispiel wäre, speichere alle Facebook-Bilder auf denen du getagt wurdest in deiner Dropbox. Update: 04.11.2016 Ifttt hat seinen Service komplett umgestellt. Recipe heißen jetzt Applets und Benutzer können zur Zeit keine eigenen erstellen. Was sehr sehr schade ist. :( Falls es wieder möglich ist eigene Maker Recipe/Applets zu erstellen, werde ich die Anleitung aktualisieren. In diesem Beitrag zeige ich dir, wie du den Dash Button mit deinem Wifi einrichtest ohne das ein Produkt bestellt wird und Installieren das Programm Dasher, das dann eine IFTTT Aktion triggert. Die Anleitung funktioniert mit einem Raspberry Pi, oder auch einem Debian/Ubuntu Linux Rechner. Wichtig ist noch, dass es bis jetzt zwei verschiedene Modelle des Amazon Dash Button gibt (Modelnr. neu JK29LP, alt JK76PL). Diese Anleitung funktioniert nur mit dem neuen Model. Wenn ihr jetzt ein Dash Button bei Amazon bestellt ist es die neue Version. Der Dash Button muss mit deinem Wifi verbunden werden. Dazu benötigst du ein Smartphone mit Bluetooth. Schalte Bluetooth ein und öffne die normale Amazon App. Hier ein kurzes Video von diesem Ablauf. Wichtig ist am Ende kein Produkt auszuwählen, da du sonst mit jedem Knopfdruck das Produkt bestellst.Jetzt kommen wir zum Teil der im Terminal ausgeführt wird. Dazu musst du eine SSH Verbindung zum Raspberry Pi/Linux Rechner herstellen.Als erstes werden die Paketlisten neu eingelesen und installieren die benötigten Programme git & libpcap-dev. sudo apt-get update && sudo apt-get install git libpcap-devDu benötigst des weiteren die aktuelle Version von Node.js (v6.5.0). Ausführliche Anleitung Node.js Quelle zu deinen Paketlisten hinzufügen. curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - Jetzt kannst du Node.js installieren. sudo apt-get install -y nodejsAls nächstes kannst du das Node.js Programm "Dasher" herunterladen und installieren. Navigiere mit cd ~/ in dein Home-Verzeichnis und lade/clone Dasher von Github. git clone https://github.com/maddox/dasher.git Navigiere in das Dasher Verzeichnis cd dasher Jetzt müssen noch die von Dasher benötigten Programme/Dependencies installiert werden. npm installDasher benötigt die MAC Address von deinem Dash Button. Diese kannst du einfach herausfinden. Log dich in dein Router ein und schau unter verbundene Geräte. Du kannst auch das mitgelieferte Programm "find_button" verwenden. script/find_button Drück nach dem Start von "find_button" den Dash Button. Es sollte dir die MAC-Adresse angezeigt werden. Kopiere dir die MAC-Adresse und beende das Programm mit ctrl+c am Mac, oder strg+c bei Windows.Jetzt muss du noch Dasher konfigurieren. Erstelle eine config.json Datei im Ordner config. nano config/config.json Kopiere folgenden Code hinein und ersetze die MAC-Adresse und dein IFTTT Maker Chanel Key.{"buttons":[ { "name": "Dash1", "address": "MAC-Adresse-Deines-Dash-Button", "url": "https://maker.ifttt.com/trigger/dashbutton/with/key/Dein-Ifttt-Maker-Key", "method": "POST", "json": true, "body": {"value1": "any value", "value2": "another value"} } ]}Erstelle eine IFTTT Recipe mit IFTTT Maker Chanel als Trigger. Die Aktion kannst du frei wählen. Ich verwende im Beispiel Pushbullet als Aktion. Du musst darauf achten, dass bei Schritt 3 als "Event Name" dashbutton eingetragen wird. Das hast du mit der erstellten config Datei festgelegt "url": "https://maker.ifttt.com/trigger/dashbutton/with/key/dhROi2qDmIo693c$. Wenn du weitere Dash Buttons mit IFTTT verbinden willst, müssen sich die url's unterscheiden (dashbutton1, dashbutton2, …).Starte Dasher und drück den Knopf um zu testen ob alles funktioniert. Wenn alles funktioniert, sollte im Terminal "Dash1 pressed" stehen und deine zuvor erstellte IFTTT Aktion ausgeführt werden. In meinem Fall eine Pushnachricht auf mein iPhone über Pushbullet. sudo npm run start Mit ctrl+c am Mac, oder strg+c bei Windows kannst du das Programm beenden. Wenn man den Terminal schließt, wird auch Dasher beendet. Im nächsten Artikel werde ich beschreiben, wie das Dasher Programm beim Start mit ausgeführt wird und so immer im Hintergrund mit läuft (autostart Node.js Script). Ich bin gespannt welche Aufgaben sich damit umsetzen lassen. Schreibt euer IFTTT Recipe in die Kommentare.

Node.js auf dem Raspberry Pi installieren

Node.js auf dem Raspberry Pi installieren

Node.js ist eine Open-Source-Plattform, zum erstellen von Netzwerkanwendungen die in JavaScript geschrieben werden. Die Anwendungen werden Server-seitig ausgeführt und nicht wie "normal" Client-seitig im Browser. Integrierte Module wie z.B. das HTTP-Modul, ermöglichen die Realisierung von Webserver. Weitere Module können einfach mit dem Paketmanager npm installiert werden. Update 16.03.2020: - Variante 1 für ARM6 Chip aktualisiert Update 04.09.2016: - weitere Variante hinzugefügtInhalt Node.js installieren Variante #1 (ARM6: Raspberry Pi B+, Raspberry Pi Zero und älter)Prüfe mit dem Befehl uname -m ob dein Raspberry Pi einen ARM6 Chip hat. Der Befehl sollt etwas wie armv6l ausgeben.Lade dir das ARM6 optimierte Node.js installations Paket herunter. Node.js v8.x:wget https://nodejs.org/dist/latest-v8.x/node-v8.17.0-linux-armv6l.tar.xz Node.js v10.x:wget https://nodejs.org/dist/latest-v10.x/node-v10.19.0-linux-armv6l.tar.xzEntpacke das Archiv.tar xvf node-v8.17.0-linux-armv6l.tar.xz # oder tar xvf node-v10.19.0-linux-armv6l.tar.xzWechsel in den Ordner wohin du die Dateien entpackt hast...cd node-v8.12.0-linux-armv6l/ # oder cd node-v10.19.0-linux-armv6l/... und kopiere die Node.js und NPM Dateien in die System Ordner /usr/bin/ und /usr/lib/sudo cp -R bin/* /usr/bin/ && sudo cp -R lib/* /usr/lib/Node.js und der Paketmanager npm sind nun installiert. Mit node -v und npm -v kannst du überprüfen welche Version installiert ist. Node.js installieren Variante #2 (Raspberry Pi 2 / 3 und neuer)Node.js Quelle zu deinen Paketlisten hinzufügen. Node.js v6.x:curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - Node.js v8.x:curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - Node.js v10.x:curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - Node.js v11.x:curl -sL https://deb.nodesource.com/setup_11.x | sudo -E bash - Wenn du die folgende Fehlermeldung folge den Schritten für ältere Raspberry Pi Modelle. "You appear to be running on ARMv6 hardware. Unfortunately this is not currently supported by the NodeSource Linux distributions. Please use the ‘linux-armv6l’ binary tarballs available directly from nodejs.org for Node.js v4 and later."Jetzt kannst du Node.js mit folgendem Befehl installieren.sudo apt-get install -y nodejs Mit nodejs -v kannst du überprüfen welche Version installiert ist.Node.js testen mit einem Hello World ProgrammErstelle eine Javascript Datei mitsudo nano helloWorld.js und füge folgenden Javascript Code hinein.var http = require('http'); http.createServer(function (request,response) { response.writeHead(200, {'Content-Type': 'text/plain'}); response.end('Hello World!\n'); }).listen(8000) console.log('Web Server running at http://127.0.0.1:8000');Führe das Script ausnode helloWorld.jsÖffne den Browser und rufe folgende Adresse auf.http://IP-Adresse-des-Raspberry:8000/