X10TRX Alpha

Hallo McFly,

habe mich mal wieder meinen X10 Komponenten gewidmet und bin auf Dein Script gestossen. SUPER !!
Das ein/ausschalten & dimmen der Lichter klappt super damit. :smiley:

Einzig der Empfang von X10 Telegrammen die z.B. über die Fernbedienung oder X10 Bewegungsmelder (MS13) ankommen, werden nicht verarbeitet.
Im Log kommt die msg:
„Headerlänge und Telegrammgröße unterschiedlich (2 / 0).
Headerlänge und Telegrammgröße unterschiedlich (2 / 1).“

Hast Du eine Idee was das sein könnte ? :confused:

Gruss, Daniel.

Hallo,

hab damit leider schon länger nicht mehr gebastelt (meine Updatezeit ist abgelaufen).
Such mal nach dem Text im Script. Kann sein, das der Bewegungsmelder da etwas anders macht, als die anderen.
Von der Fernbedinung klappte es aber. Überprüf sonst mal die Einstellungen der seriellen Schnittstelle. Nicht das da was abgeschnitten wird.
Telegrammgröße 0 ist schon mal sehr seltsam.
Falls ich mein IP-Symcon wieder reaktiveren werde schau ich mal rein.

cu…

Werde mal durchstöbern … Danke.

Weisst Du noch, ob es mit den Licht-Modulen die Möglichkeit gibt, Helligkeitswerte direkt anzusteuern, so wie Du es mit Deinem Rollo im Code machst ? Evtl. über Extended Codes ?
Zur Zeit springt die Lampe sofort auf 100% und dimmt dann langsam runter. Für eine „angenehme“ Flurbeleuchtung nachts nicht so praktisch :wink:

Ist zwar lange her, aber vielleicht fällt Dir doch noch das ein oder andere wieder ein.

Gruss, Daniel.

Die normalen Lampenmodule können das nicht anders. Die werten keine extended codes aus.
Die Dimmer für die Schalterdose (die dicken Taster) und für die Hutschiene beherschen extended codes und damit direktes dimmen (da kann man sogar die Geschwindigkeit einstellen).

cu…

Hi,

bei mir werden die Variablen beim ersten Start des Scriptes angelegt. Jedoch kommt folgende Fehlermeldung:

<b>Fatal error</b>:  Call to undefined function IPS_RegisterScriptEvent() in <b>C:\Programme\IP-Symcon\scripts\.currentscript</b> on line <b>564</b><br />

betrifft folgende Zeile im Script:

IPS_RegisterScriptEvent($SCRIPT_NAME, $COM_VAR);

Wie kann ich das Problem beheben?

Zweites Problem:

Die Variable „COM.BUFFER“ wird immer wieder im Sekundentakt mit dem „¥“ gefüllt.

Gruß

Jimmy

Du musst nun den Befehl nutzen und die Syntax etwas anpassen:

http://www.ipsymcon.de/wiki/index.php/IPS_RegisterVariableEvent

paresy

Hi,

habe die Befehle ausgetauscht:

IPS_RegisterVariableEvent($SCRIPT_NAME, $COM_VAR);
IPS_RegisterVariableEvent($SCRIPT_NAME, $TX_BUFFER);

Nun kommt folgende Fehlermeldung:

X10 Script wird initialisiert.
<br />
<b>Warning</b>:  Wrong parameter count for ips_registervariableevent() in <b>C:\Programme\IP-Symcon\scripts\.currentscript</b> on line <b>564</b><br />
<br />
<b>Warning</b>:  Wrong parameter count for ips_registervariableevent() in <b>C:\Programme\IP-Symcon\scripts\.currentscript</b> on line <b>565</b><br />
X10 Script ist bereit.

Und was hat das im Log mit dem „¥“-Zeichen auf sich?

Gruß

Jimmy

Hmm… Hinter dem „und“ hast du den Satz irgendwie nicht zu Ende gelesen :confused::frowning:

Es müsste in etwa so aussehen:

IPS_RegisterVariableEvent($COM_VAR,„OnUpdate“,"",$SCRIPT_NAME);
IPS_RegisterVariableEvent($TX_BUFFER,„OnUpdate“,"",$SCRIPT_NAME);

paresy

Zu Ende gelesen schon, aber falsch umgesetzt bzw. nur halb.

Danke paresy, jetzt klappt´s.

GN8

Jimmy

Mal was ganz anderes hier … ich habe einen MCE Rechner (Media Center PC) den ich mit einer 866 MHz X10 (?? was das auch heißt in dem Zusammenhang) Fernbedienung steuere. Ich habe als „Sender“ am IPSYMCON eine FHZ1300PC und ein EZControl T-10. Beide können ja schon mal 866 MHz. Wäre es nun möglich… über einen der Sender ein X10 Fernbedienungssignal „auszusenden“ um z.B. vom IPS-Server aus den MCE PC in Standbye und zurück zu setzen?
:confused:

Vielleicht bin ich auch völlig auf dem Holzweg … :cool:

Äh… ja…

Was passen muss ist also nicht nur das Medium sondern auch das Protokoll. Das Protokoll ist die Sprache des Funks.

Wenn man gerne mit einem Japaner sprechen will ist es schon mal gut, wenn er auch ein Handy (Das gleiche Medium - in unserem Beispiel Funk) hat. Aber selbst wenn ihr im selben Netz telefoniert (in unserem Beispiel die selbe Frequenz) musst du erst noch japanisch lernen (Das Protokoll) um ihm zu sagen, dass er deinen Computer ausschalten soll. Oder du brauchst einen Dolmetscher. Der könnte dann zum Beispiel CM11 heissen und aus dem Hause Marmitek sein.

Ich weiss jetzt ehrlich gesagt nicht was für Protokolle das EZControl T-10 kennt. Aber ich habe nichts entsprechendes gefunden auf die schnelle und behaupte mal, dass er das nicht kann.

Toni

schon wieder ich …

also wie du schon sagst … die Übertragungsfrequenz (Medium) stimmt schon mal … und X10 (Sprache) wird auch unterstützt … den CM11 brauch ich doch eigentlich nur als „Sender ins Stromnetz“ … ich will aber funken … ich dachte … es müsse doch reichen … auch dem Band (866 MHz) ein gewisses „Datenpaket“ zu senden um die FB zu simuliren. Hmmm … man müsste also wissen (oder erroieren) was die X10 Funkferenbedienung genau „aussendet“ um den PCin Standbye zu versetzen …

aber ich seh schon … das führ hier zuweit und lenkt vom eigentlichen Thread ab … war nur mal wieder so ne „spinnerte“ Idee… trotzdem Danke fürs Feedback …

Grüße, Obi

Richtig… Und diese Datenpaket wird in ein Protokoll verpackt. Das macht der Sender eigenständig.

Selbst wenn du den im Protokoll verpackte Befehl perfekt nachahmst wird dieser dann in der FHZ in ein FS20 Protokoll verpackt und ist für deinen Empfänger unlesbar.

Du brauchst eine Hardware, die X10 senden kann? Ich kenne die Marmitek Produktpallette aber nicht gut. Schlimmstenfalls musst du halt eine zweite Fernbedienung besorgen, aufmachen und ein Kabel anlöten… Soetwas haben hier schon Leute gemacht…

Toni

Du wirst es nicht glauben … aber an sowas habe ich auch schon gedacht … :wink:

Aber eher in Richtung Ein/Aus Taster am PC (nix löten). Da der Taster nur einen Impluls benötigt, müsste man dann aber die Steckdose mit einem „Implulsgenerator“ koppeln. Mir schwebt da ein REX Multifunktionsrelais vor, der bei Dauer-Strom ein, nur am Ausgang einen definierten Schaltimpuls auf den Taster (parallel) gibt. Einziger Haken dran … man hat kein „Feedback“ ob der Rechner nicht schon läuft und dann versehentlich runtergefahren wird … ach ja … und beim nächsten Schalten geht ja der Strom weg … und auch da müsste ein kurzer Impuls gesendet werden … noch besser eignet sich das 4 Kanal schaltmodul dafür … kann man gleich in den Rechner einbauen und hat vier Schalter … für z.B. Ein/Aus … Stanfbye/Wakeup … Hibernate/Wakeup … muss mir nur noch überlegen, wie ich das mit der Flankenauswertung und Impulssteuerung umsetzen könnte …

