Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Steuerung von allen Android Geräten (inkl. Android TV z.B. nvidia shield tv)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Steuerung von allen Android Geräten (inkl. Android TV z.B. nvidia shield tv)

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      sauerstofff @bort last edited by sauerstofff

      Ich schließe mich hier "noch später :D" mal an.
      In meinem unraid Docker lässt sich adb nicht installieren.
      Gibt es noch jemanden, der das hier aktiv verwendet?

      Screenshot_2.png

      G 1 Reply Last reply Reply Quote 0
      • B
        Berzi last edited by

        Danke für den thread hier, das hat mir meine Automatisierung nun endlich auch mal automatisiert! 😄

        Nur woher habt ihr die keycodes/keyevents?
        Ich nutze derzeit den keycode_power zum an und ausschalten der Shield. Jedoch muss es noch andere shutdown Befehle geben. Schalte ich sie mit der Fernbedienung aus, so beendet die Shield auch gemäß meinen Einstellungen auch den TV und AVR. Nur mit dem adb keycode_power scheint sie mir eher nur schlafen zu gehen.
        Kennt ihr noch einen anderen keycode?

        Danke!

        1 Reply Last reply Reply Quote 0
        • I
          Ice86 last edited by

          hallo zusammen,

          gibt es eigentlich eine möglichkeit den status einer android tv box zu erfragen? speziell, wenn die box ausgemacht wird, würde ich das gerne hinkriegen, um eine aktion ausführen zu können.

          so wie ich das bis jetzt hier überflogen habe, kann sowohl der umweg über adb als auch über den PAW adapter nur an die Box senden, aber nichts empfangen, richtig?

          anpingen der box ist leider keine option -.-

          S 1 Reply Last reply Reply Quote 0
          • S
            sauerstofff @Ice86 last edited by

            @ice86
            Da bei mir adb (erstmal) nicht läuft habe ich durch Zufall festgestellt, dass es auf meinem Shield ganz gut mit Chromecast geht.
            Dort kann ich verschieden Status abfragen u.a. ob der Shield An ist, oder im Standby, ob gerade etwas gespielt wird (z.B. Netflix o.ä.), die aktuelle laustärke uvm.
            Damit steuere ich aktuell meine umliegende Peripherie. Bisher keine Ausfälle oder Anomalien 👍

            I 1 Reply Last reply Reply Quote 0
            • I
              Ice86 @sauerstofff last edited by

              @sauerm eeehm.... details? 😄 wenn möglich... bitte! 😄

              S 1 Reply Last reply Reply Quote 0
              • S
                sauerstofff @Ice86 last edited by

                @ice86
                Ich schaue morgen gern mal genauer 🙂
                Hast du die Möglichkeit Chromecast auf deiner Android Box zu installieren? 🙂
                Wenn ja, brauchst du nur den Chromecast Adapter im Broker. Wenn er den Client nicht automatisch findet, kannst du ihn manuell hinzufügen. Anschließend werden alle Datenpunkte zum Endgerät automatisch angelegt.

                I 1 Reply Last reply Reply Quote 0
                • I
                  Ice86 @sauerstofff last edited by

                  @sauerm ich schaue heute abend mal nach, aber denke, dass es gehen sollte mit chromecast!

                  aah, jetzt versteh ich das auch. also chromecast adapter für iobroker, chormecast app auf die Mi Box S und dann quasi schauen, wie sich die Werte im Adapter ändern wenn die Box an/aus ist.

                  S 1 Reply Last reply Reply Quote 0
                  • S
                    sauerstofff @Ice86 last edited by sauerstofff

                    @ice86 Ja genau 😊
                    Klappt es denn?
                    Bei der MiBox geht es ja vielleicht auch über ADB, das klappt beim nvidia Shield nicht so gut/einfach. Daher bin ich mit dieser Lösung recht zufrieden.strikethrough text

                    EDIT: siehe Folgepost

                    1 Reply Last reply Reply Quote 0
                    • G
                      GreatEMU @sauerstofff last edited by GreatEMU

                      @sauerm sagte in Steuerung von allen Android Geräten (inkl. Android TV z.B. nvidia shield tv):

                      Ich schließe mich hier "noch später :D" mal an.
                      In meinem unraid Docker lässt sich adb nicht installieren.
                      Gibt es noch jemanden, der das hier aktiv verwendet?

                      Screenshot_2.png

                      Ich würde mich gerne in das Thema mit rein hängen.

                      Bei mir ist das gleiche Problem.
                      Kann ich überhaupt die ADB-Tools in einem Docker installieren oder benötige ich einen ADB-Server in einem separatem Docker?

                      Über Hinweise wäre ich sehr froh.

                      Update 29.03.21: Um die ADB-Tools im ioBroker lauffähig zu bekommen muss man sich lediglich das Installations-zip bei Google herunterladen und in einem Verzeichnis auf dem ioBroker entpacken.
                      Mit der entsprechenden Pfad-Angabe kann man denn den jeweiligen Befehl ausführen.
                      (Geht vielleicht auch mit dem setzen einer PATH-Angabe)
                      @sauerm

                      1 Reply Last reply Reply Quote 1
                      • S
                        sauerstofff last edited by sauerstofff

                        Ich habe es nun auch hinbekommen - allerdings bin ich mittlerweile auf einen Pi4 gewechselt. Im Docker läuft nur noch mein Backup.

                        Auf dem Pi ist es relativ simpel. Auch die Aktivierung von ADB auf dem ShieldTV ist mittlerweile relativ einfach. Hierzu gibt es zahlreiche, kurze Tutorials.

                        Eine Übersicht der Befehle habe ich hier gefunden.

                        Mein Skript sieht nun so aus:

                        var Name, Initialisation, Description, Type, Role, SmartName, Text_Alexa, Alexa_Notification, Message, timeout;
                        
                        function Create_DP(Name, Initialisation, Description, Type, Role, SmartName) {
                            createState(Name, Initialisation, {
                              name: Description,
                              read: true, 
                              write: true, 
                              type: Type, 
                              role: Role,
                              smartName: SmartName
                            });
                        
                        }
                        
                        function SendAdbKey(keycode)
                        {
                            exec('adb connect 10.1.1.25:5555');
                            exec('adb shell input keyevent "' + keycode + '"');
                        }
                         
                        function SendAdbPower()
                        {
                            SendAdbKey('KEYCODE_POWER');
                        }
                         
                        function SendAdbHome()
                        {
                            SendAdbKey('KEYCODE_HOME');
                        }
                        
                        
                        function CheckAdbPowerState()
                        {
                            exec('adb connect 10.1.1.25:5555');
                            exec('adb shell \'dumpsys power | grep -e "mWakefulness="\'',function (error, stdout, stderr) {
                                setState("0_userdata.0.Devices.WZ.ShieldTV.info.state", stdout.replace('mWakefulness=',''));
                            });
                        }
                        
                        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                        
                        Create_DP('0_userdata.0.Devices.WZ.ShieldTV.info.state', '', 'Power State', 'string', 'state','');
                        Create_DP('0_userdata.0.Devices.WZ.ShieldTV.power.switch', false, 'Power Switch', 'boolean', 'switch','Shield T.V.');
                        
                        schedule("*/5 * * * * *", async function () {
                            CheckAdbPowerState();
                        });
                        
                        on({id: '0_userdata.0.Devices.WZ.ShieldTV.power.switch'}, function (obj) {
                            SendAdbPower();
                        });
                        

                        Über den DP "state" kann der Zustand des Shield abgefragt werden ("Awake", "Asleep", "Dreaming")

                        1 Reply Last reply Reply Quote 0
                        • miyagi
                          miyagi last edited by

                          @sauerstofff Vielen Dank für das tolle Skript, ich habe es trotz meiner absoluten Unwissenheit bzgl. Javascript ohne Fehlermeldungen zum laufen gebracht.

                          Es funktioniert sowohl der Home Switch, als auch der Power Switch wenn ich diese manuell oder über ein Blockly-Skript auslöse.

                          Was leider nicht funktioniert, ist das auslesen des Zustands vom DP "state". Wenn dieser "Asleep" ist, soll der Power Switch ausgelöst werden:

                          blockly.png

                          Es funktioniert aber nicht so wie abgebildet mit dem Inhalt des grünen Text-Blocks ("Asleep"). Wenn ich den unter Objekte aus dem DP heraus kopiere, habe ich in der Zwischenablage " Asleep" (2 Leerzeichen davor). Das Gleiche ist es bei " Dreaming" und " Awake". Wenn ich den kopierten Text mit Leerzeichen in den Text-Block einfüge passiert auch nichts. Also werden dort vielleicht Leerzeichen ignoriert oder in Wirklichkeit sind es andere Zeichen die da noch davor stehen und nicht korrekt kopiert werden?

                          blockly2.png

                          Hat vielleicht jemand eine Idee wie ich das Problem lösen kann?

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate
                          FAQ Cloud / IOT
                          HowTo: Node.js-Update
                          HowTo: Backup/Restore
                          Downloads
                          BLOG

                          789
                          Online

                          31.7k
                          Users

                          79.8k
                          Topics

                          1.3m
                          Posts

                          10
                          20
                          8980
                          Loading More Posts
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes
                          Reply
                          • Reply as topic
                          Log in to reply
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                          The ioBroker Community 2014-2023
                          logo