Neue Firmware für HM_LC_Sw1PBU_FM mit getrenntem Aktor, Taster + Wechselschalter

Begonnen von jab, 29 Dezember 2013, 22:04:10

Vorheriges Thema - Nächstes Thema

Dirk

Zitat von: frank am 16 Oktober 2014, 00:00:22
betrifft das auch den minibootloader? muss also zwangsläufig über isp geflasht werden oder reicht hierfür ein ota-update?
Ja. Wenn du aber den 8k Loader benutzt, kannst du ggf. auf die letzten Page verzichten :)

Ich hoffe das war der letzte Bug. vor allem im "Miniloader"
Daher, falls jemand lust auf Codereview hat währ das auch gut.

frank

Zitat von: Dirk am 16 Oktober 2014, 00:02:30
Ja. Wenn du aber den 8k Loader benutzt, kannst du ggf. auf die letzten Page verzichten :)
noch ist das kabel dran. das werde ich dann wohl nochmal ausnutzen. nicht das dann für die weihnachts-edition eventuell der platz nicht mehr ausreicht.  8)
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

frank

hallo unimatrix,

ich versuche gerade deine experimentelle adaption der alternativen firmware zum laufen zu bringen. es scheint so, dass die libraries nicht auf dem stand der ino.datei sind. zumindestens relay.cpp/relais.h können mit:

CurrentSenseRelay relay[2];

nichts anfangen. könntest du das eventuell reparieren?

ich möchte der firmware das automatische einlesen der devicedaten aus dem bootloaderbereich beibringen. nun wollte ich mich am beispiel des wettersensors von dirk orientieren, um die aktuelle firmware zu ergänzen. musste dabei aber feststellen, dass bei jeder änderung des codes weitere änderungen nötig werden. das wird dann wohl damit enden, dass dann ebenfalls die gesamte struktur erneuert ist.  ;) 
also käme mir deine version natürlich sehr entgegen.

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Mr. P

Hej frank,

hab heute auch endlich Zeit gefunden, mich mit den Schaltern zu beschäftigen und nach deiner Anleitung ging das Flashen des Bootloaders auch prima.
Aber dafür hänge ich derzeit bei der Firmware. Habe die Version von jab entsprechend mit den Daten des Schalters gebaut und ota geflasht...
Zumindest ohne firstload ist es mir nicht gelungen, mit der Zentrale zu sprechen, die mit firstload flashe ich gerade (was eigentlich wenig überraschend ist, da ich meinen ersten Schalter damals auch so "bauen" musste, damit es schlussendlich geklappt hat).
Welche Version hast du derzeit im Einsatz?

Ich habe unimatrix vor einiger Zeit einmal wegen seiner Firmware-Version gefragt, und da meinte er, die wäre wohl kaputt... Seither hat er in sein Repository allerdings auch leider nichts mehr eingecheckt und ich schaue regelmäßig, ob nicht doch was kommt, da er damals noch ein paar Dinge eingebaut bzw. gefixt hatte, die mir aufgefallen waren. :-)
Greetz,
   Mr. P

frank

ZitatZumindest ohne firstload ist es mir nicht gelungen, mit der Zentrale zu sprechen, die mit firstload flashe ich gerade...
Welche Version hast du derzeit im Einsatz?
die offizielle von jan. ohne firstload. meine daten eingetragen (hmid, sn, model=0xF0A9). wurde die eq3 datei auch vom bootloader akzeptiert, oder blinkt der bootloader weiterhin und hat die datei wegen crc-check verworfen? mit normalem pairen habe ich auch probleme. ich paire mittlerweile immer mit "set <dev> regset paircentral xxxxxx". das funktioniert komischerweise. welche rawmessage wird denn vom schalter gesendet, wenn du den configschalter 5s drückst (pairing-modus)?

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

frank

noch ein kleiner tip:

mit diesem geänderten code in der ino.datei:

if (idx == 0) {
        if (state == 0) {
hm.ld.shortBlink();
hm.recv_UpdateEvent();
}
if (state == 2) { // long key press, start pairing
hm.ld.shortBlink3();
hm.startPairing();
}
if (state == 5) hm.reset(); // double long key press, reset the device
}


