FHEM Forum

FHEM - Hausautomations-Systeme => MAX => Thema gestartet von: der-Lolo am 12 Oktober 2014, 11:37:52

Titel: Max, Scanner & Bluetooth Anwesenheit
Beitrag von: der-Lolo am 12 Oktober 2014, 11:37:52
Hallo Zusammen,
ich bin mit meinem FHEM auf den Cubietruck umgezogen - habe nun auch den Scanner eingerichtet soweit alles gut...

Auf meiner letzten Installation verwendete ich Bluetooth um bei Anwesenheit den Comfort Modus der Thermostate zu setzen.
Kann ich das wieder so machen - oder ist das ein problem für den Scanner?

Wie würde das nun am vernünftigsten miteinander funktionieren? Wie habt Ihr das eingerichtet?
Titel: Antw:Max, Scanner & Bluetooth Anwesenheit
Beitrag von: John am 12 Oktober 2014, 12:37:40
Hi der-Lolo,

ZitatAuf meiner letzten Installation verwendete ich Bluetooth um bei Anwesenheit den Comfort Modus der Thermostate zu setzen
Das bedeutet ja zunächst nichts anderes, als die Solltemperatur zu setzen, die bei comfortTemperature hinterlegt ist
oder allgemeiner ausgedrückt
die Solltemperatur wird nicht vom Wochenprogramm des Thermostats, sondern durch einen anderen Mechanismus verändert.

Der Scanner versucht auch dies zu berücksichtigen.

Allerdings kann auch folgendes passieren:

Diesen Fall gilt es zu bedenken.


John

Titel: Antw:Max, Scanner & Bluetooth Anwesenheit
Beitrag von: der-Lolo am 12 Oktober 2014, 12:54:28
Hallo John,
erstmal Danke für deine Antwort...

also gilt es die Zeiten des internen Wochenprogramms so zu setzen das eine Änderung der Anwesenheit "unwahrscheinlich" ist.
Das wäre ja kein problem.

Wenn ich nun die soll Temperatur auf Comfort durch die Anwesenheit ändere, hab ich doch zumindest für ein Thermostat (genau das welches den nächsten Scan durchlauf erhält) keine aktuelle soll - Temp Änderung...

Macht es nicht vielleicht sinn dem Scanner zu sagen das sich die Soll - Temp auf Comfort - Temp verändert? Sodass beim folgendem durchlauf die soll - Temp aus Comfort vorliegt?

Oder habe ich es doch noch grundsätzlich falsch verstanden?
Titel: Antw:Max, Scanner & Bluetooth Anwesenheit
Beitrag von: John am 12 Oktober 2014, 13:12:43

ZitatMacht es nicht vielleicht sinn dem Scanner zu sagen das sich die Soll - Temp auf Comfort - Temp verändert? Sodass beim folgendem durchlauf die soll - Temp aus Comfort vorliegt?
Der Scanner liest ja die desiredTemperature immer auch zurück bevor er mit seiner Arbeit beginnt.
Wenn diese also von aussen verändert wird merkt er das in der Regel.

Ich denke für deine Anforderung wäre folgendes optimal:

sobald Anwesenheit vorliegt:
   * Umschaltung auf DesiredMode (geht jetzt schon)
   * den Thermostat-Mode Manu wählen (bisher fix auf Auto und da hakt es derzeit)

Dann wäre das Wochenprogramm ausgehebelt, der Scanner würde sein Arbeit tun und der gewünschte Sollwert bleibt eingestellt.

John
Titel: Antw:Max, Scanner & Bluetooth Anwesenheit
Beitrag von: der-Lolo am 12 Oktober 2014, 13:19:56
Letzte Heiz-Saison habe ich einfach immer nur zwischen Eco und Comfort hin und her geschaltet, vom Prinzip her würde ich das auch wieder gerne so tun - bin aber wegen dem Scanner jetzt ein bisschen verunsichert...
Ich habe 6 Thermostate davon sind zwei miteinander gepaart da sie sich im selbem Raum befinden, bleiben den überhaupt genug Credits um also an 5 Thermostate die Änderung auf Comfort zu senden?

Nicht das es fehlschlägt weil der Scanner nicht genug Credits übrig gelassen hat...
Titel: Antw:Max, Scanner & Bluetooth Anwesenheit
Beitrag von: John am 12 Oktober 2014, 13:31:53
ZitatIch habe 6 Thermostate davon sind zwei miteinander gepaart da sie sich im selbem Raum befinden, bleiben den überhaupt genug Credits um also an 5 Thermostate die Änderung auf Comfort zu senden?

Nicht das es fehlschlägt weil der Scanner nicht genug Credits übrig gelassen hat...

