FHEM -> Samsung TV mit Tizen

Begonnen von Florian_GT, 12 September 2016, 00:15:35

Vorheriges Thema - Nächstes Thema

Florian_GT

Hallo,

das aktuelle Samsung TV Module unterstützt leider nur alte TVs.

Da ich hier einen UE65JS9000 stehen habe, und gerne an FHEM anbinden möchte, habe ich mir gedanken gemacht, welche Wege es gibt, ein passendes Module zu schreiben.

Ich habe im Netz keine passende Schnittstellenbeschreibung gefunden.
Ich habe im Android Store die App "TVisted für Tizen TVs" gefunden. Die Source kann man sich ja mit gängigen Convertern Online erstellen lassen. (Den Trick sollten wir mal im Hinterkopf behalten...)

Daraus könnte man dann ein neues Module schaffen, oder das vorhandene erweitern.

Ich Suche dafür Unterstützung!
FHEM: Proxmox Server, FHEM in VM, pgSQL DB
Hardware: Ethersex (Pollin NETIO Boards), Diverse Tasmota MQTT Devices, Raspberry Pi Zero W Kameras, (Github RaspberryPiStreamingCamera), Zigbee2MQTT, ESPEasy

Development: UBA (Umwelt Bundesamt), BFS (Bundesamt für Strahlenschutz)

bernd.matejek

Habe einen 55KS8090 und auch Interesse!

Gesendet von meinem SM-T800 mit Tapatalk


Onkel.Tom

Habe einen UE49KS8090 und auch grosses Interesse.

KölnSolar

ZitatDie Source kann man sich ja mit gängigen Convertern Online erstellen lassen.
Ich befürchte ganz so einfach wird es nicht werden. Ich hab damals verdammt viel gegoogeld, gelesen, gelernt und geschwitzt, bis ich die E-Serie ans rennen bekam.

Wenns um den Einbau ins Modul geht, bin ich gerne behilflich.

Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Matthias