kannst du den bootloader mit einem kurzen tastendruck starten ein langer tastendruck wird mit dreimaligem blinken angezeigt.  ;)

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Mr. P

Zitat von: frank am 18 Oktober 2014, 19:07:06
die offizielle von jan. ohne firstload. meine daten eingetragen (hmid, sn, model=0xF0A9). wurde die eq3 datei auch vom bootloader akzeptiert, oder blinkt der bootloader weiterhin und hat die datei wegen crc-check verworfen? mit normalem pairen habe ich auch probleme. ich paire mittlerweile immer mit "set <dev> regset paircentral xxxxxx". das funktioniert komischerweise. welche rawmessage wird denn vom schalter gesendet, wenn du den configschalter 5s drückst (pairing-modus)?
Danke für den Tipp mit dem pairCentral... Damit hat es auf Anhieb wunderbar geklappt. :-)
Werde den Schalter jetzt einmal fertig einrichten... Der Rest sollte ja kein Problem mehr sein.
Greetz,
   Mr. P

Mr. P

Hej again,

der Schalter hängt jetzt an der Wand und ich mache meine ersten Tests für die Wechselschaltung.
Dadurch ist mir jetzt auch erstmals aufgefallen, dass ich die beiden internen Knöpfe mit beiden Schaltern peeren und damit das Relais schalten kann. Aber ich komme gerade nicht dahinter, welches Szenario es geben könnte, wo man beide (oder überhaupt nur den ersten) Schalter verwenden will und nicht nur mit dem Zweiten auskommen würde, da dieser auch die Strommessung durchführt.
Any ideas? :-)
Greetz,
   Mr. P

jab

Moin,

@Mr. P.: Den ersten Channel kann man ohne Wechselschaltung nutzen. Er ist auf jeden Fall etwas schneller als der andere. Allerdings hast du schon recht, dass man ihn nicht mehr zwingend braucht, wenn die Stromerkennung funktioniert.

Ich plane gerade den 31C3. Wir haben ein Assembly angemeldet (da bekommt man Tische und Stühle im Hackcenter). Wer hat Lust auf ein Homematic Homebrew Entwicklertreffen?

Ich brauche ein grobe Anzahl an Personen die zusätzlich kommen. Aktuell sind wir ein allgemeines Assembly mit ca 10 Personen die teilweise auch an Homematic basteln. Wir könnten da aber locker unterkommen. Sollten wir sehr viele werden würde ich ein separates Assembly anmelden.


Gruß,
Jan


Mr. P

Hej Jan,

danke für deine Antwort.

Zitat von: jab am 18 Oktober 2014, 23:00:07
@Mr. P.: Den ersten Channel kann man ohne Wechselschaltung nutzen. Er ist auf jeden Fall etwas schneller als der andere. Allerdings hast du schon recht, dass man ihn nicht mehr zwingend braucht, wenn die Stromerkennung funktioniert.
Nachdem ich jetzt 1 1/2 Stunden lange versucht habe, einen HM-PB-2-FM zu peeren, hab ich erst deine Antwort gelesen. Nach langem hin und her ist es mir zwar gelungen, aber selbst das Schalten funktioniert äußerst schlecht - dem Blinken von dem HM-PB-2-FM nach, scheint es, als würde er seine Nachrichten nicht los werden. Kann es sein, dass es beim Sw02 auch leichter zu Timingproblemen kommen kann?

Zitat von: jab am 18 Oktober 2014, 23:00:07
Ich plane gerade den 31C3. Wir haben ein Assembly angemeldet (da bekommt man Tische und Stühle im Hackcenter). Wer hat Lust auf ein Homematic Homebrew Entwicklertreffen?
So gerne ich auch würde, aber so um Weihnachten soll mein Nachwuchs das Licht der Welt erblicken und da hab ich dann bestimmt auch ganz andere Dinge im Kopf. ;-)

