Module für pilight (Senden und Empfangen)

Begonnen von Risiko, 03 März 2015, 20:33:54

Vorheriges Thema - Nächstes Thema

Risiko

#135
@Roger79,

ja das Notify kommt aktuell zwei mal. Das vom WEB ist meiner Meinung nach nicht i.O. bzw. überflüssig.
Weiß aber jetzt spontan auch nicht, wie man das abstellt. Das Notify direkt vom Switch kann man nicht raus nehmen, sonst würde beim Schalten per Fernbedienung kein Notify erzeugt.

Das rausnehmen per ignoreProtocol ist auf jeden Fall nicht der richtige Weg.

Verwendung von event-on-change-reading sollte helfen.

Werde ich bei Gelegenheit mal prüfen.

Risiko

StG (DD)


Risiko

#137
Zitat von: Risiko am 09 Mai 2015, 12:11:18
Erweiterung Dimmer:
ON\OFF (gibt es ja schon): Dimlevel auf 100\0% setzen (evtl. einstellbar)
Up\Down: senden und verändern des Dimlevels um Step
Dimlevel setzen: N mal up\down senden, wenn Dimmer keinen direkten Dimlevel hat

Ich habe die Funktionalität des Dimmers erweitert. Es ist jetzt möglich, den Dimmer um die Screen (up|down) Funktionalität zu erweitern.
Dazu muss bei der Definition das passende Screen-Protokoll mit angegeben werden (2. optionales Protokoll).
Es ist auch möglich, einen Dimmer aus Screen- und Switch-Protokoll zu erstellen. Die Hardware unterstützt in diesem Fall keinen dimlevel direkt (Bezug zu hier: http://forum.fhem.de/index.php/topic,34632.msg293014.html#msg293014).

Beispiele in CommandRef (ab morgen)

Risiko.

klausw

#138
Zitat von: Risiko am 20 Mai 2015, 22:11:22
Ich habe die Funktionalität des Dimmers erweitert. Es ist jetzt möglich, den Dimmer um die Screen (up|down) Funktionalität zu erweitern.
Dazu muss bei der Definition das passende Screen-Protokoll mit angegeben werden (2. optionales Protokoll).
Es ist auch möglich, einen Dimmer aus Screen- und Switch-Protokoll zu erstellen. Die Hardware unterstützt in diesem Fall keinen dimlevel direkt (Bezug zu hier: http://forum.fhem.de/index.php/topic,34632.msg293014.html#msg293014).

Beispiele in CommandRef (ab morgen)
Super Sache, das werde ich heute gleich mal testen.
Definiert habe ich es schon einmal und die Botschaften die rausgehen machen einen guten Eindruck  :D.

2 Dinge sind mir aufgefallen:
1. eher kosmetisch:
in Zeile 176 und 177 :noArg hinzufügen. Das sorgt dafür, das in der Detailansicht hinter den entsprechenden Werten kein Eingabefeld erscheint.
  my $canSet = "on:noArg off:noArg";
  $canSet .= " up:noArg down:noArg" if ($hash->{helper}{ISSCREEN});


2. up und down setzen das dimlevel korrekt. on und off verändern das dimlevel aber nicht (es sollte dann sicher auf 0 bzw. max gehen)


Wenn ich am schieber einen Wert einstelle wird dann entsprechend des Differenzwertes n mal die up bzw. down Botschaft geschickt?
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Risiko

Hallo klausw
Zitat von: klausw am 21 Mai 2015, 11:18:36
1. eher kosmetisch:
in Zeile 176 und 177 :noArg hinzufügen. Das sorgt dafür, das in der Detailansicht hinter den entsprechenden Werten kein Eingabefeld erscheint.
  my $canSet = "on:noArg off:noArg";
  $canSet .= " up:noArg down:noArg" if ($hash->{helper}{ISSCREEN});

Ok. Werde ich übernehmen.

Zitat von: klausw am 21 Mai 2015, 11:18:36
2. up und down setzen das dimlevel korrekt. on und off verändern das dimlevel aber nicht (es sollte dann sicher auf 0 bzw. max gehen)
Nein. Ist eigentlich so beabsichtigt, dass on|off nichts am dimlevel ändern. Wenn von off wieder auf on geschalten wird, dann wird der letzte Dimlevel gleich mit gesendet und gesetzt.
Im Falle, dass das Device kein dimlevel kann, könnte man evtl. nochmal überlegen was da sinnvoll ist.

Zitat von: klausw am 21 Mai 2015, 11:18:36
Wenn ich am schieber einen Wert einstelle wird dann entsprechend des Differenzwertes n mal die up bzw. down Botschaft geschickt?
Ja genau. So sollte es sein!

Risiko

klausw

Zitat von: Risiko am 21 Mai 2015, 18:24:14
Nein. Ist eigentlich so beabsichtigt, dass on|off nichts am dimlevel ändern. Wenn von off wieder auf on geschalten wird, dann wird der letzte Dimlevel gleich mit gesendet und gesetzt.
Im Falle, dass das Device kein dimlevel kann, könnte man evtl. nochmal überlegen was da sinnvoll ist.
Ahso, jetzt verstehe ich. So ganz rund läuft es noch nicht (was jammern auf hohem Niveau ist ;)).
Der Funkdimmer schaltet bei einem "on" direkt auf 100%. D. h. beim einschalten dürften nur "up"s gesendet werden.
Wenn kein Dimlevel existiert wäre es meiner Meinung nach sinnvoll, es beim einschalten auf Maximum zu setzen.
Auch würde ich vorschlagen, wenn das dimlevel auf 0 gesetzt wird, direkt off zu schicken und evtl. den letzten dimmzustand im dimlevel zu speichern.

Zitat von: Risiko am 21 Mai 2015, 18:24:14
Ja genau. So sollte es sein!
das funktioniert auch so. habe es gerade probiert
super! ;)
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Risiko