Falls es jemand interessiert: Ich gabe gestern mal versucht so einen Fernseher ans Laufen zu bekommen. Netterweise haben das schon Leute für Homebridge geschafft (https://github.com/kyleaa/homebridge-samsungtv2016).

Ich habe das mal nach FHEM portiert und ausprobiert. Das Ergebnis: Man bekommt eine Antwort vom Fernseher (juhuu), aber er reagiert nicht wenn man Key Events sendet sondern antwortet mit einem wunderbaren Fehler. Vielleicht liegt das aber ja auch nur an meinem Fernseher...

Wenn jemand Lust hat daran weiter zu probieren - ich habe den Code mal in den Anhang verfrachtet.

Matthias

Florian_GT

#5
Zitat von: Matthias am 01 November 2016, 11:14:54
Falls es jemand interessiert: Ich gabe gestern mal versucht so einen Fernseher ans Laufen zu bekommen. Netterweise haben das schon Leute für Homebridge geschafft (https://github.com/kyleaa/homebridge-samsungtv2016).

Ich habe das mal nach FHEM portiert und ausprobiert. Das Ergebnis: Man bekommt eine Antwort vom Fernseher (juhuu), aber er reagiert nicht wenn man Key Events sendet sondern antwortet mit einem wunderbaren Fehler. Vielleicht liegt das aber ja auch nur an meinem Fernseher...

Wenn jemand Lust hat daran weiter zu probieren - ich habe den Code mal in den Anhang verfrachtet.

Matthias

ich denke so vom ersten Vergleich her, auf den ersten blick, fehlt da noch das ein oder andere, z.B. die Aktivierung des neuen Steuerungsgerätes. Keine Ahnung wie das bei der Homebridge vernünftig funktioniert, aber von dem was ich an SourceCode in der App gesehen habe, sollte da noch einiges mehr an Code sein.

Die MAC-Adresse, in der Konfiguration, ist das die vom TV, oder von dem FHEM-Server?
FHEM: Proxmox Server, FHEM in VM, pgSQL DB
Hardware: Ethersex (Pollin NETIO Boards), Diverse Tasmota MQTT Devices, Raspberry Pi Zero W Kameras, (Github RaspberryPiStreamingCamera), Zigbee2MQTT, ESPEasy

Development: UBA (Umwelt Bundesamt), BFS (Bundesamt für Strahlenschutz)

Matthias

Ganz genau ja, die Mac Adresse ist die vom Fernseher.

Ich glaube nicht dass die HomeBridge noch viel beiträgt, Stimme dir aber voll zu dass eigentlich noch eine Menge Code fehlt / fehlen müsste. Wenn man den Code der Android Apps decompiliert stößt man auf hunderte Zeilen Code fürs Paring der App mit dem Server.

Mir ist schleierhaft wie der HomeBridge Code überhaupt funktionieren kann - aber es gibt Nutzer die schreiben, dass sie damit den Fernseher steuern können.

An der Stelle habe ich dann irgendwann aufgegeben ...

Florian_GT

#7
Zitat von: Matthias am 01 November 2016, 22:02:15
Ganz genau ja, die Mac Adresse ist die vom Fernseher.

Ich glaube nicht dass die HomeBridge noch viel beiträgt, Stimme dir aber voll zu dass eigentlich noch eine Menge Code fehlt / fehlen müsste. Wenn man den Code der Android Apps decompiliert stößt man auf hunderte Zeilen Code fürs Paring der App mit dem Server.

Mir ist schleierhaft wie der HomeBridge Code überhaupt funktionieren kann - aber es gibt Nutzer die schreiben, dass sie damit den Fernseher steuern können.

An der Stelle habe ich dann irgendwann aufgegeben ...

Aufgeben ist keine Möglichkeit! :D

Lass uns doch einfach ignorieren, was die anderen da treiben, und mal auf Basis der App, die hat auch bei mir genau so funktioniert, wie man es sich vorstellt, und wie es sein sollte, ein neues FHEM Module schreiben.

What a mess... Mein Lehrer hat mal gesagt, für Code der nicht vernünftig durch Kommentare dokumentiert ist, fällt im Test durch... Jetzt sieht man auch warum! Aber ich denke wir können Glücklich sein, dass wir Code haben, wo wir abgucken können, so müssen wir kein pcap File durchforsten ;)

Lass uns doch damit anfangen, Schritt für Schritt den Code zu verstehen, und aufzuschreiben, was dort passiert...

EDIT:
Wobei... Habe gerade https://forum.samygo.tv/viewtopic.php?f=74&t=7707&start=30 gefunden, die Paring URL funktioniert schon mal :O
FHEM: Proxmox Server, FHEM in VM, pgSQL DB
Hardware: Ethersex (Pollin NETIO Boards), Diverse Tasmota MQTT Devices, Raspberry Pi Zero W Kameras, (Github RaspberryPiStreamingCamera), Zigbee2MQTT, ESPEasy

Development: UBA (Umwelt Bundesamt), BFS (Bundesamt für Strahlenschutz)

Gerhard

@Matthias: welcher perl-module braucht 70_STV2016.pm? und wie instalieren (raspi)?

FB6890LTE, cubietruck, orangePi, raspberry 2/3/4, HM/HMIP, shelly > 50, etc.

Matthias

Hi,

relevant sind wahrscheinlich IO::Socket::INET und Net::Async::WebSocket::Client.

Ehrlich gesagt habe ich die Module einfach über cpan installiert - ohne großartig Debian Pakete zu suchen.

@afloria: Cool, das ist schon ein wichtiger Schritt. Ich fürchte ich werde gerade keine große Hilfe sein, nachdem ich jetzt erstmal in den Urlaub fahre. Übrigens ist der Code vermutlich sogar dokumentiert - was wir sehen ist ja nur die dekompilierte Variante ohne Debug-Flag - heißt keine vernünftigen Parameternamen, keine Kommentare usw.. Im ByteCode steht dann eben nur noch der Klassenname - und der restliche "Mess" ;-).

Matthias

Gerhard

o.k. Mathias,
aber wie ist der Aufruf in telnet um diese Module zu installieren??
FB6890LTE, cubietruck, orangePi, raspberry 2/3/4, HM/HMIP, shelly > 50, etc.

Florian_GT

