Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] ps4-waker/ NPM Modul von Github installieren/ (TV via HDMI CEC einschalten)

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    918

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

[gelöst] ps4-waker/ NPM Modul von Github installieren/ (TV via HDMI CEC einschalten)

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascriptblockly
37 Beiträge 9 Kommentatoren 8.3k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Z Offline
    Z Offline
    zuldero
    schrieb am zuletzt editiert von
    #19

    achso xD so simpel ein trennstrich. an sowas denke ich nicht facepalm

    aber trotzdem ich bekomme die selbe fehrlermeldeung.

    also so ist schon richtig oder:

    /usr/lib/node_modules/ps4-waker/bin$ node cmd.js -b 192.168.0.16

    1 Antwort Letzte Antwort
    0
    • StabilostickS Offline
      StabilostickS Offline
      Stabilostick
      schrieb am zuletzt editiert von
      #20

      You may also use -d to specify the IP address of a specific machine.

      Du machst -b. Das ist das binden an ein lokales Netzwerkinterface. Mach -d

      1 Antwort Letzte Antwort
      0
      • Z Offline
        Z Offline
        zuldero
        schrieb am zuletzt editiert von
        #21

        Haleluja es klappt :) Danke tausendfach für deine hilfe xD heute hab ich mal wieder einiges gelernt.

        sollte irgendwann später jemand das hier lesen, und nach machen wollen. mit der ps second screen app sich autenfizieren hat bei mir nicht funktioniert. ich musste: node cmd.js –pin xxxxxxxx (der pincode muss ohne lehrzeichen eingetippt werden) eintippen.

        1 Antwort Letzte Antwort
        0
        • StabilostickS Offline
          StabilostickS Offline
          Stabilostick
          schrieb am zuletzt editiert von
          #22

          Freut mich.

          PS: Was Ist denn Dein aktuelles Lieblingsspiel? Bin gerade noch über Detroit.

          1 Antwort Letzte Antwort
          0
          • Z Offline
            Z Offline
            zuldero
            schrieb am zuletzt editiert von
            #23

            aktuell spiel ich gerade fortnite (mehr rettet doe welt weniger battle), rocket league, und ich freu mich mega auf das co-op uptate von no man sky in 20 tagen

            Gesendet von meinem ONEPLUS A5000 mit Tapatalk

            1 Antwort Letzte Antwort
            0
            • Z Offline
              Z Offline
              zuldero
              schrieb am zuletzt editiert von
              #24

              eine letzte frage habe ich noch. am ende von jedem code beispiel steht: ps4.close

              was macht das genau? bei mir funktioniert dass auch ohne

              1 Antwort Letzte Antwort
              0
              • StabilostickS Offline
                StabilostickS Offline
                Stabilostick
                schrieb am zuletzt editiert von
                #25
                     /*
                     * Immediately close any active connection to this Device
                     */
                    close() {
                        if (this._socket) {
                            this._socket.close();
                        }
                        this.__waker = null;
                    }
                

                Netzwerkverbindung/Port/Ressourcen abbauen/freigeben. Ordnung muss sein.

                Mach doch mal im ersten Beitrag eine Titeländerung und schreibe da was von dem PS4-Waker und gelöst rein. Interessiert vielleicht auch später andere.

                1 Antwort Letzte Antwort
                0
                • K Offline
                  K Offline
                  Kuddel
                  schrieb am zuletzt editiert von
                  #26

                  Ich habe den PS-Waker jetz erfolgreich mit meiner Konsole verbunden.

                  Unter "Einstellungen der Verbindung über die mobile APP" wird jetzt "PS4 Waker ioBrok" angezeigt.

                  WIe kann ich die Konsole jetzt starten / stoppen?

                  Wünschenswert wäre ein Blockly Skript

                  EDIT:

                  Über die Konsole habe ich die PS4 über folgenden Befehler starten bzw. stoppen können:

                  /opt/iobroker/node_modules/iobroker.javascript/node_modules/ps4-waker/bin# node cmd.js
                  
                  
                  /opt/iobroker/node_modules/iobroker.javascript/node_modules/ps4-waker/bin# node cmd.js standby
                  
                  
                  1 Antwort Letzte Antwort
                  0
                  • Z Offline
                    Z Offline
                    zuldero
                    schrieb am zuletzt editiert von
                    #27

                    dann solltes du die ps nun so steuern können.

                    PS. hilf doch bitte noch kurz @Luke er möchte den ps waker auch installieren, und ich weiss mitlerweile nicht mehr alle einzelnen schritte xD (is schon ne zeit her) ~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201811 ... 080876.jpg">https://uploads.tapatalk-cdn.com/20181110/1bacefbad71f6cdccf54af7d35080876.jpg</link_text>" />

                    Gesendet von meinem ONEPLUS A5000 mit Tapatalk~~

                    1 Antwort Letzte Antwort
                    0
                    • K Offline
                      K Offline
                      Kuddel
                      schrieb am zuletzt editiert von
                      #28

                      Gerade die Exec Befehle getestet, es tut sich leider nix.

                      Zur Kontorller habe ich im Verzeichnis/opt/iobroker/node_modules/iobroker.javascript/node_modules/ps4-waker/binnochmal````
                      node cmd.js

                      
                      Damit ging die PS4 wieder an…
                      1 Antwort Letzte Antwort
                      0
                      • Z Offline
                        Z Offline
                        zuldero
                        schrieb am zuletzt editiert von
                        #29

                        hast du im javascript adapter unter module den ps4-waker eingetragen? oder per npm instal installiert? deste dass mal wenn er dort eingetragen ist, ev. "kennt" der javscript adaper ihn sonst nicht.

                        Gesendet von meinem ONEPLUS A5000 mit Tapatalk

                        1 Antwort Letzte Antwort
                        0
                        • K Offline
                          K Offline
                          Kuddel
                          schrieb am zuletzt editiert von
                          #30

                          3467_java.png

                          1 Antwort Letzte Antwort
                          0
                          • Z Offline
                            Z Offline
                            zuldero
                            schrieb am zuletzt editiert von
                            #31

                            genau so meine. sorry dann weiss ich auch nicht weiter. habs ja wie man oben sehen kann auch nur mit hilfe hingekriegt.

                            Gesendet von meinem ONEPLUS A5000 mit Tapatalk

                            1 Antwort Letzte Antwort
                            0
                            • D Offline
                              D Offline
                              Denzel1994
                              schrieb am zuletzt editiert von
                              #32

                              Braucht man irgendwie root-Access damit das ganze in ioBroker funktioniert?

                              Wenn ich das ganze nämlich im Terminal-Adapter versuche bekomme ich die Meldung, obwohl die Konsole bereits registriert ist:
                              > Device must be awake for initial registratration. Please turn it on manually and try again.

                              Sudo-Befehle gehen bei mir garnicht im Terminal-Adapter. Siehe Screenshot.
                              16901_bildschirmfoto_2019-01-05_um_23.13.35.png

                              Wenn ich das ganze aber per SSH von meinem Mac aus versuche klappt es ohne Probleme.
                              16901_bildschirmfoto_2019-01-05_um_23.15.47.png

                              Das Resultat ist aber, dass folgende Befehle in Java nichts bewirken, da ich ja selbst über den Terminal-Adapter in ioBroker die PS4 nicht starten kann:

                              exec("ps4-waker standby")
                              exec("ps4-waker")
                              
                              1 Antwort Letzte Antwort
                              0
                              • Z Offline
                                Z Offline
                                zuldero
                                schrieb am zuletzt editiert von
                                #33

                                also bei der terminal instanz kannst du einstellen das sie unter admin läuft. damit sollte glaube ich sudo befehle erlaubt werden (glaube ich). dies hat jedoch glaube ich noch nichts mit dem javascript adaper zu tun.

                                Auch bei diesem kannst du in der instanzeinstellung "erlaube das Kommando "exex"" aktivieren.

                                ich hoffe dies hilft dir. [emoji39]

                                Gesendet von meinem ONEPLUS A5000 mit Tapatalk

                                1 Antwort Letzte Antwort
                                0
                                • D Offline
                                  D Offline
                                  Denzel1994
                                  schrieb am zuletzt editiert von
                                  #34

                                  Also das Terminal Problem konnte ich durch Installation des wetty-Adapters beheben. Dort klappt es nämlich mit root-Berechtigungen.

                                  Jetzt kann ich dort die PS4 mit folgenden Befehlen Ein-/Ausschalten:

                                  ! ````
                                  cd /opt/iobroker/node_modules/iobroker.javascript/node_modules/ps4-waker/bin
                                  node cmd.js
                                  node cmd.js standby

                                  
                                  Auch das Testskript zum Abfragen des Status in Javascript funktioniert:
                                  
                                  >! ````
                                  const {Device} = require('ps4-waker');
                                  >! var ps4 = new Device();
                                  ps4.getDeviceStatus().then((result) => {
                                      console.log(JSON.stringify(result, null, 2));
                                      ps4.close()}
                                  );
                                  

                                  und liefert bei bspw. ausgeschalteten PS4 folgenden Output:

                                  ! ````
                                  javascript.0 script.js.Tests.Skript_1: { "type": "device", "statusLine": "620 Server Standby", "statusCode": "620", "status": "Standby", "host-id": "F8461C4206A7", "host-type": "PS4", "host-name": "PS4-Lars", "host-request-port": "997", "device-discovery-protocol-version": "00020020", "system-version": "06200011", "address": "192.168.178.8", "port": "997" }

                                  
                                  Aber mit den EXEC befehlen in einen Javascript tut sich garnichts:
                                  
                                  >! ````
                                  exec("ps4-waker standby")
                                  exec("ps4-waker")
                                  

                                  Auch eine Blockly-Skript wie du es hier gepostet hast führt zu keinem Resultat:

                                  ! 16901_1bacefbad71f6cdccf54af7d35080876.jpg

                                  Selbstverständlich ist auch "ps4-waker" unter Module im Javascript-Adapter eingetragen.

                                  Muss ich bei den EXEC-Befehlen irgendwas besonderes beachten oder davor setzen?

                                  PatrickP 1 Antwort Letzte Antwort
                                  0
                                  • D Denzel1994

                                    Also das Terminal Problem konnte ich durch Installation des wetty-Adapters beheben. Dort klappt es nämlich mit root-Berechtigungen.

                                    Jetzt kann ich dort die PS4 mit folgenden Befehlen Ein-/Ausschalten:

                                    ! ````
                                    cd /opt/iobroker/node_modules/iobroker.javascript/node_modules/ps4-waker/bin
                                    node cmd.js
                                    node cmd.js standby

                                    
                                    Auch das Testskript zum Abfragen des Status in Javascript funktioniert:
                                    
                                    >! ````
                                    const {Device} = require('ps4-waker');
                                    >! var ps4 = new Device();
                                    ps4.getDeviceStatus().then((result) => {
                                        console.log(JSON.stringify(result, null, 2));
                                        ps4.close()}
                                    );
                                    

                                    und liefert bei bspw. ausgeschalteten PS4 folgenden Output:

                                    ! ````
                                    javascript.0 script.js.Tests.Skript_1: { "type": "device", "statusLine": "620 Server Standby", "statusCode": "620", "status": "Standby", "host-id": "F8461C4206A7", "host-type": "PS4", "host-name": "PS4-Lars", "host-request-port": "997", "device-discovery-protocol-version": "00020020", "system-version": "06200011", "address": "192.168.178.8", "port": "997" }

                                    
                                    Aber mit den EXEC befehlen in einen Javascript tut sich garnichts:
                                    
                                    >! ````
                                    exec("ps4-waker standby")
                                    exec("ps4-waker")
                                    

                                    Auch eine Blockly-Skript wie du es hier gepostet hast führt zu keinem Resultat:

                                    ! 16901_1bacefbad71f6cdccf54af7d35080876.jpg

                                    Selbstverständlich ist auch "ps4-waker" unter Module im Javascript-Adapter eingetragen.

                                    Muss ich bei den EXEC-Befehlen irgendwas besonderes beachten oder davor setzen?

                                    PatrickP Offline
                                    PatrickP Offline
                                    Patrick
                                    schrieb am zuletzt editiert von
                                    #35

                                    @Denzel1994 habe das gleich Problem. konntest du es lösen?

                                    1 Antwort Letzte Antwort
                                    0
                                    • K Offline
                                      K Offline
                                      kimbel55
                                      schrieb am zuletzt editiert von
                                      #36

                                      Ich muss den Thread leider noch mal hoch holen und hoffe auf eure Hilfe.
                                      Ich kriege den Adapter im Iobroker nicht zum laufen, auf Debian Ebene funktioniert es ohne Probleme.
                                      Wenn ich es jedoch über den IoBroker versuche egal ob über npm install oder das Modul im Javascript Adapter eintrage. Es wird einfach kein /bin erzeugt somit kann ich den rest nicht ausführen.

                                      Der Scriptaufruf funktioniert und liefert auch Ergebnisse im Log:

                                      const {Device} = require('ps4-waker');
                                       
                                      var ps4 = new Device();
                                      ps4.getDeviceStatus().then((result) => {
                                          console.log(JSON.stringify(result, null, 2));
                                          ps4.close()}
                                      );
                                      

                                      aber ich kann im Terminaladapter nicht weitermachen weil es das /bin Verzeichnis nicht gibt. Weiß jemand rat?

                                      Danke

                                      S 1 Antwort Letzte Antwort
                                      0
                                      • K kimbel55

                                        Ich muss den Thread leider noch mal hoch holen und hoffe auf eure Hilfe.
                                        Ich kriege den Adapter im Iobroker nicht zum laufen, auf Debian Ebene funktioniert es ohne Probleme.
                                        Wenn ich es jedoch über den IoBroker versuche egal ob über npm install oder das Modul im Javascript Adapter eintrage. Es wird einfach kein /bin erzeugt somit kann ich den rest nicht ausführen.

                                        Der Scriptaufruf funktioniert und liefert auch Ergebnisse im Log:

                                        const {Device} = require('ps4-waker');
                                         
                                        var ps4 = new Device();
                                        ps4.getDeviceStatus().then((result) => {
                                            console.log(JSON.stringify(result, null, 2));
                                            ps4.close()}
                                        );
                                        

                                        aber ich kann im Terminaladapter nicht weitermachen weil es das /bin Verzeichnis nicht gibt. Weiß jemand rat?

                                        Danke

                                        S Offline
                                        S Offline
                                        Sil4s
                                        schrieb am zuletzt editiert von
                                        #37

                                        Hi @kimbel55 ,

                                        ich habe genau das gleiche Problem wie du und habe gefühlt alle Beiträge, die ich zu dem Thema im Internet gefunden habe, 100 mal gelesen.

                                        Auch im issue thread (https://github.com/dhleong/ps4-waker/issues?q=is%3Aissue+is%3Aclosed) auf GitHub war nichts Brauchbares dabei...

                                        Egal auf welche Weise ich den ps4-waker installiert und das NPM-Modul in JS eingebunden habe, war auf meinem Pi nie die cmd.js bzw. das /bin Verzeichnis zu finden.
                                        Im JSScript liefert mir der getDeviceStatus code auch alles ordnungsgemäß zurück, aber starten oder stoppen geht nicht.
                                        ed5df4a5-4b2f-4510-a952-54c3f65c6a40-image.png Auch der exec command klappt nicht und es sieht wie bei euch aus.

                                        Über die Konsole vom Pi klappt es aber mit den einfachen commands "npx ps4-waker", "ps4-waker", "ps4-waker standby".
                                        Leider ließ sich ein simples Shell script mit dem Aufruf nicht sofort in iobroker einbinden und musste etwas tüfteln.

                                        Jetzt habe ich aber eine robuste und zuverlässige Lösung für die Einbindung in Alexa gefunden, die sogar echt fix die PS4 per Sprachbefehl startet und in standby schickt.

                                        Es führen ja bekanntlich viele Wege nach Rom, aber bei mir klappt es nun mit folgendem Umweg:

                                        1. PS4Switch in Node-RED Alexa Home Skill Bridge (https://alexa-node-red.bm.hardill.me.uk/devices#) anlegen
                                        8965d3d9-95dd-435d-bc06-4def1fe989e3-image.png
                                        2. PS4StateSzene in ioBroker anlegen

                                        • wird getriggerd von PS4Switch (alexa)
                                          6206cc88-0952-4618-b3fc-52b5ba268a20-image.png
                                          3. Blocky Script für On | Off temp files
                                        • wird getriggerd von PS4StateSzene
                                        • erzeugt eine temporäre On oder Off datei im filesystem
                                          cat >> /opt/iobroker/node_modules/iobroker.javascript/node_modules/ps4-waker/On
                                          cat >> /opt/iobroker/node_modules/iobroker.javascript/node_modules/ps4-waker/Off
                                          52ae0df4-3c95-4f3d-bbc1-d28a5dee2358-image.png

                                        4. ps4-waker-monitor.sh Script erstellen

                                        • Prüft dauerhaft ob eine On oder Off Datei erstellt wurde
                                        • Falls ja wird der ps4-waker Befehl ausgeführt und die Datei gelöscht

                                        Rechte:
                                        dddbaf56-9648-44de-a2b5-ce4c16e98133-image.png

                                        #!/bin/bash
                                        # set n to 1
                                        n=1
                                        
                                        # continue until $n equals 5
                                        while [ $n -le 50 ]
                                        do
                                        
                                        file1="/opt/iobroker/node_modules/iobroker.javascript/node_modules/ps4-waker/On"
                                        file2="/opt/iobroker/node_modules/iobroker.javascript/node_modules/ps4-waker/Off"
                                        
                                        if [ -f "$file1" ]
                                        then
                                        	echo "Try to start PS4 - $file1 found."
                                        	sudo rm $file1
                                        	ps4-waker
                                        	sleep 5.0
                                        else
                                        	#echo "Nothing to do, $file1 not found."
                                        	sleep 0.1
                                        fi
                                        if [ -f "$file2" ]
                                        then
                                        	echo "Try to stop PS4 - $file2 found."
                                        	sudo rm $file2
                                        	ps4-waker standby
                                        	sleep 5.0
                                        else
                                        	#echo "Nothing to do, $file2 not found."
                                        	sleep 0.1
                                        fi
                                        sleep 0.5
                                        done
                                        

                                        5. ps4-waker-monitor.sh Script schedulen

                                        • hiermit wird das script automatisch bei jedem Neustart ausgeführt.
                                        sudo crontab -e
                                        @reboot [Pfad/zum/Befehl]
                                        

                                        Es gibt bestimmt elegantere Lösungen, aber ich bin hiermit wirklich glücklich. Bin jetzt komplett von der ioBroker Cloud zu Node-RED umgestiegen und bin begeistert. Der ioBroker Cloud und IoT Adapter war bei mir leider nie so richtig zuverlässig in Verbindung mit Alexa. Meine Lösung für den ps4-waker wäre damit gelaufen, aber sicherlich mit großer Verzögerung. Jetzt wird aber nachdem ich den Sprachbefehlt abgesetzt habe, der Befehl nach ca. 5 Sekunden an die PS4 gesendet. :)

                                        1 Antwort Letzte Antwort
                                        0
                                        Antworten
                                        • In einem neuen Thema antworten
                                        Anmelden zum Antworten
                                        • Älteste zuerst
                                        • Neuste zuerst
                                        • Meiste Stimmen


                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        737

                                        Online

                                        32.6k

                                        Benutzer

                                        82.2k

                                        Themen

                                        1.3m

                                        Beiträge
                                        Community
                                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                        ioBroker Community 2014-2025
                                        logo
                                        • Anmelden

                                        • Du hast noch kein Konto? Registrieren

                                        • Anmelden oder registrieren, um zu suchen
                                        • Erster Beitrag
                                          Letzter Beitrag
                                        0
                                        • Home
                                        • Aktuell
                                        • Tags
                                        • Ungelesen 0
                                        • Kategorien
                                        • Unreplied
                                        • Beliebt
                                        • GitHub
                                        • Docu
                                        • Hilfe