die ID muss korrekterweise die ID des I/O Portes sein. Also bei dir die ID des seriellen Portes.
Aber genau das ist auch das Problem. Das Functions Script ist für einen ClientSocket geschrieben, und nicht für den seriellen Port.
Das siehst Du im Functionsscript an den ganzen Befehlen welche mit CSCK_ beginnen. Wenn du diese Befehle durch die Befehlssyntax für den Seriellen Port ersetzt, sollte es klappen.
kurze Rückmeldung: es funktioniert tadellos, hab „CSCK“ in den Functions gegen „COMPort“ getauscht und schon läuft’s
…Mal wieder ein Erfolgserlebnis für mich als Neueinsteiger.
Kann es sein, dass Du noch nicht alle Funktionen/Events eingebaut hast? Ich hab gestern vergebnich nach den QuickSelect-Funktionen (QUICK1 - QUICK3) gesucht und nicht gefunden.
Ich versuche mal, das in die Scripts mit einzubauen, befürchte aber dass mein know-How noch nicht ausreichend ist (für die Functions reicht’s gerade noch aber bei den Status schaue ich „wie ein Schwein ins Uhrwerk“)
nachdem ich meine serielle Anbindung des 2309 auf Eis gelegt habe (z.B. die Volume-Steuerung war einfach nicht praktikabel), habe ich das Thema nun erneut aufgenommen um jetzt einen 3311 anzubinden. Die Grundfuktionen klappen aauch perfekt. Allerdings habe ich regelmässig Fehler im Log:
IPS-Err-PHP 2011-04-03 14:55:45.495 Notice: Undefined variable: value
Error in Script C:\IP-Symcon\scripts\17630.ips.php on Line 184
10 in IPSLogger.ips.php (call IPSLogger_Out)
20 in IPSLogger_PhpErrorHandler.ips.php (call IPSLogger_Err)
184 in 17630.ips.php (call IPSLogger_PhpErrorHandler)
Offensichtlich liegt das daran, dass der 3311 eine Reihe neuer 3-stelliger Events sendet (Beispiel: „NSE“, Request Onscreen Display Information List, Quelle: Protokoll-Doku 3311) - das war bei meinem 2309 nicht relevant (da wäre das nur beim iPod der Fall gewesen, hab ich nicht). Da ich PHP-Seitig noch nicht so richtig fit bin, kannst Du mir Tipps geben, wie die neuen Events und Informationen in Dein Script eingebaut werden können?
Immer locker bleiben, ich werd’s noch veröffentlichen. Ich hab die Funktionenn nur sehr hektisch und kaum dokumentiert ins Script geschmiert dass das niemendem zugemutet werden kann. Es sind auch noch nicht alle Funktionen drin, schon gar nicht getestet. Wird also noch dauern.
Beiden alten Receivern gab und gibt es diese Version doch weiterhin.
Der Wert wird ja mit unterschiedlichen Paramtern geliefrt und wird auch in einer anderen Variablen gespeichert. Von daher können doch beide parallel im Script bleiben. Dadurch bleibt es universell nutzbar.
Derzeit arbeit ich an meinem ersten echten Modul („Viessmann Heizungssteuerung“, senden und empfangen geht schon ;)).
Im Vergleich dazu dürfte ein „AV Receiver“-Modul einfacher sein, aber - wie Philip schon schrieb - die liebe Zeit.
Angedacht sind jedenfalls:
Ein AV-Modul für Denon, Pioneer und Marantz (also AVR mit offengelegter COM/Socket Kommunikation) welches Statusvariablen inkl. Interaktion (Quellenwahl, Lautstärke setzen, etc.) bieten soll.
ich habs mal für beide AVR-Varianten eingebaut. Bei mir funktioniert es, vielleicht kann das jemand mit einem AVR3809 o.Ä. testen und mir Feedback geben:
ich hab in den letzten Tagen heftig am Script von philipp rumgeschraubt und dieses ein wenig erweitert.
Status und Funktions-Script habe ich vom Funktionsumfang nahezu verdoppelt. Allerdings bin ich noch nicht soweit, dass automatisch Variablenprofile ertsellt, den Variablen zugeweisen sowie die Steuerscripte den Variablen zugewiesen werden. Daher habe ich die Scripte zunächst nur auf meiner Homepage veröffentlicht. Soweit das ganze Dritten halbwegs zumutbar ist stelle ich es auch gern hier ins Forum ein. Wer jetzt schon probieren will kann sich hier bedienen.
Soweit ich das überschauen kann sollten die Scripte für den AVR 3311 und 3809 sowie weitere aktuelle Modelle mit LAN-Anbindung funktionieren. Meine Entwicklung setzt auf der DENON Protokoll-Doku Ver.7.1.0 auf.
Seht es mir bitte nach: ich habe bisher keinerlei Software-Entwicklungserfahrung - vielleicht ist es noch zu früh, das Ganze hier zu veröffentlichen. Ich werde aber diese Scripts in den kommenden Wochen soweit vervollständigen das eine nahezu vollautomatische Installation möglich ist.