Samsung TV -> Fhem

Begonnen von Bracew, 16 Juni 2014, 21:30:13

Vorheriges Thema - Nächstes Thema

Bracew

Hallo,

ich habe einen Samsung UE40ES7090 Fernseher (TV) mit WLAN an fester IP (192.168.0.102).
Ausserdem im selben Netz eine RasPi mit FHEM (192.168.0.20)
Über FHEM mit STV kann ich den TV bedienen (außer einschalten).

Ich möchte nun eine Lampe in der Nähe des TV einschalten (Lampe_TV), wenn der Samsung TV mit der Fernbedienung eingeschaltet wird und wieder aus, wenn der TV mit der Fernbedienung ausgeschaltet wird.

Das bekomme ich in fhem.cfg hin mit:

define Lampe_TV_An notify SamsungTV7090        \
  IF    ([SamsungTV7090] eq "opened")          \
     (set Lampe_TV on)                         \
  ELSE                                         \
     (set Lampe_TV off)


Jedoch geht der TV auch dann ich den Modus "opened", wenn er eine Aufnahme zur programmierten Zeit in meiner Abwesenheit auf die angeschlossenen USB-Platte startet. Und, damit geht auch die Lampe an, was so jedoch nicht von mir gewollt ist.
Die Lampe soll nur angehen, wenn ich den TV mit der Fernbedienung anschalte.

Anderseits, wenn ich ins Bett gehe, lass ich manchmal den TV die Sendung noch zuende aufnehmen und schalte ihn dann aus. Der Bildschirm geht aus, er nimmt jedoch noch auf die USB-Platte bis zu einer definierten Zeit auf. Und, damit geht die Lampe nicht aus, wenn ich ins Bett gehe.

Gibt es eine Möglichkeit den TV auf das Ein- und Ausschalten mit der TV-Fernbedienung abzufragen?
So dass die Lampe nur dann an ist, wenn ich ihn händisch an- bzw. abschalte, also wenn der Bildschirm leuchtet?

Gruß
Bracew

P.S. Ich hoffe ich habe es verständlich erklärt
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

Bennemannc

Hallo,

poste doch mal die Readings, die das Modul bereit stellt. Vielleicht kann man ja auf etwas anderes Triggern.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

Rince

Ich fürchte, das wird so einfach nicht sein :(
Du kannst deinen Fernseher übrigens z.B. über HDMI und CEC einschalten wenn du einen RasPi in der Nähe hast. Hatte das irgendwann mal beschrieben wie es geht.

Damit bin ich bei dem, was du eigentlich wissen willst ;)
Ich denke, wenn du an den RasPi einen IR Empfänger packst, könnte es über diesen Umweg gehen.
Dann würde fhem über den Empfänger registrieren, wenn ein Einschaltsignal kommt.

Dann würde also irgendwann der Fall auftreten, dass der TV an ist, ohne das fhem ein FB Signal empfangen hat. Das wäre dann ein Zeitpunkt, die Lampe aus zu lassen :)

Alternativ:
Wenn der Bildschirm aus ist, aber die Festplatte läuft, sollte der Energieverbrauch ein anderer sein. Vielleicht ist dieser Weg einfacher?
Dann solltest du deine Lampe anwerfen, wenn der Energieverbrauch einen Schwellenwert überschreitet. Also den, wenn das Display an ist.


Nach etwas Nachdenken finde ich die Idee ziemlich gut. Mit dem Energieverbrauch :)
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

Bracew

Hallo Bennemannc,

na eben, das mit den Readings ist ja eines der Probleme. In der (engl.) CommandRef ist dazu nichts geschrieben. Die Doku ist meines Erachtens lausig.
Wie kann ich diese rausbekommen?


Hallo Rince,

ich möchte in keine zusätzliche Hardware investieren, weder HDMI und CEC, noch IR Empfänger, noch Energieverbrauch-Messgerät. Nicht dass es mir nur auf die Kosten ankommt, nein auch die zusätzlichen Bastelein, Probleme und Sonderlösungen sind mir zu viel.
Falls es nicht ohne gehen würde, würde ich lieber darauf verzichten.
FHEM ist selbst schon recht aufwendig (zu mindesten für Anfänger wie mich, fast schon abschreckend), aber dann auch noch über Umwege, quasi von hinten durch die Brust ins Auge, ist mir zu aufwendig.
Die einfachst Lösung wäre ein Attribut ähnlich,
   attr TV IstEingeschaltetWorden (Set Lampe_TV an)
