Getting started with Node.JS on Intel Edison

Da ich im Rahmen einer Semesterarbeit mit dem Intel Edison zu tun hatte, habe ich Euch hier mal kurz und bündig die notwendigen Schritte zusammengefasst, um auf dem Intel Edison Node.js – Anwendungen zu entwickeln und auszuführen.

 Als Betriebssystem auf meinem eigenen Rechner verwende ich Ubuntu 14.04, aber Intel stellt selbst auch Anleitungen bereit für Mac OSX (Hier) und Windows (Hier). Auf dem Edison läuft Linux Yocto, dass extra für solche Embedded Systeme initiiert wurde.

Schritt 1.) Kauft Euch einen Intel Edison mit Breakout Board

Zurzeit gibt es 2 Breakout-Boards:

  • Ein großes (genannt „Arduino Breakout Kit“) mit allen möglichen Anschlüssen, die insbesondere für Entwickler gedacht sind, die auf dem Edison mit Arduino Anwendungen arbeiten wollen

Intel Edison Arduino Breakout Kit

  • Ein kleines (genannt „Mini Breakout Kit“) , dass sich prinzipiell erstmal an alle richtet. Beide Breakout-Boards unterscheiden sich in der Anzahl der Anschlüsse, die Möglichkeiten den Edison zu verwenden sind jedoch bei beiden gleich, da beide diesen als Basis nutzen.

Intel Edison Mini Breakout Kit

Ich werde im folgenden mit dem Mini Breakout Kit arbeiten, da ich mit Arduino hier nichts am Hut habe.

Schritt 2.) Anschluss

  • Der Intel Edison wird einfach auf das Breakout Board gesteckt und mit den beiligenden Muttern handfest fixiert. Intel selbst schreibt, dass diese Muttern nicht wirklich wichtig sind, da der Stecker der den Edison mit dem Breakout Board verbindet bereits ziemlich fest sitzt. Das kann ich nur bestätigen ^^.
  • Am Breakout Board sind 2 Micro-USB Anschlüsse vorhanden. Beide müssen in den PC eingesteckt werden. Bei mir wollte das Breakout Board erst angehen, als ich den unteren (aus Sicht des abgebildeten Bildes) Anschluss genutzt habe. Ich vermute daher, dass er für die Stromversorgung genutzt wird. Für das Flashen der Firmware in Schritt 3 werden definitiv beide Anschlüsse gebraucht, später kann es gut sein, dass es ausreicht nur den Stromanschluss zu nutzen. Ich werde dies noch genauer herausfinden und hier ergänzen.

 

Schritt 3.) Das Flashen der Firmware

  • Wenn Ihr alles richtig angeschlossen habt, erscheint nun ein neues Laufwerk mit dem Namen „Edison“
  • Öffnet dieses Laufwerk. Falls dort bereits Dateien vorhanden sind müssen diese gelöscht werden, da sie (vermutlich) eine veraltete Version von Yocto Linux enthalten.
    • Dazu gebt Ihr folgendes in die Konsole ein:

cd /media/[username]/Edison

also bei mir Beispielsweise:

cd /media/jan/Edison/

  • Anschließend müsste Ihr alle Dateien mit den folgenden Befehlen löschen:

„rm –rf *“  (dies löscht alle sichtbaren Dateien)

und

„rm –rf \.*“ (dies löscht alle unsichtbaren Dateien)

  • Ladet Euch von hier das aktuelle Yocto-Linux System herunter und entpackt die darin enthaltenen Dateien auf das Laufwerk des Intel EdisonAuswahl-001Auswahl-001
  • Für den nächsten Schritt benötigen wir nun zuerst das Programm „screen“. Um es zu installieren, öffnet nun die Konsole und gebt folgendes ein:

sudo apt-get update

sudo apt-get install screen

  • Anschließend könnt Ihr auf den Edison mit Hilfe der Konsole zugreifen. Dazu folgendes in die Konsole eingeben:

sudo screen /dev/ttyUSB0 115200

  • Wenn alles gut gelaufen ist, seht Ihr erst einmal gar nichts auf der Konsole. Das soll nicht weiter verwunderlich sein, einfach 2x Enter drücken und schon taucht Yocto-Linux auf.
  •  Als Benutzernamen gebt Ihr „root“ ein und das Passwortfeld bestätigt Ihr einfach mit Enter.
  • Anschließend muss folgender Befehl eingegeben werden, um den Edison dazu zu bewegen das neue Yocto Linux zu installieren.

„reboot ota“

  • Der Edison rödelt nun eine ganze Weile, startet neu und anschließend seit Ihr wieder bei der Login-Maske.

Schritt 4.) Installation der Entwicklungsumgebung Intel XDK IoT Edition

  • Intel stellt für die Entwicklung mit Node.JS eine „eigene“ Entwicklungsumgebung mit dem kryptischen Namen „Intel XDK IoT Edition“ bereit, dessen Editor auf dem Editor „Brackets“ basiert.
  • Ladet Euch die Entwicklungsumgebung hier herunter. Beim Klick auf „Download Go!“ landet Ihr auf einer übersichtlichen HTML5-Seite, die die Entwicklungsumgebung zuerst in Euren Browser lädt und Euch dazu sogar noch einen schicken Ladebalken anzeigt :O
  • Nach dem Download der Entwicklungsumgebung entpackt Ihr diese und wechselt mit der Konsole in das Verzeichnis in dem die entpackten Dateien liegen, also z.B. in den Ordner „Downloads“

cd Downloads/iot_web_linux64/

  • Die Installation startet ihr mit folgendem Befehl:

./install.sh

  • Alles weitere macht das Installationsskript für Euch. Folgt einfach den Anweisungen auf dem Bildschirm. Evtl. müsst ihr euer Root-Passwort eingeben, das kommt ganz drauf an was ihr bei „Select Installation mode“ ausgewählt habt. User selection-001
  • Nach erfolgreicher Installation könnt ihr über Dash nach XDK suchen und die Entwicklungsumgebung ausführen. (Windows-Taste drücken, XDK eingeben, auf das Logo von Intel XDK IoT Edition klicken)
  • Leider verlangt das Tool, dass man sich einen Nutzeraccount bei Intel anlegt, was uns aber nicht weiter aufhält. Wer mag kann hier auch Fakedaten eingeben und bei Bedarf eine E-Mailadresse von 10minutemail.com nehmen. Diese E-Mailadressen sind immer nur für 10 Minuten erreichbar und werden anschließend zerstört. Ideal also, um Werbung von Zwangsregistrierungen abzuwehren.

Schritt 5.) Finish

  • Glückwunsch! An diesem Punkt sind wir soweit unsere ersten Anwendungen für den Edison zu entwickeln. Wer möchte kann sich noch kurz durch die IDE führen lassen und ein paar (4 insgesamt) Punkte abklappern, die das Programm für wichtig hält. Wenn Ihr ein neues Projekt erstellt habt, könnt Ihr es auf euren Edison übertragen, indem Ihr in der unteren Hälfte der Entwicklungsumgebung euren Edison auswählt und Wahlweise mit einem Klick auf Build (Alle benötigten Pakete werden automatisch installiert und anschließend wird euer Projekt ausgeführt) oder Upload (Das Projekt wird nur übertragen und ausgeführt) das Projekt starten.

Auswahl-001

  • Alles weitere ist NodeJS-Sache und gehört meines Erachtens nicht in diese kurze Einführung.

Ich hoffe ich konnte Euch weiterhelfen und wir hören schon bald von vielen vielen Edison-Anwendungen 😉

 

Gruß

 

JR