So - gehe jetzt erstmals ein wenig frustriert ins Bett! :-)
Greetz,
   Mr. P

frank

ZitatNach langem hin und her ist es mir zwar gelungen, aber selbst das Schalten funktioniert äußerst schlecht
du hast schon noch im kopf, dass dein lampenstrom auch eine gewisse stärke haben muss. wenn du keine anpassung im code vorgenommen hast, muss der currentwert aus chn4 bei leuchtender lampe über 500 liegen. mit einer 11w energiesparleuchte erhalte ich nur ca. 350. http://forum.fhem.de/index.php/topic,18071.msg194336.html#msg194336

bei meinen ersten versuchen mit dem schalter hatte ich auch mal einen internen taster mit chn4 gepeert. damals konnte ich keinen besonderen unterschied erkennen. peering und schalten funktiionierte mit chn3/4 gleichermassen gut. zumindestens mit dem internen taster.

ZitatIch plane gerade den 31C3. Wir haben ein Assembly angemeldet (da bekommt man Tische und Stühle im Hackcenter). Wer hat Lust auf ein Homematic Homebrew Entwicklertreffen?
coole idee.  8)

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Mr. P

Zitat von: frank am 19 Oktober 2014, 10:51:12
du hast schon noch im kopf, dass dein lampenstrom auch eine gewisse stärke haben muss. wenn du keine anpassung im code vorgenommen hast, muss der currentwert aus chn4 bei leuchtender lampe über 500 liegen. mit einer 11w energiesparleuchte erhalte ich nur ca. 350.
Hej frank,

herzlichen Dank für den Tipp... aber den Wert hab ich bereits überprüft und liegt immer etwas über 800.
Greetz,
   Mr. P

Mr. P

Tja... Oft kann es so einfach sein.
Wie es scheint, war einfach eine der neuen Batterien leer.
Hab jetzt sicherheitshalber auch alle Lötstellen am Schalter nochmal nachgemessen, aber da scheint alles soweit in Ordnung zu sein.
Mal abwarten, was die nächsten Tage so bringen. :-)
Greetz,
   Mr. P

nephdrasil

Hallo an alle,

vielleicht könnt ihr mir bei meinem Problem weiterhelfen.

Ich möchte gern die den schalter mit flash ota flaschen. Leider kommt immer ein Waiting for device with serial KEQ0000001.

Denn Bootloader habe ich über sudo avrdude -p m644 -P gpio -c gpio -V -U flash:w:Bootloader-AskSin-OTA-HM_LC_Sw1PBU_FM_8k.hex drauf bekommen. Die Fuses habe ich per sudo avrdude -p m644 -P gpio -c gpio -U lfuse:w:0xFD:m -U hfuse:w:0xD8:m -U lock:w:0x3F:m habe ich so gesetzt. Vielleicht kann mir noch jemand erläutern was der Befehl macht.

Die Installation des Bootloaders ging somit augenscheinlich ohne Probleme.

Nur die Firmware für den Betrieb bekomme ich nicht drauf. Es bleibt immer an dieser Stelle hängen. Habe auch schon probiert die Dateien aus der Wiki zu nehmen https://owncloud.isengard.at/public.php?service=files&t=8992affb68e8c1dcbe532152628ad9a5. Gleicher effekt.

Irgend etwas muss ich falsch machen nur weis ich leider nicht was. Debugging lötstellen habe ich auch schon probiert. Hier bekomme ich aber auch nichts angezeigt.

Könnt ihr mir bitte weiterhlefen. Bin absoluter neuling. Derzeit blinkt die Led am Schalter regelmäßig 1 mal lang und 2 mal kurz.
FHEM 5.5 + Fritz Box 7390 + HM-CFG-USB + HM-CC-RT-DN

frank

ZitatDerzeit blinkt die Led am Schalter regelmäßig 1 mal lang und 2 mal kurz.
dann wartet der bootloader auf futter.

welche devicedaten (sn, hmid) hast du für den bootloader benutzt? hast du den bootloader überhaupt sebst gebaut oder ein fertiges hexfile benutzt?
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html