Aber eben, Einfach ist FHEM nicht.

Liebe Grüße an alle
Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

Bennemannc

Hallo,

also viel kann das Modul erst einmal nicht, ich habe beim Suchen das https://groups.google.com/forum/#!topic/fhem-users/CKAHUqniUVs hier gefunden. Das scheint auch mit in das Modul eingeflossen zu sein - allerdings steht da etwas von einer IPhone App und der Port muss 55000 sein.
Weiterführende Doku habe ich auch nicht gefunden. Ich habe keinen Samsung TV - also kann ich da auch nichts testen.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

Bracew

Hallo Bennemannc,

danke für Deinen Tipp, betrifft jedoch die andere Richtung Fhem -> Samsung TV, welche es auch hier im Forum bereits gibt. Das mit dem Port 55000 ist auch bei mir so.

define SamsungTV7090 STV 192.168.0.102 55000
define SamsungRC remotecontrol
attr SamsungRC rc_iconpath icons/remotecontrol
attr SamsungRC rc_iconprefix black_btn_
attr SamsungRC room Wohnzimmer
attr SamsungRC row00 POWEROFF,TV,HDMI
attr SamsungRC row01 :blank,:blank,:blank
attr SamsungRC row02 1,2,3
attr SamsungRC row03 4,5,6
.
.
define notify_SamsungRC notify SamsungRC set SamsungTV7090 $EVENT

Damit kann man eine Samsung-Fernbedienung auf Fhem nachbilden und bedienen.

Danke
Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

Dietmar63

Frag doch mal den Modulautor, ob er eine Möglichkeit sieht deinen Wunsch zu realisieren. Vielleicht hat er Dokumentation über das Protokoll.

Ich habe das Modul kurz abgecheckt. Es enthält keine Versorgung von Readings, die abgefragt werden könnten. Man könnte mit Logging vielleicht die Rückmeldungen nach einem Kommando auf verwertbare Informationen hin untersuchen.

##############################################################################
#
# 70_STV.pm
#
# a module to send messages or commands to a Samsung TV
# for example a LE40B650
#
# written 2012 by Gabriel Bentele <gabriel at bentele.de>>
#
# $Id: 70_STV.pm 5209 2014-03-12 20:02:39Z ulimaass $
#
# Version = 1.4
#
##############################################################################
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Zwiebel

Hallo,

schön wenn mein Modul verwendet wird.

zuerst hab ich an einen at job gedacht der den Samsung jede 5 min prüft ob er im Netz erreichbar ist.
Aber das erfüllt nicht deine Bedingung wenn etwas aufgenommen werden soll.

Ich glaub nicht das es ein Merkmal gibt das man auswerten kann.
sorry....

viele Grüße
Zwiebel

Bracew

Hallo Zwiebel,

danke für Deinen Beitrag.

Es ist ja schon seltsam, wenn ich im Log schauen gibt es sowas wie:

2014.06.08 14:51:53 1: 192.168.0.102:55000 reappeared (SamsungTV7090)
2014.06.08 15:51:44 1: 192.168.0.102:55000 disconnected, waiting to reappear (SamsungTV7090)
2014.06.08 17:51:29 1: 192.168.0.102:55000 reappeared (SamsungTV7090)
2014.06.08 17:52:19 1: 192.168.0.102:55000 disconnected, waiting to reappear (SamsungTV7090)

Laß ich mit: 
  my $r2 = Value("SamsungTV7090");
  Log 3, "r2--SamsungTV7090-->$r2";
aus Perl in das Log schreiben (danke Dittmar63 für den Tipp), dann erscheint dort:

2014.06.17 20:07:20 3: r2--SamsungTV7090-->opened
2014.06.17 20:07:25 3: r2--SamsungTV7090-->disconnected

