NEWS
Pythonscript auf Raspberry Pi für 433MHz Sender
-
Hallo zusammen,
ich würde gerne auf meinem Raspberry Pi über einen 433MHz Sender meine Funksteckdosen schalten.
Dazu verwende ich folgendes Pythonscript von Milaq: https://github.com/milaq/rpi-rf
Wenn ich per SSH auf dem Raspberry unterwegs bin funktioniert das mitgelieferte Script auch wunderbar:
~~https://pasteboard.co/HxYZwOE.png" />
https://pasteboard.co/HxYZwOE.png
Wenn ich das jetzt aber von ioBroker via Javascript ausführen möchte bekomme ich folgende Fehlermeldung:
~~https://pasteboard.co/HxZ0zWa.png" />
https://pasteboard.co/HxZ0zWa.png
Für mich erschließt sich das so, als könnte er die Python-Referenzen nicht auflösen, allerdings habe ich keine Idee wie ich das lösen kann.
~~https://pasteboard.co/HxZ1rUT.png" />
https://pasteboard.co/HxZ1rUT.png
Hat jemand einen Tipp für mich?
MfG
caspa~~~~~~
-
Hallo
Ist unter den Javascript Adapter - Einstellungen "Erlaube das Kommando exec" Aktiviert?
ggf
Gibt es auch noch das Modul "ssh2" um SSH Kommandos auszuführen, in die leer Zeile einfügen unter Javascript Adapter - Einstellungen.
Gruß Bluemoon
-
Hallo,
das exec command an sich funktioniert und ist im adapter freigegeben. Ein sudo reboot now funktioniert damit auch unproblematisch.
Dann probiere ich heute abend mal das ssh2 command.
Danke.
-
__Ich bin inzwischen etwas schlauer, aber noch nicht weiter.
das beispielscript erwartet python3, iobroker führt das aber damit anscheinend nicht aus und damit kann der die referenz nicht auflösen, oder kennt das installierte paket dazu nicht
~~https://pasteboard.co/Hy2SLdb.png" />
https://pasteboard.co/Hy2SLdb.png
Selbst bei expliziter angabe im script komme ich nicht weiter.
~~https://pasteboard.co/Hy2TvQl.png" />
https://pasteboard.co/Hy2TvQl.png
script: https://github.com/milaq/rpi-rf/blob/ma … pi-rf_send~~~~__ ~~~~EDIT: Ich habe das Problem anders gelöst.
Ich verwende jetzt das NPM Package https://www.npmjs.com/package/rpi-433.
Mein Script sieht damit so aus:
var rpi433 = require('rpi-433'), rfEmitter = rpi433.emitter({ pin: 0, pulseLength: 350 }); rfEmitter.sendCode(86100, function(error, stdout) { if(!error) console.log(stdout); });
Danke trotzdem für die Hilfe…~~~~