Anbindung Controller an IP-Symcon
-
Alex
- Administrator
- Beiträge: 9988
- Registriert: 28. Mai 2014, 23:00
Re: Anbindung Controller an IP-Symcon
Kommt drauf an wieviel Aufwand Du betreiben möchtest etwas "fern" zu steuern.
Es gibt eine einfache Variante Relais per HTTP Request zu schalten. Die Controller-Internen Regeln und Funktionen haben dabei aber immer Vorrang.
Siehe: https://www.poolsteuerung.de/viewtopi ... 9&t=29#p51
Es gibt eine einfache Variante Relais per HTTP Request zu schalten. Die Controller-Internen Regeln und Funktionen haben dabei aber immer Vorrang.
Siehe: https://www.poolsteuerung.de/viewtopi ... 9&t=29#p51
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
Hat schon jemand die Steuerung des DMX Controllers auf dem Board per "Fernsteuerung" (IPS) gelöst oder hat ne passende Idee dazu ??
Gruß
Jens
Gruß
Jens
-
Alex
- Administrator
- Beiträge: 9988
- Registriert: 28. Mai 2014, 23:00
Re: Anbindung Controller an IP-Symcon
Du bekommst z.B. mit einem http GET Request an /GetDmx.csv die aktuellen Kanalwerte der 16 verfügbaren Kanäle zurückgeliefert (kannst auch im Browser aufrufen), als Komma-getrennte Zeichenkette 0,0,0,.... usw. Die Kanalwerte liegen DMX entsprechend zw. 0 und 255
Um Kanalwerte zu setzen musst Du einen POST Request an /usrcfg.cgi schicken, der folgende name/value Paare enthält
TYPE=0
LEN=16
CH1_8=0,0,0,0,0,0,0,0
CH9_16=0,0,0,0,0,0,0,0
DMX512=1
Die Zeile CH1_8 gibt die neuen Kanalwerte für die Kanäle 1-8 vor, CH9_16 entsprechend für Kanal 9 bis 16.
Also um z.B. die Kanäle 1, 2 und 10 auf max. zu setzen:
TYPE=0
LEN=16
CH1_8=255,255,0,0,0,0,0,0
CH9_16=0,255,0,0,0,0,0,0
DMX512=1
Der Request muss IMMER vollständig sein und alle 16 neuen Kanalwerte enthalten. Ebenso alle anderen Parameter (wichtig!), wobei für diesen Anwendungsfall TYPE, LEN und DMX512 immer konstant so wie oben beschrieben sein müssen (TYPE=0, LEN=16, DMX512=1).