@klausw
Ich habe ein paar Kleinigkeiten entsprechend deinen Vorschlägen angepasst.
Anbei schon mal die Version zum Testen. Geht sonst so ins Repository.

Risiko

klausw

Zitat von: Risiko am 21 Mai 2015, 20:09:50
@klausw
Ich habe ein paar Kleinigkeiten entsprechend deinen Vorschlägen angepasst.
Anbei schon mal die Version zum Testen. Geht sonst so ins Repository.

Risiko
Hallo Risiko,

habe gerade mal probiert:
wenn man in den details das dimlevel setzt, oder auch andere set's werden die readings nicht aktualisiert
dimlevel auf 0 klappt -> wird direkt ausgeschaltet
set auf on schaltet immer auf 100%

RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Risiko

Zitat von: klausw am 21 Mai 2015, 21:45:15
wenn man in den details das dimlevel setzt, oder auch andere set's werden die readings nicht aktualisiert
Kann ich nicht so richtig nachvollziehen. Schaue mirs aber nochmal an
Zitat von: klausw am 21 Mai 2015, 21:45:15
set auf on schaltet immer auf 100%
Dachte es ist so gewollt.

klausw

Zitat von: Risiko am 21 Mai 2015, 22:35:12
Kann ich nicht so richtig nachvollziehen. Schaue mirs aber nochmal an
Dachte es ist so gewollt.
Die readings werden nach einem reboot auch wieder aktualisiert. Da ist wohl eher bei mir der Wurm drin.

Ich hatte es anders verstanden. Aber wie es umgesetzt wird ist eigentlich egal.

Im Moment ist ein Problem (ich habe default werte... 15 stufen, stepsize 1):

state ist on / dimlevel auf 15 -> set dimlevel 0 führt zu -> state ist off / dimlevel auf 15
wenn ich jetzt set up mache dann zählt das dimlevel immer höher (über 15) und set dimlevel 15 führt zum ausschalten.

oder

state ist on / dimlevel auf 15 -> set off führt zu -> state ist off / dimlevel auf 15
gleiches Problem
der dimlevel passt nicht mehr

eine Möglichkeit währe es, den dimlevel bei on auf max und bei off auf 0 zu setzen
oder
bei set off den dimlevel beibehalten und bei set on dimlevel * up zu machen (also hochdimmen)
dann ist aber das problem, was man macht, wenn z.B. off ist und dimlevel auch max und man führt set up aus

daher ist es vermutlich am besten bei
set off -> state off / dimlevel off
set on -> state on / dimlevel max
set dimlevel 0 -> state off / dimlevel off

ich hoffe ich habe nix vergessen und dich nicht verwirrt ;)

und Danke füe deine Arbeit :)

RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Risiko

Hi.

Das sollte so nicht sein. Wie sind die Attribute dimlevel_max_device, dimlevel_max, dimlevel_step gesetzt?
dimlevel_max_device muss <= dimlevel_max sein.
Komme heut und morgen nicht dazu mir das anzusehen :-[

Risiko.

klausw

Zitat von: Risiko am 22 Mai 2015, 18:15:48
Das sollte so nicht sein. Wie sind die Attribute dimlevel_max_device, dimlevel_max, dimlevel_step gesetzt?
dimlevel_max_device muss <= dimlevel_max sein.
beides nicht gesetzt

Zitat von: Risiko am 22 Mai 2015, 18:15:48
Komme heut und morgen nicht dazu mir das anzusehen :-[
Das macht nix. Für den Anfang ist es schon super nutzbar :)
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Risiko

Hi.
V1: dimlevel_max_device und dimlevel_max auf den maximalen Wert z.B. 15 und dimlevel_step auf 1
V2: dimlevel_max auf 100 und dimlevel_step auf 6 bzw 7, so das ca. 15 Abstufungen resultieren.

Risiko.

klausw

Hallo,
Zitat von: Risiko am 22 Mai 2015, 22:32:34
V1: dimlevel_max_device und dimlevel_max auf den maximalen Wert z.B. 15 und dimlevel_step auf 1
V2: dimlevel_max auf 100 und dimlevel_step auf 6 bzw 7, so das ca. 15 Abstufungen resultieren.
Ah, ich dachte dimlevel_max_device ist standardmäßig 15, wenn es nicht gesetzt ist
Jetzt bleibts auch bei 15 stehen.

Das einzige was noch fehlt ist ist, das bei off das dimlevel auf 0 gesetzt wird.
Dann sollte alles funktionieren.

Klaus
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

raspberry

Zitat von: Risiko am 04 Mai 2015, 18:38:53
ja genau. Das war das Problem.
Darauf hin habe ich das Handling mit der Warteschlange komplett umgestellt.

Wieso verwendest du nicht einfach den letzten Stand?
Hallo Risiko,

vielen Dank für die Antwort! Ich habe die aktuelle Version des Moduls schon verwendet bzw. verwende sie, mich hat nur interessiert ob es wirklich ein Problem mit der Warteschlange war, weil ich damit auch ein paar Stunden verbracht habe. ;-)

Besten Dank und viele Grüße

raspberry