
94451
13.09.2016, aktualisiert um 13:35:36 Uhr
Mit SPI-Schnittstelle Komunizieren über Node.js
Hi,
ich habe auf meinen Raspberry (3 mit neusten Jessie Lite) Node.js installiert (für HTTP habe ich auch noch Socket.io drauf). Ich will jetzt aber meine ADCs und meine "zusätzlichen" GPIOs über i2c ansprechen...
dafür habe ich auch schöne C-Programme, aber wie schaffe ich jetzt eine verbindung zwischen den node.js und der i2c schnittstelle...
gibt es eine Möglichkeit mit Javascript direkt auf die Hardware zuzugreifen? Wie kann man das "effizient" bewältigen? Ich weiß es gibt viele "fertige" tools, aber die meisten sind eher confus und unübersichtlich und mir zu aufgebläht für meinen verwendungszweck...
in erster Linie will ich 3 dinge tun
1. GPIO Schalten -> also der node.js Server soll einzelne Ports ansprechen... <- nicht die localen GPIOs sondern welche ich über i2c angeschlossen habe (könnte aber auch ein kleines C sein das ich einfach aufrufe: gpio 12 1 [für Port 12 ein])
2. GPIO Lesen -> sobald sich ein gpio verändert soll dies mein node.js Server erfahren
3. ADC Lesen -> auch hier sollen "Änderungen" an den Server geschickt werden.
für alle 3 Anwendungen habe ich bereits n kleines c-Tool... das mir in die Konsole (bzw. beim schreiben über die Konsole) die Informationen ausliest...
welche effiziente Möglichkeit habe ich jetzt diese "tools" zu verbinden und WIE ... oder kann ich das sogar direkt im js machen???
Wie bereits oben erwähnt, möchte ich möglichst Abstand von aufgeblähten Lösungen nehmen...
Diesen "Testserver" habe ich online gefunden... die "Einfachheit" mag ich sehr
<- auch wenn ich hier noch einiges dazu bauen muss / will ist das erstmal eine "GRUNDFUNKTION" jetzt soll eben eigentlich nur eingebaut werden => Schicke ADC/GPIO-Daten und Schalte GPIO-Ports
Vielen Dank für howtos und tipps
gruß RoadRunner
ich habe auf meinen Raspberry (3 mit neusten Jessie Lite) Node.js installiert (für HTTP habe ich auch noch Socket.io drauf). Ich will jetzt aber meine ADCs und meine "zusätzlichen" GPIOs über i2c ansprechen...
dafür habe ich auch schöne C-Programme, aber wie schaffe ich jetzt eine verbindung zwischen den node.js und der i2c schnittstelle...
gibt es eine Möglichkeit mit Javascript direkt auf die Hardware zuzugreifen? Wie kann man das "effizient" bewältigen? Ich weiß es gibt viele "fertige" tools, aber die meisten sind eher confus und unübersichtlich und mir zu aufgebläht für meinen verwendungszweck...
in erster Linie will ich 3 dinge tun
1. GPIO Schalten -> also der node.js Server soll einzelne Ports ansprechen... <- nicht die localen GPIOs sondern welche ich über i2c angeschlossen habe (könnte aber auch ein kleines C sein das ich einfach aufrufe: gpio 12 1 [für Port 12 ein])
2. GPIO Lesen -> sobald sich ein gpio verändert soll dies mein node.js Server erfahren
3. ADC Lesen -> auch hier sollen "Änderungen" an den Server geschickt werden.
für alle 3 Anwendungen habe ich bereits n kleines c-Tool... das mir in die Konsole (bzw. beim schreiben über die Konsole) die Informationen ausliest...
welche effiziente Möglichkeit habe ich jetzt diese "tools" zu verbinden und WIE ... oder kann ich das sogar direkt im js machen???
Wie bereits oben erwähnt, möchte ich möglichst Abstand von aufgeblähten Lösungen nehmen...
Diesen "Testserver" habe ich online gefunden... die "Einfachheit" mag ich sehr
var http = require('http');
var app = http.createServer(function(req, res) {
console.log('createServer');
});
app.listen(3000);
var io = require('/usr/local/lib/node_modules/socket.io').listen(app);
io.on('connection', function(socket) {
io.emit('Server 2 Client Message', 'Welcome!' );
socket.on('Client 2 Server Message', function(message) {
console.log(message);
io.emit('Server 2 Client Message', message.toUpperCase() );//upcase it
});
});
Vielen Dank für howtos und tipps
gruß RoadRunner
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 315133
Url: https://administrator.de/forum/mit-spi-schnittstelle-komunizieren-ueber-node-js-315133.html
Ausgedruckt am: 06.05.2025 um 12:05 Uhr
7 Kommentare
Neuester Kommentar

https://github.com/fivdi/i2c-bus
or
https://nodejs.org/api/child_process.html
Regards
or
für alle 3 Anwendungen habe ich bereits n kleines c-Tool... das mir in die Konsole (bzw. beim schreiben über die Konsole) die Informationen ausliest...
Execute these progs with a child process and read result on stdouthttps://nodejs.org/api/child_process.html
Regards

There are so many examples out there
http://stackoverflow.com/questions/30134236/use-child-process-execsync- ...
You should read the documentation and learn (there are also examples in the doc), instead of copy n paste
, a raspi is just another linux box, so nothing special for node.js.
http://stackoverflow.com/questions/30134236/use-child-process-execsync- ...
You should read the documentation and learn (there are also examples in the doc), instead of copy n paste

bekomme keine Daten, weil mein C ja noch nicht fertig ist...
For this are the asynchronus exec functions (same page).https://nodejs.org/api/child_process.html#child_process_asynchronous_pro ...
Simply subscribe the data event, which continuously handles output for your command.