Das ist eigentlich kein Problem. Wenn der Scanner nicht mindestens 300 Credits "sieht", bleibt er inaktiv.
Umgekehrt, wenn für die externen Sollwertumschaltung nicht ausreichend Credits vorhanden sind, gehen die Kommandos nicht etwa
verloren, sondern werden vom MAX-Modul gepuffert und verzögert ausgeführt.

John
Titel: Antw:Max, Scanner & Bluetooth Anwesenheit
Beitrag von: der-Lolo am 24 Oktober 2014, 09:46:13
Hallo John,
hier hat das zwar eigentlich nichts verloren -
vielleicht kannst Du mir aber trotzdem kurz erläutern wie es zu den vielen command discarded Meldungen im Log kommt...

Zitat2014.10.24 09:35:17 3: MAX ht_Bad: MaxScanRun.615 change leadDesiTemp due manipulation:17.0
2014.10.24 09:35:17 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 09:35:17 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 09:35:17 3: MAX ht_Couch: MaxScanRun.753 <<set ht_Couch desiredTemperature auto 20>>
2014.10.24 09:35:17 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:35:12 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 09:35:12 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 09:35:12 3: MAX ht_Bad: MaxScanRun.753 <<set ht_Bad desiredTemperature auto 16.5>>
2014.10.24 09:35:12 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:35:07 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 09:35:07 3: MAX ht_Kind: MaxScanRun.753 <<set ht_Kind desiredTemperature auto 19.5>>
2014.10.24 09:35:07 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:35:02 3: MAX ht_Buero: MaxScanRun.753 <<set ht_Buero desiredTemperature auto 16>>
2014.10.24 09:35:02 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:26:17 3: MAX ht_Couch: MaxScanRun.753 <<set ht_Couch desiredTemperature auto 20.5>>
2014.10.24 09:26:17 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:26:17 3: MAX ht_Couch: MaxScanRun.615 change leadDesiTemp due manipulation:20.5
2014.10.24 09:26:12 3: MAX ht_Couch: MaxScanRun.615 change leadDesiTemp due manipulation:20.5
2014.10.24 09:26:12 3: MAX ht_Bad: MaxScanRun.753 <<set ht_Bad desiredTemperature auto 17>>
2014.10.24 09:26:12 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:26:12 3: MAX ht_Bad: MaxScanRun.615 change leadDesiTemp due manipulation:17.0
2014.10.24 09:26:07 3: MAX ht_Couch: MaxScanRun.615 change leadDesiTemp due manipulation:20.5
2014.10.24 09:26:07 3: MAX ht_Bad: MaxScanRun.615 change leadDesiTemp due manipulation:17.0
2014.10.24 09:26:07 3: MAX ht_Kind: MaxScanRun.753 <<set ht_Kind desiredTemperature auto 20>>
2014.10.24 09:26:07 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:26:07 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 09:26:02 3: MAX ht_Couch: MaxScanRun.615 change leadDesiTemp due manipulation:20.5
2014.10.24 09:26:02 3: MAX ht_Bad: MaxScanRun.615 change leadDesiTemp due manipulation:17.0
2014.10.24 09:26:02 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 09:26:02 3: MAX ht_Buero: MaxScanRun.753 <<set ht_Buero desiredTemperature auto 16.5>>
2014.10.24 09:26:02 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:26:02 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 09:17:17 3: MAX ht_Bad: MaxScanRun.615 change leadDesiTemp due manipulation:17.0
2014.10.24 09:17:17 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 09:17:17 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 09:17:17 3: MAX ht_Couch: MaxScanRun.753 <<set ht_Couch desiredTemperature auto 20>>
2014.10.24 09:17:17 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:17:12 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 09:17:12 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 09:17:12 3: MAX ht_Bad: MaxScanRun.753 <<set ht_Bad desiredTemperature auto 16.5>>
2014.10.24 09:17:12 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:17:07 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 09:17:07 3: MAX ht_Kind: MaxScanRun.753 <<set ht_Kind desiredTemperature auto 19.5>>
2014.10.24 09:17:07 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:17:02 3: MAX ht_Buero: MaxScanRun.753 <<set ht_Buero desiredTemperature auto 16>>
2014.10.24 09:17:02 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:08:17 3: MAX ht_Couch: MaxScanRun.753 <<set ht_Couch desiredTemperature auto 20.5>>
2014.10.24 09:08:17 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:08:17 3: MAX ht_Couch: MaxScanRun.615 change leadDesiTemp due manipulation:20.5
2014.10.24 09:08:12 3: MAX ht_Couch: MaxScanRun.615 change leadDesiTemp due manipulation:20.5
2014.10.24 09:08:12 3: MAX ht_Bad: MaxScanRun.753 <<set ht_Bad desiredTemperature auto 17>>
2014.10.24 09:08:12 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:08:12 3: MAX ht_Bad: MaxScanRun.615 change leadDesiTemp due manipulation:17.0
2014.10.24 09:08:07 3: MAX ht_Couch: MaxScanRun.615 change leadDesiTemp due manipulation:20.5
2014.10.24 09:08:07 3: MAX ht_Bad: MaxScanRun.615 change leadDesiTemp due manipulation:17.0
2014.10.24 09:08:07 3: MAX ht_Kind: MaxScanRun.753 <<set ht_Kind desiredTemperature auto 20>>
2014.10.24 09:08:07 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:08:07 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 09:08:02 3: MAX ht_Couch: MaxScanRun.615 change leadDesiTemp due manipulation:20.5
2014.10.24 09:08:02 3: MAX ht_Bad: MaxScanRun.615 change leadDesiTemp due manipulation:17.0
2014.10.24 09:08:02 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 09:08:02 3: MAX ht_Buero: MaxScanRun.753 <<set ht_Buero desiredTemperature auto 16.5>>
2014.10.24 09:08:02 2: MAXLAN_Parse: Command was discarded
2014.10.24 09:08:02 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 08:59:17 3: MAX ht_Bad: MaxScanRun.615 change leadDesiTemp due manipulation:17.0
2014.10.24 08:59:17 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 08:59:17 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 08:59:17 3: MAX ht_Couch: MaxScanRun.753 <<set ht_Couch desiredTemperature auto 20>>
2014.10.24 08:59:17 2: MAXLAN_Parse: Command was discarded
2014.10.24 08:59:12 3: MAX ht_Kind: MaxScanRun.615 change leadDesiTemp due manipulation:20.0
2014.10.24 08:59:12 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 08:59:12 3: MAX ht_Bad: MaxScanRun.753 <<set ht_Bad desiredTemperature auto 16.5>>
2014.10.24 08:59:12 2: MAXLAN_Parse: Command was discarded
2014.10.24 08:59:07 3: MAX ht_Buero: MaxScanRun.615 change leadDesiTemp due manipulation:16.5
2014.10.24 08:59:07 3: MAX ht_Kind: MaxScanRun.753 <<set ht_Kind desiredTemperature auto 19.5>>
2014.10.24 08:59:07 2: MAXLAN_Parse: Command was discarded
2014.10.24 08:59:02 3: MAX ht_Buero: MaxScanRun.753 <<set ht_Buero desiredTemperature auto 16>>

