So installieren Sie node.js mit GPIO


11

Ich versuche auch node.jsauf meinem Raspberry Pi zu installieren GPIO.

Ich verwende eine brandneue Installation von Debian Jessie

Ich könnte nodejs v.0.10.29 installieren lassen. Egal was ich mache, dies ist so ziemlich das neueste Paket, das ich installieren konnte, auch wenn viele der von mir gelesenen Beiträge von Version 4.0.0 sprechen.

Allerdings läuft v0.10.29 und ich könnte einen einfachen http-Server ausführen.

Das Problem tritt auf, wenn ich versuche, GPIO zu installieren. Ich habe folgendes versucht;

  • rpi-gpio
  • pi-gpio
  • an aus

Ich kann keinen von ihnen zum Laufen bringen und habe alles ausprobiert, was ich im Internet finden konnte, um das Problem zu beheben. Ich habe so ziemlich alles versucht.

Da ich wahrscheinlich viele Dinge durcheinander gebracht habe, habe ich das Betriebssystem Debian {Ed: Raspbian} Jessie neu installiert und werde es noch einmal versuchen.

Was kann ich von dort aus tun, nachdem mein Betriebssystem installiert wurde, damit dies funktioniert?

Jeder hat eine gute Anleitung dafür - weil mir wahrscheinlich etwas fehlt, oder?

Wenn jemand bereit ist zu helfen, würde ich gerne den Anweisungen folgen und alle Fehlermeldungen posten, die ich erhalte, denn bisher ist dies alles, was ich bekommen habe.

Also werde ich wohl anfangen mit:

sudo apt-get update

Was kommt als nächstes?

EDIT # 1 Nodejs v0.10.29 ist installiert

Ich habe Nodejs installiert, wie von Joan vorgeschlagen:

wget https://nodejs.org/dist/v4.3.1/node-v4.3.1-linux-armv6l.tar.xz
tar xf node-v4.3.1-linux-armv6l.tar.xz  
cd node-v4.3.1-linux-armv6l/ 
sudo cp -R * /usr/local

nodejs -v 

ist zurückgekommen;

v0.10.29

EDIT # 2 pi-gpio installieren

Nachdem dieser Knoten installiert ist, habe ich versucht, eine LED an Pin 18 einzuschalten, und habe den folgenden Fehler erhalten:

module.js:340 
throw err; 
^ 
Error: Cannot find module 'pi-gpio' 
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.<anonymous> (/home/pi/NODE/http.js:22:12) 
at Module._compile (module.js:456:26) 
at Object.Module._extensions..js (module.js:474:10) 
at Module.load (module.js:356:32) 
at Function.Module._load (module.js:312:12) 
at Function.Module.runMain (module.js:497:10)

Also habe ich pi-gpio mit npm installiert;

sudo npm install pi-gpio

Ich erhalte jetzt diesen Fehler.

Error when trying to open pin 18
/bin/sh: 1: gpio-admin: not found

Error when trying to close pin 18
/bin/sh: 1: gpio-admin: not found

Also werde ich jetzt gpio-admin installieren.

Und hier wird es chaotisch, weil gpio-admin alt ist und nicht auf dem Debian Jessie installiert wird. Wenn also jemand einen Weg finden kann, eine LED von Nodejs unter Debian Jessie einzuschalten, wäre das großartig.

Antworten:


7

Zum Beispiel, um RPi nodejs Version 4.3.1 zu installieren (siehe unten für andere Versionen)

wget https://nodejs.org/dist/v4.3.1/node-v4.3.1-linux-armv6l.tar.xz
tar xf node-v4.3.1-linux-armv6l.tar.xz  
cd node-v4.3.1-linux-armv6l/ 
sudo cp -R * /usr/local

Überprüfen Sie die Installation mit

node -v

Verschiedene Versionen sind unter https://nodejs.org/dist/ verfügbar.

Stellen Sie für den Pi2B sicher, dass Sie einen Linux-Arm7l-Build herunterladen, für alle anderen Pis stellen Sie sicher, dass Sie einen Linux-Arm6l-Build herunterladen.


Vielen Dank, dass Sie diese Version versuchen werden. Bisher hat mir dieser Distributor immer 404 zurückgegeben.
MadeInDreams

Ja, ich bekomme immer noch eine 404-Antwort
MadeInDreams

1
Ich habe diese Anweisungen kurz vor dem Posten befolgt und das wget ohne Probleme wiederholt. Können Sie nodejs.org anpingen?
Joan

ja, ich kann. Muss ich sudo wget?
MadeInDreams

1
Nein, sudo ist nicht erforderlich (es würde keinen 404-Fehler geben). Stellen Sie sicher, dass Sie die Wget-Linie ausschneiden und einfügen. Möglicherweise bevorzugen Sie eine spätere Version. Schauen Sie in nodejs.org/dist nach und stellen Sie sicher, dass Sie eine arm6l-Version herunterladen. Ich bin mir nicht sicher, ob 6l auch auf einem Pi2B funktioniert.
Joan

2

Ich habe herausgefunden, wie ich komme *GPIO* arbeiten kann *Nodejs*.

Lassen Sie mich Ihnen sagen, dass dies alles andere als Plug and Play war.

**OS** : *Raspbian Jessie*

**Nodejs**: *Version 4.3.1* (Gutschrift an Joan)

Beachten Sie, dass Sie alle alten Installationen von entfernen sollten *Nodejs* .

Ich habe *npm*mit dem folgenden Befehl aktualisiert ;

sudo npm install -g npm@latest

Dann habe ich installiert *gpio v0.2.7*;

 sudo npm install gpio

und bekam die folgende Warnung;

npm WARN enoent ENOENT: no such file or directory, open '/home/pi/package.json'

Also muss ich mich darum kümmern.

Dann habe ich installiert *rpi-gpio*;

sudo npm install rpi-gpio

Habe immer noch die Warnung über package.json . Zu diesem Zeitpunkt funktionierte mein Skript. Ich konnte den Server erreichen und mein LED-Licht ging an.

Andere Installationen, die ich aufgrund von Warnungen und Fehlern vorgenommen habe:

sudo npm install graceful-fs@^4.0.0
sudo npm install node-gyp

Ich bin mir nicht sicher, ob die letzten beiden Installationen bei Bedarf installiert wurden, aber es hat letztendlich funktioniert. Vielleicht möchten Sie das versuchen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.