Zitat von: Gerhard am 05 November 2016, 10:58:18
o.k. Mathias,
aber wie ist der Aufruf in telnet um diese Module zu installieren??

Gibt es nicht, musst du per SSH machen.

Siehe Anleitung hier: http://www.pro-linux.de/kurztipps/2/1286/perl-module-einfach-installieren.html
FHEM: Proxmox Server, FHEM in VM, pgSQL DB
Hardware: Ethersex (Pollin NETIO Boards), Diverse Tasmota MQTT Devices, Raspberry Pi Zero W Kameras, (Github RaspberryPiStreamingCamera), Zigbee2MQTT, ESPEasy

Development: UBA (Umwelt Bundesamt), BFS (Bundesamt für Strahlenschutz)

heicar

 Hallo,

wenn ich folgende url aufrufe erscheint die "Verbindungsanforderung" mit einer 4 stelligen Zahl auf dem TV Bildschirm !!

http://<ip>:8080/ws/pairing?step=0&app_id=my-app&device_id=ffy-device

Darauf lässt sich aufbauen.
Ich bin gerne bereit zum testen!!


Ausgabe von http://<ip>:8001/api/v2/
{
  "id": "07270e01-0078-1000-8cd0-bc14851b56bb",
  "name": "[TV]Samsung LED40",
  "version": "2.0.24",
  "device": {
    "type": "Samsung SmartTV",
    "duid": "07270e01-0078-1000-8cd0-bc14851b56bb",
    "model": "14_X14_BT",
    "modelName": "UE40H6400",
    "description": "Samsung TV RCR",
    "networkType": "wireless",
    "ssid": "meine_ssid...",
    "ip": "meine_ip",
    "firmwareVersion": "Unknown",
    "name": "[TV]Samsung LED40",
    "id": "07270e01-0078-1000-8cd0-bc14851b56bb",
    "udn": "07270e01-0078-1000-8cd0-bc14851b56bb",
    "resolution": "1920x1080",
    "countryCode": "DE",
    "msfVersion": "2.0.24",
    "smartHubAgreement": "true",
    "developerMode": "0",
    "developerIP": "0.0.0.0"
  },
  "type": "Samsung SmartTV",
  "uri": "http://<ip>:8001/api/v2/"
}



Viele Grüße
Heinz

grappa24

yo, geht bei mir auch ...  ;){
  "id": "uuid:78116b2f-6a59-4b0d-91ad-87e0323d457e",
  "name": "[TV] Samsung 5 Series (40)",
  "version": "2.0.25",
  "device": {
    "type": "Samsung SmartTV",
    "duid": "uuid:78116b2f-6a59-4b0d-91ad-87e0323d457e",
    "model": "16_HAWKM_FHD",
    "modelName": "UE40K5579",
    "description": "Samsung DTV RCR",
    "networkType": "wireless",
    "ssid": "9c:c7:a6:99:d1:cc",
    "ip": "192.168.178.67",
    "firmwareVersion": "Unknown",
    "name": "[TV] Samsung 5 Series (40)",
    "id": "uuid:78116b2f-6a59-4b0d-91ad-87e0323d457e",
    "udn": "uuid:78116b2f-6a59-4b0d-91ad-87e0323d457e",
    "resolution": "1920x1080",
    "countryCode": "DE",
    "msfVersion": "2.0.25",
    "smartHubAgreement": "true",
    "VoiceSupport": "false",
    "wifiMac": "F8:77:B8:5F:12:4A",
    "developerMode": "0",
    "developerIP": "",
    "OS": "Tizen"
  },
  "type": "Samsung SmartTV",
  "uri": "http://192.168.178.67:8001/api/v2/",
  "remote": "1.0",
  "isSupport": "{\"remote_available\":\"true\",\"remote_fourDirections\":\"true\",\"remote_touchPad\":\"true\",\"remote_voiceControl\":\"false\",\"DMP_available\":\"true\",\"DMP_DRM_PLAYREADY\":\"false\",\"DMP_DRM_WIDEVINE\":\"false\"}"
}
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

RappaSan

Gibt's schon neue Erkenntnisse was das Protokoll angeht?