Titel: Antw:Max, Scanner & Bluetooth Anwesenheit
Beitrag von: John am 24 Oktober 2014, 15:31:23
Hallo der-Lolo,

das kommt wohl von 00_MAXLAN.pm ab Zeile 721.

Zitat
} elsif($cmd eq "S"){#Response to s:
    $hash->{dutycycle} = hex($args[0]); #number of command send over the air
    readingsSingleUpdate( $hash, 'dutycycle', $hash->{dutycycle}, 1 );

    my $discarded = $args[1];
    $hash->{freememoryslot} = hex($args[2]);
    Log 5, "MAXLAN_Parse: dutycyle $hash->{dutycycle}, freememoryslot $hash->{freememoryslot}";

    Log 3, "MAXLAN_Parse: 1% rule: we sent too much, cmd is now in queue" if($hash->{dutycycle} == 100 && $hash->{freememoryslot} > 0);
    Log 2, "MAXLAN_Parse: 1% rule: we sent too much, queue is full" if($hash->{dutycycle} == 100 && $hash->{freememoryslot} == 0);
    Log 2, "MAXLAN_Parse: Command was discarded" if($discarded);

Wenn du verbose höher stellst wird wohl einiges deutlicher.
Ich vermute, daß die 1% Regel verletzt wurde und daher, das Kommando nicht bearbeitet wurde.

John
Titel: Antw:Max, Scanner & Bluetooth Anwesenheit
Beitrag von: der-Lolo am 24 Oktober 2014, 15:54:28
Hm - das ist aber komisch, es gab keine besonderen Vorkommnisse, FHEM hat nicht gesteuert, die Thermostate laufen im Wochenprogramm und wurden per Hand manipuliert. Lediglich der Scanner ist aktiv.
Fenster wurden auch nicht geöffnet.
Titel: Antw:Max, Scanner & Bluetooth Anwesenheit
Beitrag von: John am 25 Oktober 2014, 10:23:05
Hast du verbose schon mal auf 5 gestellt ?

Es würde mich wundern, wenn im Zusammenhang mit dem vorherigen Fehler eine dieser Fehlermeldungen erscheinen würde,
das der Scanner auch auf die Dutycycle/Credits achtet.

ZitatLog 3, "MAXLAN_Parse: 1% rule: we sent too much, cmd is now in queue" if($hash->{dutycycle} == 100 && $hash->{freememoryslot} > 0);
    Log 2, "MAXLAN_Parse: 1% rule: we sent too much, queue is full" if($hash->{dutycycle} == 100 && $hash->{freememoryslot} == 0);

John