Bluetooth PocketPC Remotecontrol

  • ist zwar nicht wirklich ein Plugin aber denk das passt hier recht gut.
    (wenn die mods anderer Meinung sind, dann bitte verschieben)


    Was das Programm kann:


    Es läuft auf einem PocketPC und kommuniziert über eine TCP Verbindung mit einem Server auf dem PC. Ob das nun Bluetooth oder WLAN oder was auch immer ist ist im Grunde egal. Hauptsache Netzwerk. Wenn der PDA Bluetooth Network encapsulation unterstützt isses ganz einfach, wenn nicht, dann kann man mit der Linux Butze ne Dial Up Verbindung herstellen


    Eine Unterstützung für natives Bluetooth ist geplant, aber mangels unterstützung durch .NET nocht nicht verfügbar.


    Die eigentlichen Funktionen erhält der Server durch Plugins. Um den VDR zu steuern gibts also ein SVDRP Plugin, dass wie der Name sagt über SVDRP den VDR steuert.


    Der Client auf dem PocketPC enthält die grundlegenden Funktionen einer Fernbedienung. Dazu gibts noch n viewer für timer und Aufnahmen (mit löschfunktion).


    Als weiteres Plugin gibts ein MPlayer Plugin. Es erlaubt das abspielen von Videos und Musikdateien. Organisiert in einer virtuellen Verzeichnisstruktur und mit Playlist unterstützung.
    Aufgrund des momentanen Mangels an DVB hab ich dem MPlayer Plugin noch analoges TV begebracht.


    Bis auf das analoge TV sollte das MPlayer Plugin auch unter Windows funktionieren.



    Sowohl Client als auch Server brauchen eine .NET Runtime... (im Falle des Servers also Mono)


    falls nun das ganze noch jemanden interessiert gibts hier
    die sourcen und binaries


    http://static-void-main.de/home/projects/projects.aspx
    -> MultiPlugin Tool (ich weis blöder Name)

  • Hallo,


    sowas ähnliches hab ich auch mal angefangen. Warum baust Du nicht ein Plugin im VDR was direkt via TCP mit dem PPC kommuniziert?


    Ich habe noch etwas Code für so ein Plugin, das liefert zB das ganze OSD als XML, was man dann an den Client schicken könnte. Dann hätte man quasi ein komplettes remote OSD auf dem PPC...


    Lars

  • 1. kann ich kein c(++)


    und


    2. soll(te) das teil auch noch mehr können.


    (kann es ja prinzipiell auch. Braucht nur n Plugin)


    möglich ist zwar prinzipiell alles, aber mir hats so erstma gereicht, weil OSD hab ich ja am TV. Und um die restlichen Funktionen (Timer erstellen...) kann man auch n Windows Form packen.

  • Hallo,


    das hört sich interessant an - aber wie bekomme ich das auf der Linux-Kiste ans Laufen?


    mono MultiPlugger.exe


    wollte ein Plugins-Verzeichnis sehen, also hab' ich das Verzeichnis angelegt und das vdr-plugin dort abgeworfen.


    In SVDRPClient.xml hab' ich VDRAddress von vdrbutze in localhost geändert.


    "mono MultiPlugger.exe" läuft jetzt und ist laut "netstat -apn" mit dem SVDRP-Port des VDR verbunden. Aber ich kann nicht sehen, auf welchem Port es auf die Verbindung vom PocketPC wartet. Welchen Port muss ich beim PocketPC-Client einstellen?


    Michael

    Ubuntu 12.04, yaVDR-PPAs, Kernel 3.7, Mystique SaTiX-S2 Sky Xpress.

  • sry, dass ich jetzt erst antworte. Ich hab nur Netz im Büro.


    hmm ich hätts noch etwas besser beschreiben sollen.
    Für die Kommunikation mit "außen" brauchst du noch das Telnet Plugin.
    Das lauscht standardmäßig auf Port 8888. Es legt auch beim start eine telnet.xml an, in der du den Port und auch das Interface (default: 0.0.0.0) ändern kannst.


    Wenn du das ganze als daemon laufen lassen willst empfehle ich screen.


    ich habs zumindest nicht ander hinbekommen.


    screen -d -m ./MultiPlugger.exe


    MfG
    Ello

  • Hallo ello,


    yuppi yuppi - jetzt geht's!


    PPCControl.exe möchte offenbar die IP-Adresse wissen, mit dem Rechnernamen geht's hier nicht (vxUtil bekommt den Rechnernamen aufgelöst, also scheint das schon richtig konfiguriert zu sein).


    Sehr schick - fast keine Verzögerung vom Tastendruck bis zur entsprechenden Reaktion. Und der PocketPC-Client hat weniger als 100k, das Linux-Teil weniger als 200k. Als ZIP-Dateien sind's weniger als 30k.


    Ich versuch mich mal an einer Mini-Anleitung:


    Von http://static-void-main.de/ unter Projekte -> MultiPlugin-Tool das Binary herunterladen (zur Zeit MultiPlugger)


    Datei entpacken (unzip) und ein Unterverzeichnis namens "Plugins" erstellen.


    Dorthin das VDR-Plugin und das Telnet-Plugin entpacken (die IPluggerPlugin.dll und license.txt sind jeweils gleich).


    mono ./MultiPlugger.exe -verbose -log=screen


    starten und dann wieder mit Ctrl-C beenden. Dadurch werden im Plugins-Verzeichnis zwei Dateien namens SVDRPClient.xml und telnet.xml erstellt. In der SVDRPClient.xml sollte man bei VDRAddress den Namen oder die IP-Adresse des Rechners angeben, auf dem VDR läuft. In der telnet.xml kann man den telnet-Port einstellen (Default ist 8888 ).


    Anschliessend wieder


    mono ./MultiPlugger.exe -verbose -log=screen


    starten.


    Den Client für PocketPC auf dem PocketPC entpacken und starten. Choose: socket wählen und unter Configure die IP-Adresse und den Port (8888 ) des Rechners einstellen, auf dem MultiPlugger läuft.


    Michael

    Ubuntu 12.04, yaVDR-PPAs, Kernel 3.7, Mystique SaTiX-S2 Sky Xpress.

  • Hallo,


    ich habe leider leinen PocketPC aber ein Symbian handy mit bluetooth. Kann man das auch für Symbian umsetzen?


    Gibt es schon eine Möglichkeit für Symbian?


    Gruß,
    Chris

    <font color="#0000ff">Gigabyte P35-DS3, Pentium E2140, GT220, 2 x DVB-C im Thermaltake DH101<br>gen2vdr V3 &amp; yaVDR 0.3.0a <br></font>

  • elmicha
    danke für das howto.
    Ja der PocketPC möchte die IPAdresse haben.


    Bitte mal Feedback geben, was noch so verbessert werden kann. (oder was es noch für Plugins geben könnte)


    Den Client fürn PocketPC könnte man auch noch etwas kleiner machen, in dem ich die einzelnen Clients (Mplayer, VDR, ...) auch als Plugins einbinde.
    Viel brings aber nicht, wird evtl etwas übersichtlicher, wenn man nicht alles braucht.


    Ich nutz z.B. momentan nur das MPlayer Plugin, weil ich keinen VDR hier hab.
    Hab auch zu Hause noch n einfaches Plugin, um Systemkommandos auszuführen (kann momentan nur "halt", ich nehm das um den Rechner runterzufahren).




    Für Symbian hab ich die schnelle das gefunden:
    http://www.symbian.com/developer/development/vb.html


    ist aber Bezahlware.



    und die Lösung über TCP/IP ist momentan eine Notlösung, weil .NET noch kein Bluetooth kann, bzw .NET 2.0 (das dann auch Bluetooth kann ist noch Beta).


    Sobal .NET 2.0 final ist kommt auch ne Unterstützung für natives Bluetooth. Schon die Sache mit dem DialUp ist mit etwas nervig.
    Kann dein PDA BNEP, elmicha?


    MfG
    Ello

  • Hallo Ello,


    ich fänd's praktisch, wenn die Pakete auch einen Paketnamen hätten, nicht nur eine Nummer.


    Der Server braucht (hier) manchmal ein bisschen lang, bis er telnet anbietet:



    Beim Client wär's praktisch, wenn er sich nicht nur IP-Adresse und Port merken würde, sondern auch dieses "Socket" (oder natürlich diese Auswahlbox ganz weg, solange es nur eine Möglichkeit gibt).


    Beim VDR-Plugin vermisse ich auf der Main-Seite noch den Back-Button, den brauche ich schon recht häufig. Evtl. passt der OK-Button ja zwischen Up und Down, und an die Stelle des OK-Buttons könnte dann der Back-Button hin.


    Ich weiss nicht, welche Teile der Channels-Seite schon gehen sollen; ich schreib's einfach mal auf:


    Bei List Timer bekomme ich reproduzierbar:


    Code
    PPCControl.exe
    MissingMethodException
    
    
    Application::Run+0xf
    Form1::Main+0xa


    List Recordings zeigt schonmal die Aufnahmen mit den Zeiten an, aber nach dem letzten Zeichen in jeder Zeile wird ein Quadrat angezeigt (ich benutze VDR 1.3.34 mit aio und bigpatch, evtl. hat sich das Format der SVDRP- Antworten geändert?). Abspielen (auf dem TV!) gibt's noch nicht.


    List Channels braucht hier ziemlich lang (vielleicht solange eine "Sanduhr" einblenden?) und zeigt hier nur einen Teil der Kanäle an (anscheinend jedes Mal einen anderen Teil). Das Umschalten klappt aber. Bei "WDR Köln" fehlt das "ö".


    Die Numpad-Seite funktioniert einwandfrei - auch mit zusammengesetzten Kanalnummern gibt's kein Problem.


    Wie kann ich rauskriegen, ob mein Kistchen BNEP kann? Bei der Ausgabe von "sdptool records ..." ist es nicht dabei. Um .NET 2.0 zu installieren, müsste ich wohl eine ganze Menge RAM opfern (.NET 1.x ist wohl bei Windows Mobile 2003 SE schon im ROM). Geht das irgendwie, dass der Client dann auch noch mit .NET 1.x läuft?


    Viele Grüsse...
    Michael

    Ubuntu 12.04, yaVDR-PPAs, Kernel 3.7, Mystique SaTiX-S2 Sky Xpress.

  • Zitat

    Original von elmicha
    Hallo Ello,


    ich fänd's praktisch, wenn die Pakete auch einen Paketnamen hätten, nicht nur eine Nummer.


    wie ist das gemeint? Meinst du jetzt die ZIPs zum download? ja das kann ich machen...


    Zitat


    Der Server braucht (hier) manchmal ein bisschen lang, bis er telnet anbietet:


    ja das is normal, der initialisiert die plugins der reihe nach. Er wartet immer bis das Plugin richtig initalisiert ist und geht dann erst zum nächsten. Das initialisieren vom svdrp plugin braucht 1 bis 2 sekunden, da es sich erstmal zum VDR verbindet um zu guggen ob der da is. Erst wenn das geklappt hat gibt es sein ok zurück an den Pluginmanager und der macht dann mit dem nächsten weiter.
    Das ist also By Design so.


    Zitat


    Beim Client wär's praktisch, wenn er sich nicht nur IP-Adresse und Port merken würde, sondern auch dieses "Socket" (oder natürlich diese Auswahlbox ganz weg, solange es nur eine Möglichkeit gibt).


    Hab ich auch schon überlegt, da es manchmal nervt immer den Kram auszuwählen.


    Zitat


    Beim VDR-Plugin vermisse ich auf der Main-Seite noch den Back-Button, den brauche ich schon recht häufig. Evtl. passt der OK-Button ja zwischen Up und Down, und an die Stelle des OK-Buttons könnte dann der Back-Button hin.


    Ok das könnt ich ändern. Ich navigier ned so viel im Menü, und wenn dann drück ich eben 2x auf Menü. Ich versuch mal ob Platz ist.


    Zitat


    Ich weiss nicht, welche Teile der Channels-Seite schon gehen sollen; ich schreib's einfach mal auf:


    Bei List Timer bekomme ich reproduzierbar:


    Code
    PPCControl.exe
    MissingMethodException
    
    
    Application::Run+0xf
    Form1::Main+0xa


    Upps, das sollte nich sein. Bei mir ging alles. Ich hab allerdings noch den 1.3.20. Da hat sich inzwischen wohl ein bisschen was getan im Ausgabeformat. Aber die obige Exception deutet wohl auf was anderes hin.
    Ich versuch rauszufinden was das ist.


    Zitat


    List Recordings zeigt schonmal die Aufnahmen mit den Zeiten an, aber nach dem letzten Zeichen in jeder Zeile wird ein Quadrat angezeigt (ich benutze VDR 1.3.34 mit aio und bigpatch, evtl. hat sich das Format der SVDRP- Antworten geändert?). Abspielen (auf dem TV!) gibt's noch nicht.


    das Quadrat wird irgendein Sonderzeichen/Steuerzeichen sein, was so als Text nicht angezeigt werden kann. Weis jetzt nich, ob das an der neuen Version liegt.


    Zitat


    List Channels braucht hier ziemlich lang (vielleicht solange eine "Sanduhr" einblenden?) und zeigt hier nur einen Teil der Kanäle an (anscheinend jedes Mal einen anderen Teil). Das Umschalten klappt aber. Bei "WDR Köln" fehlt das "ö".


    ja sind ne Menge sender. Ein Cache währe wohl auch nicht die schlechteste Idee. Das da welche fehlen, und vorallem immer andere ist seltsam. Da läuft wohl was beim Parsen der Antworten schief. Wird wohl an der neuen VDR Version liegen.


    Zitat


    Die Numpad-Seite funktioniert einwandfrei - auch mit zusammengesetzten Kanalnummern gibt's kein Problem.


    fein


    Zitat


    Wie kann ich rauskriegen, ob mein Kistchen BNEP kann? Bei der Ausgabe
    von "sdptool records ..." ist es nicht dabei.


    Dann kanns er wohl auch nich. Also machstes genauso wie ich mit dem DialUp.


    Zitat


    Um .NET 2.0 zu installieren, müsste ich wohl eine ganze Menge RAM opfern (.NET 1.x ist wohl bei Windows Mobile 2003 SE schon im ROM). Geht das irgendwie, dass der Client dann auch noch mit .NET 1.x läuft?


    Viele Grüsse...
    Michael


    Hmm ja eigentlich sollte es im Rom sein, aber imho musste ich das aber auf meinem MDA Compact noch installieren. Ich glaub im Rom ist nur die 1.0 und installiert ist dann die 1.1. Muss ich nochmal genau nachschauen.
    Die .cab ist beim 1.1er 2 MB gross also viel wird da nich geopfert.


    Unter 1.x wird es auch weiterhin laufen, so lange man keine 2.x spezifischen Dinge einbaut (Steuerelemente usw). Es muss nur explizit für 1.x oder 2.x kompiliert werden. Das native Bluetooth müsste man dann für die 1.x Version rausnehmen. Dann halt weiterhin über die Methode mit DialUp


    Ich versuchs mal so weit wie möglich zu fixen. Hab leider nur keinen VDR, bzw keine DVB Karte. Ich nehm mal an, dass der VDR ohne nicht starten mag.

  • Zitat

    Original von Ello


    wie ist das gemeint? Meinst du jetzt die ZIPs zum download? ja das kann ich machen...


    Ja, ich meinte die ZIPs zum Download.


    Zitat


    ja das is normal, der initialisiert die plugins der reihe nach. Er wartet immer bis das Plugin richtig initalisiert ist und geht dann erst zum nächsten. Das initialisieren vom svdrp plugin braucht 1 bis 2 sekunden, da es sich erstmal zum VDR verbindet um zu guggen ob der da is. Erst wenn das geklappt hat gibt es sein ok zurück an den Pluginmanager und der macht dann mit dem nächsten weiter.
    Das ist also By Design so.


    Ja, aber manchmal (wie in dem Log-File) dauert es hier ein paar Minuten - CPU-Last gibt's in der Zeit nicht, ich weiss nicht, was Mono oder Dein Server da machen.


    Zitat


    Dann kanns er wohl auch nich. Also machstes genauso wie ich mit dem DialUp.


    Ja, auf dem MDA Compact ActiveSync, auf dem Linux-Rechner synce/raki/pppd.


    Zitat


    Hmm ja eigentlich sollte es im Rom sein, aber imho musste ich das aber auf meinem MDA Compact noch installieren. Ich glaub im Rom ist nur die 1.0 und installiert ist dann die 1.1. Muss ich nochmal genau nachschauen.
    Die .cab ist beim 1.1er 2 MB gross also viel wird da nich geopfert.


    Unter "Programme entfernen" hab' ich hier jedenfalls kein .NET gefunden.

    Ubuntu 12.04, yaVDR-PPAs, Kernel 3.7, Mystique SaTiX-S2 Sky Xpress.

  • So hab die optischen Veränderungen vorgenommen. Datei heißt jetzt auch anders. Die anderen Dateien ziehen dann nach, wenn es neue Versionen gibt.


    Das der Server ne Minute hängt, kann daran liegen, dass die SVDRP Verbindung vom VDRAdmin z.B. noch aufrechterhalten wird, oder der VDR nicht gemerkt hat, dass einen vorige Verbindung abgebrochen wurde.
    Das SVDRP Plugin sollte jedenfalls immer sauber die Verbindung beenden.


    Aber die 5 Minuten bei dir sind schon recht seltsam.


    evtl das timeout für eine SVDRP Verbindung im VDR runtersetzen. Ich glaub default ist da ne Minute. Wenn man nicht händisch über SVDRP was macht reicht auch weniger.

  • Zitat

    Original von Ello
    So hab die optischen Veränderungen vorgenommen. Datei heißt jetzt auch anders. Die anderen Dateien ziehen dann nach, wenn es neue Versionen gibt.


    Super - die Buttons passen gut.


    Ich hatte hier 300 Sekunden Timeout für die SVDRP-Verbindung eingestellt. Das war wohl genau das Problem.

    Ubuntu 12.04, yaVDR-PPAs, Kernel 3.7, Mystique SaTiX-S2 Sky Xpress.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!