Warum sagt mir eigentlich keiner, das ich voll auf dem Draht stehe.
Das ganze bekomme ich natürlich auch ohne Steckdosen und Schalter hin (welche Verschwendung!) … ich brauch ja nur aus dem Skript die Tools shutdown.exe und wake.exe aufrufen um den MCE Rechner vomIPS Server aus remote herunterzufahren oder per Wake-on-LAN aufzuwecken.
Werde ich nachher gleich mal einbauen und berichten … :smiley:

(Idee: „Alles_Aus“=MCE Shutdown, „Alles_An“=MCE Wake-On-LAN über IPS_Execute Befehl)

So die zwei „Mini.Skripte“ sind erstellt.

wake_mce:
<? $result = IPS_Execute („c:\wakemce.cmd“,"",False,False)?>

shutdown_mce:
<? $result = IPS_Execute („c:\windows\system32\shutdown.exex“,"-s -t 5 -m -f 192.168.1.20",False,False)?>

Die Skripte starte ich jeweils mit einem „OnValue-> Alles_An=false“ und „OnValue-> Alles_Aus=false“. Bei Alles_An gehen alle (gewünschten) Lampen an und der Rechner fährt hoch. Bei „Alles_Aus“ genau umgekehrt, alle lampen aus und der Rechner fährt runter. :slight_smile:

Grüße, Obi

Hallo McFly,
ich habe mir ein paar X10 Komponenten geholt. Nun bin ich mit Deinem Script am arbeiten. Das Problem hierbei ist, das es mal funzt und mal nicht.
Ich habe den Syntax verwendet, den Steiner und Du gepostet haben. Ich werde noch verrückt.Mal schickt er laut debug einen Befehl und mal nicht.

SetValueString(„X10.TX“, „A1
A OFF“); //ausschalten
SetValueString(„X10.TX“, „A1
A ON“); //einschalten

Falls ich da einen Fehler mache, so wäre ich für eine Klärung dankbar.

Gruß

Alex

X10 Debug.JPG

Die Arbeitsweise des Scripts ist mir vom LCN bekannt …

Der Effekt ist dem von Alex gleich - mal geht es, mal nicht.
Mein Debug sieht dem von Alex sehr ähnlich.

Das CM11 setzt meine Wünsche leider nicht um.
Nutze ich „falsche“ Befehle (extendet?)?

Ich hätte da auch noch ein TM13, das ich überhaupt nicht angesprochen bekomme - auch nicht mit der Marmitek-Fernbedienung „8in1“.

Hat noch jemand ein paar Ideen zur Fehlersuche für mich?

Grüße, Uwe

Hi,

ich habe heute meine X10 Geräte bekommen. Ohne Rechner funktioniert alles sehr gut. Das CM11 habe ich am Rechner angeschlossen und das Script eingerichtet. Es läuft ebenfalls sehr gut.

Schaltbefehle senden geht problemlos, nur Empfangen kann ich nichts. Wenn ich eine Taste auf der Fernbedienung drücke, dann sehe ich, dass Daten über COM.BUFFER eingehen. X10.RX bekommt davon aber fast nie etwas mit.

Die Statusvariablen (z. B. A2.Status) werden entsprechend auch selten gesetzt.

Hat jemand eine Lösung, wie die Schaltbefehle zuverlässiger eingelesen werden können? Im Moment weiß die IPS ja nie genau welchen Zustand ein Gerät hat.

Ich wünsche einen schönen Abend.

Christoph.

Hallo zusammen!

Hat schon jemand das Script an V2 angepasst und könnte es zur Verfügung stellen?

Gruss, Michael