und wenn ich ein extra Log File aus Fhem mit:
define FileLog_SamsungTV  FileLog ./log/SamsungTV-%Y.log SamsungTV7090
attr   FileLog_SamsungTV  room  Info

schreiben lasse, bekomme ich Einträge wie:
2014-06-17_19:02:21 SamsungTV7090 CONNECTED
2014-06-17_20:07:25 SamsungTV7090 DISCONNECTED


Also gibt es doch viele unterschiedliche Statusmeldungen: reappeared, disconnected, opened, CONNECTED, DISCONNECTED

Aber scheinbar hilft mir das alles nicht weiter. Ich dachte deshalb, irgendwer hier hat das Problem schon einmal angegangen. Abe wenn selbst Du als Autor nur ein "...sorry..." sagen kannst, bin ich wohl schon am Ende.

Gruß Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

Bracew

Hallo Zwiebel,

hast Du für Dein Modul nicht eine Lösung bzw. kannst Du ein oder mehrere Readings einbauen ?

Gruß Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

P.A.Trick

Setze doch mal einen Ping ab und schaue ob der Fernseher beim aufnehmen darauf antwortet. Wenn nicht, dann könntest du das mit dem presence Modul lösen!
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Bracew

Ping habe ich gleich ausprobiert:
TV reagiert nicht auf Ping wenn normal aus (im Standby-Modus).
TV reagiert auf Ping wenn an und ich normal TV sehe.
TV reagiert auf Ping wenn ausgeschaltet, aber Aufnahme auf USB-HDD gemacht wird.

Der TV ist ja eigentlich ein Linux Computer mit Bildschirm und reagiert auf Ping solange er nicht im Standby ist, also wenn er auf dem Bildschirm etwas darstellt oder sonst irgendeine Aufgabe hat und der Prozessor etwas tut.

Mit Ping geht es somit nicht.

Gruß Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

Nico

Leider per Hardware und nicht per Statusabfrage - ich mache es bei mir so:
Statusabfrage erfolgt über eine FS20 Master-Slave-Steckdose - die schaltet erst auf "ON" wenn der TV ein Bild anzeigt (die LEDs arbeiten, höherer Stromverbrauch).
Bei Aufnahmen im Standby bleibt die Steckdose aus.
Über eine FS20 IRF kann ich per FHEM auch den IR-Code zum einschalten senden - das geht ja leider auch nicht über IP...

FunkOdyssey

Ich habe auch das ES7090-Modell und schaffe es nicht, per FHEM auf die HDMI2-Quelle umzuschalten. Hat jemand einen Tipp, wie man das (ohne CEC) machen kann? Danke vielmals.

Jorge3711

Hallo zusammen,

spiele gerade mit FHEM und meinem Samsung H6600 herum. Nach allem was ich gefunden habe, ist der TV aktuell nicht mittels FHEM steuerbar weil Samsung da wohl was geändert hat. Über Port 55000 bekomme ich ein "STATE disconnected", verwende ich den alten Port 52235 bekomme ich ein "STATE Initialized" kann den TV aber nicht bedienen.

Jetzt habe ich einfach mal einen Portscan gegen den TV laufen lassen und finde da einen offenen Port 52345. Allerdings kann ich den nicht hinterlegen. Habe spaßeshalber in der Datei 70_STV.pm alle 52235 durch 52345 ersetzt. Ich bekomme einen "STATE Initialized" bedienen kann ich aber immer noch nicht. Schade eigentlich.

Gibt es hier schon irgendwelche Erkenntnisse, außer "Geht halt nicht"?

Grüße Jorge


GiJoe73

Hallo,

Samsung hat beginnend mit der H-Serie das Protokoll umgestellt auf irgendso ein Upnp gedöns. Sehr unschön, denn an den Modul muß dann wohl einiges angepasst werden....
FHEM 5.5 auf Cubietruck mit 60GB SSD
HMLAN - CFG - Adapter
11 x HM-LC-Bl1PBU-FM
8 x HM-CC-RT-DN
2 x 1-Wire Bus mit 8 stk. DS2406, 3 x 1-Wire Dougie Counter, 2 x DS2408, 8 x DS18B20, 1 x DS2450, 2x DS2438