Um Kanalwerte zu setzen musst Du einen POST Request an /usrcfg.cgi schicken, der folgende name/value Paare enthält
TYPE=0
LEN=16
CH1_8=0,0,0,0,0,0,0,0
CH9_16=0,0,0,0,0,0,0,0
DMX512=1
Die Zeile CH1_8 gibt die neuen Kanalwerte für die Kanäle 1-8 vor, CH9_16 entsprechend für Kanal 9 bis 16.
Also um z.B. die Kanäle 1, 2 und 10 auf max. zu setzen:
TYPE=0
LEN=16
CH1_8=255,255,0,0,0,0,0,0
CH9_16=0,255,0,0,0,0,0,0
DMX512=1
Der Request muss IMMER vollständig sein und alle 16 neuen Kanalwerte enthalten. Ebenso alle anderen Parameter (wichtig!), wobei für diesen Anwendungsfall TYPE, LEN und DMX512 immer konstant so wie oben beschrieben sein müssen (TYPE=0, LEN=16, DMX512=1).
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
Danke, damit kann ich erst mal rumspielen 
-
Alex
- Administrator
- Beiträge: 9988
- Registriert: 28. Mai 2014, 23:00
Re: Anbindung Controller an IP-Symcon
Viel Spass 
Machst das dann in php?
Machst das dann in php?
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
Wenn ich denn endlich dazu komme ...
Geplant ist die Anbindung an IP-Symcon und somit natürlich in PHP.
Geplant ist die Anbindung an IP-Symcon und somit natürlich in PHP.
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
Alex hat geschrieben:Du bekommst z.B. mit einem http GET Request an /GetDmx.csv die aktuellen Kanalwerte der 16 verfügbaren Kanäle zurückgeliefert (kannst auch im Browser aufrufen), als Komma-getrennte Zeichenkette 0,0,0,.... usw. Die Kanalwerte liegen DMX entsprechend zw. 0 und 255
Um Kanalwerte zu setzen musst Du einen POST Request an /usrcfg.cgi schicken, der folgende name/value Paare enthält
....
Der Request muss IMMER vollständig sein und alle 16 neuen Kanalwerte enthalten. Ebenso alle anderen Parameter (wichtig!), wobei für diesen Anwendungsfall TYPE, LEN und DMX512 immer konstant so wie oben beschrieben sein müssen (TYPE=0, LEN=16, DMX512=1).
Code: Alles auswählen
$url = 'http://IP/usrcfg.cgi';
$data = array('TYPE' => '0', 'LEN' => '16', 'DMX512' => '1', 'CH1_8' => '255,255,0,0,0,0,0,0', 'CH9_16' => '0,255,0,0,0,0,0,0');
// use key 'http' even if you send the request to https://...
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data)
)
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
if ($result === FALSE) { /* Handle error */ }
var_dump($result);Gruß
Jens
-
Alex
- Administrator
- Beiträge: 9988
- Registriert: 28. Mai 2014, 23:00
Re: Anbindung Controller an IP-Symcon
Hast in der KONFIGURATION -> SONSTIGES, DMX generell mal eingeschaltet?
Man kann die DMX Geschichte dort vollständig deaktivieren.
"ENABEL DMX" -> Haken setzen
"Max. DMX Kanäle" auf mind. 16 einstellen
Man kann die DMX Geschichte dort vollständig deaktivieren.
"ENABEL DMX" -> Haken setzen
"Max. DMX Kanäle" auf mind. 16 einstellen
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
In der Konfig habe ich jetzt enabled, 16 Kanäle sind eingestellt. Eine Änderung auf der Oberfläche bewirkt auch eine Änderung in der GetDmx.csv.
Startadreesse DMX ist 0 eingestellt.
Der Code zum Setzen der Werte bewirkt leider nix, ist das denn so richtig ?
Muss da irgendwo noch der Benutzer mit übergeben werden, falls ja wie genau ?
Gruß
Jens
Startadreesse DMX ist 0 eingestellt.
Der Code zum Setzen der Werte bewirkt leider nix, ist das denn so richtig ?
Muss da irgendwo noch der Benutzer mit übergeben werden, falls ja wie genau ?
Gruß
Jens
-
Alex
- Administrator
- Beiträge: 9988
- Registriert: 28. Mai 2014, 23:00
Re: Anbindung Controller an IP-Symcon
Hab keine Ahnung von php und wie das den Request zusammenbaut.
Aber setze DMX512=1 mal ans Ende der geschickten values.
Intern, im eigenen Netzwerk, sollte es auch ohne Username/Passwort gehen.
Aber setze DMX512=1 mal ans Ende der geschickten values.
Intern, im eigenen Netzwerk, sollte es auch ohne Username/Passwort gehen.
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
Ok, daran wirds gelegen haben, ich dachte die Reihenfolge spielt keine Rolle.
Die GetDmx.csv hat jetzt die übergebenen Werte, in der Oberfläche selbst sieht man allerdings keine Änderung der Regler.
Gruß
Jens
Die GetDmx.csv hat jetzt die übergebenen Werte, in der Oberfläche selbst sieht man allerdings keine Änderung der Regler.
Gruß
Jens
-
Alex
- Administrator
- Beiträge: 9988
- Registriert: 28. Mai 2014, 23:00
Re: Anbindung Controller an IP-Symcon
Ne, die "alte" Oberfläche aktualisiert nix wenn man die Kanalwerte extern verändert.
Phase2 aktualisiert die Kanalregler nach ein paar Sekunden.... müsst nochmal nachkucken... ich glaub alle 10 Sekunden.
Phase2 aktualisiert die Kanalregler nach ein paar Sekunden.... müsst nochmal nachkucken... ich glaub alle 10 Sekunden.
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
Phase2 holt sich aber nur die gleichen Werte in die Regler, wie in der Oberfläche zu sehen sind. Das sind nicht die, die ich an an usrcfg.cgi übergeben habe
-
Alex
- Administrator
- Beiträge: 9988
- Registriert: 28. Mai 2014, 23:00
Re: Anbindung Controller an IP-Symcon
Doch, schon. Nicht auf der Konfigurationsseite natürlich, aber auf der "DMX/EnOcean Control" werden die Slider mit aktualisiert (wenn man sie aufgeklappt hat bei den entsprechenden Pattern...) Und sie müssen in dem Pattern natürlich enthalten sein, es werden ja nur die Slider der Kanäle eingeblendet, die zu dem entsprechenden Pattern gehören
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
Kein Plan an was es gelegen hat, aber jetzt gehts.
Danke für die Hilfe !
Gruß
Jens
Danke für die Hilfe !
Gruß
Jens
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
*edit*
Fehler selber behoben:
Damit kann ich jetzt die Stati der Relais verändern.
Besteht auch die Möglichkeit die Stati der Dosiereinstellungen zu ändern (auto/aus) ?
Gruß
Jens
Fehler selber behoben:
Code: Alles auswählen
$url = IP/usrcfg.cgi';
$data = array('ENA' => '1,1', 'MANUAL' => '1');
$request = http_build_query($data);
$size = strlen($request);
// use key 'http' even if you send the request to https://...
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'length' => $size,
'content' => http_build_query($data)
)
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
if ($result === FALSE) { /* Handle error */ };
Besteht auch die Möglichkeit die Stati der Dosiereinstellungen zu ändern (auto/aus) ?
Gruß
Jens
-
Matze
- Beiträge: 3
- Registriert: 6. Januar 2015, 12:47
Re: Anbindung Controller an IP-Symcon
Sevensworld hat geschrieben:*edit*
Fehler selber behoben:
Damit kann ich jetzt die Stati der Relais verändern.Code: Alles auswählen
$url = IP/usrcfg.cgi'; $data = array('ENA' => '1,1', 'MANUAL' => '1'); $request = http_build_query($data); $size = strlen($request); // use key 'http' even if you send the request to https://... $options = array( 'http' => array( 'header' => "Content-type: application/x-www-form-urlencoded\r\n", 'method' => 'POST', 'length' => $size, 'content' => http_build_query($data) ) ); $context = stream_context_create($options); $result = file_get_contents($url, false, $context); if ($result === FALSE) { /* Handle error */ };
Besteht auch die Möglichkeit die Stati der Dosiereinstellungen zu ändern (auto/aus) ?
Gruß
Jens
Hi Jens,
wie kannst du php auf dem Controller ausführen?
Gruss Mathias
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
Gar nicht!?
Mein Smart Home Server stellt PHP bereit ...
Gruß
Jens
Mein Smart Home Server stellt PHP bereit ...
Gruß
Jens
-
Matze
- Beiträge: 3
- Registriert: 6. Januar 2015, 12:47
Re: Anbindung Controller an IP-Symcon
Sevensworld hat geschrieben:Gar nicht!?
Mein Smart Home Server stellt PHP bereit ...
Gruß
Jens
Und wie genau?
-
Sevensworld
- Beiträge: 56
- Registriert: 13. April 2016, 18:42
Re: Anbindung Controller an IP-Symcon
??
Evtl. verstehe ich Deine Frage nicht, aber wie man an der Überschrift dieses Threads erkennen kann, geht es um die Software IP-Symcon und vereinfacht ausgedrückt macht man in IPS quasi alles mit PHP.
Das PHP Script selbst ist doch in den Postings zu sehen .. !?
Gruß
Jens
Evtl. verstehe ich Deine Frage nicht, aber wie man an der Überschrift dieses Threads erkennen kann, geht es um die Software IP-Symcon und vereinfacht ausgedrückt macht man in IPS quasi alles mit PHP.
Das PHP Script selbst ist doch in den Postings zu sehen .. !?
Gruß
Jens