|
 |
|

01.02.2010, 20:40
|
|
Benutzer
|
|
Registriert seit: 21.06.2009
Ort: Moosburg
Beiträge: 29
|
|
Denon über EibPC steuern
Hallo beisammen!
Ich habe folgende Anforderung: ich möchte den Denon AVR 4308 über Telnet auf Port 23 steuern und über das WebInterface des EibPC schalten. Folgenden Code hätte ich mir laienhaft ausbaldovert:
//TEST
if webbutton(5)==1 then sendudp(23u16,192.168.1.5,$SITUNER$) endif
if webbutton(5)==3 then sendudp(23u16,192.168.1.5,$SINET/USB$) endif
Über Hyperterminal auf der IP kann ich die Befehle SITUNER z.B. zum umschalten auf Radio verwenden, gefolgt von einem Enter (<CR>). Leider funktioniert's wohl nicht so einfach aus dem EibPC. Was mache ich falsch oder geht das nicht so einfach wie ich mir das vorstelle?
Beste Grüße,
Mike
|

01.02.2010, 22:59
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 25.04.2009
Ort: Forchheim
Beiträge: 4.453
|
|
Zitat von Mikey
Hallo beisammen!
//TEST
if webbutton(5)==1 then sendudp(23u16,192.168.1.5,$SITUNER$) endif
if webbutton(5)==3 then sendudp(23u16,192.168.1.5,$SINET/USB$) endif
Über Hyperterminal auf der IP kann ich die Befehle SITUNER z.B. zum umschalten auf Radio verwenden, gefolgt von einem Enter (<CR>). Leider funktioniert's wohl nicht so einfach aus dem EibPC. Was mache ich falsch oder geht das nicht so einfach wie ich mir das vorstelle?
|
Wenn Du ein CR brauchst, dann so:
... sendudp(23u16,192.168.1.5,$SITUNER$,13)
|

06.02.2010, 19:58
|
|
Benutzer
|
|
Registriert seit: 21.06.2009
Ort: Moosburg
Beiträge: 29
|
|
Hallo Enertegus !
D.h. ich habe eigentlich alles ASCII Zeichen zur Verfügung, nehme ich an. Nachdem auch mit der 13 der Receiver nicht das macht, was er soll, stehe ich auf dem Schlauch. Ich habe den Befehl mal in reines ASCII umgewandelt und er macht trotzdem nichts. Wenn ich über Telnet die Verbindung aufmache, kann ich allerdings die Befehle manuell abarbeiten. Auch ein Script mit Telnet Befehlen als Batch ausgeführt geht. Aber eben mit Telnet im Spiel. Ich bin mir nicht sicher, ob das so einfach gehen soll, wie ich mir das denke. Kann ich die Befehle einfach per UDP lostreten? Hier mal der Link zum Denon Protokoll:
http://www.denon.de/site/datadir/pdf...COL_V5.1.1.pdf
Kannst Du mir helfen?
Besten Gruß,
Mike
|

06.02.2010, 21:12
|
|
Erfahrener Benutzer
|
|
Registriert seit: 11.08.2009
Ort: Landkreis Straubing-Bogen
Beiträge: 1.281
|
|
Zitat von Mikey
Kann ich die Befehle einfach per UDP lostreten?
|
Seit 2 steht: TCP port 23
-> sollte nicht per UDP gehen
|

07.02.2010, 00:15
|
|
Benutzer
|
|
Registriert seit: 21.06.2009
Ort: Moosburg
Beiträge: 29
|
|
Hm... nachdem das Ding nun wirklich nicht reagiert stellt sich dann natürlich die Frage wann und ob "tcpsend" und "tcpread" kommen?
LG,
Mike
|

08.02.2010, 01:45
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 07.07.2007
Beiträge: 11.779
|
|
Man wird, auch mit 23/TCP, beim Denon ein ganz anderes Problem haben: der spricht über das Telnet-Interface nur 1x, dann ist essig 
Also je nachdem wie enertex das implementiert geht zwar Befehle senden aber das "volle Programm" inkl. alle Stati (z.B. von der FB ausgelöst), das wird ganz schön kniffelig..
Makki
__________________
EIB/KNX & HS3(+Lüfter+picoPSU80), Multiroom-AV mit Russound,mpd,vdr,DM8000, Profilux II+, N141 DALI, DMX, dez. Lüfter (RS485), Wärmepumpe (RS422), 30+ 1-Wire Temp,Luft&Bodenfeuchte,IRTrans
WireGate - Supportforum - bitte keine PN's!
|

08.02.2010, 08:11
|
|
Benutzer
|
|
Registriert seit: 21.06.2009
Ort: Moosburg
Beiträge: 29
|
|
@Makki
Warum ist das so? Es ist doch genau dafür gedacht, dass der komplette Funktionsumfang per Telnet gesteuert werden kann. Mir ist das mit Hyperterminal schon aufgefallen, dass tatsächlich die Verbindung nach einem Befehl gekappt und wieder neu aufgebaut werden muss, damit der nächste Befehl kommen kann. Ich habe aber schon mal mit einem anderen Telnet Client Befehle nacheinander abarbeiten können. Das war aber Shareware und die Lic ist abgelaufen. Also dachte ich, dass es eher am Hyperterminal liegt.
Gruß,
Mike
|

08.02.2010, 08:31
|
|
Erfahrener Benutzer
|
|
Registriert seit: 11.08.2009
Ort: Landkreis Straubing-Bogen
Beiträge: 1.281
|
|
Zitat von Mikey
@Makki
Warum ist das so?
|
Ich kenne zwar den Denon nicht, aber TCP ist ja Verbindungsorientiert, daher sollte ein tcpsend() irgendwie in Beziehung zu einem tcpread() stehen, damit ich die Antwort auf den "Befehl" auch erhalte
-> tcpread() liefert immer die Antwort, die auf ein tcpsend() kam (bzw. leert also den Empfangspuffer).
Oder tcpread() sendet immer auch das Kommando und ich brauche das tcpsend() eigentlich gar nicht.
Die Session würde also quasi bei jedem Aufruf neu aufgebaut und wieder geschlossen.
Natürlich könnte man auch ein richtiges Session Management implementieren ...
Bin mal gespannt, was da kommt.
Geändert von saft6luck (08.02.2010 um 08:32 Uhr)
|

09.11.2010, 23:16
|
|
Benutzer
|
|
Registriert seit: 21.06.2009
Ort: Moosburg
Beiträge: 29
|
|
Der EibPC kann ja nun TCPsend und read. Dennoch hört der Denon Receiver immer noch nicht auf das, was ich ihm per EibPC zu übertragen versuche. Hat hier schon jemand irgendeine Umsetzung geschafft? Bin langsam am verzweifeln...
Ich habs mit connecttcp probiert, 200ms gewartet, dann per tcpsend meinen Befehl "umschalten auf Tuner" losgetreten und die Verbindung wieder getrennt. Trotzdem keinerlei Reaktion vom Denon :-(
Hat jemand eine Idee?
|

10.11.2010, 07:37
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 25.04.2009
Ort: Forchheim
Beiträge: 4.453
|
|
Zitat von Mikey
Der EibPC kann ja nun TCPsend und read. Dennoch hört der Denon Receiver immer noch nicht auf das, was ich ihm per EibPC zu übertragen versuche.
|
Kannst Du mal Deinen Code posten?
|
| Themen-Optionen |
|
|
| Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 17:37 Uhr.
|