Alternative Firmware für HM-LC-SW2-FM ?

Begonnen von Klaus0815, 16 September 2017, 21:07:39

Vorheriges Thema - Nächstes Thema

Klaus0815

ZitatNö - passiert das auch ohne Tastendruck ?

schwer zu sagen, er geht halt irgendwann für ein paar Sekunden nicht mehr.
Schwer, herauszufinden ob er sich dann schon davor aufgehängt hatte oder dieser eine Tastendruck der Auslöser war.

Ich vermute auch das es an den 50 Hz liegt, siehst Du eine einfache Möglichkeit das softwareseitig abzufangen?


papa

Zitat von: Klaus0815 am 15 Oktober 2017, 21:34:47
Ich vermute auch das es an den 50 Hz liegt, siehst Du eine einfache Möglichkeit das softwareseitig abzufangen?

Ich hoffe mal ja.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

papa

Bitte mal die Datei Pins.h durch die angehängte austauschen.
Ich versuche dort das möglicherweise schnelle An/Aus abzufangen.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Klaus0815

bin endlich dazu gekommen, das Ganze zu testen - leider nur bedingt besser

Der Aktor reagiert manchmal nicht auf Tastendruck, nach ca. 5 - 10 sec reagiert er wieder

Ich bilde mir aber ein, das der Fehler jetzt seltener auftritt und auch die Zeit bis er wieder reagiert kürzer geworden ist.

Interessant ist evtl. noch, das wenn die Tasten nicht funktionieren ich ihn trotzdem noch per Funk / FHEM steuern kann.
Senden tut er aber bei ignoriertem Tastendruck nichts

Hast Du vielleicht sonst noch eine Idee?

Viele Grüße
Klaus

papa

Hm - da muss ich mir mal irgendwas zusammenbauen, damit ich auch Impulse auf dem Taster habe.

Du könntest mal noch probieren, die Anzahl der Änderungen, die benötigt werden um Zurückzuschalten, zu erhöhen. Die '3' in Zeile 80 & 85 auf 6 erhöhen. Vielleicht auch mal den Takt der 'sysclock' erhöhen , damit öffter geprüft wird.

#define TICKS_PER_SECOND 200UL

am Anfang des Sketches. Oder beides.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Klaus0815

Ich werde das gerne mal probieren, allerdings glaube ich nicht so recht dass das die Ursache ist - würde ein Tastimpuls nicht richtig erkannt, würde ja der nächste wieder gehen.

Aber es ist so, das plötzlich für mehrere Sekunden nichts mehr geht,

Das ganze passiert auch nach einer längeren Pause, in der ich nichts gedrückt hatte - keine Reaktion auf den Tasterdruck, nach ein paar Sekunden geht es dann wieder,

Vielleicht noch eine ganz dumme Idee und ich mache was falsch? Eigentlich müsste der Aktor doch nach einem neu flashen komplett gelöscht sein, alle peers verschwunden - das ist aber komischerweise hier nicht so? Liegt es evtl. an einem falschen pairing / peering? Glaube zwar nicht, aber nur mal so als Idee


papa

Konntest Du schon mal probieren ? Ich hoffe, ich komme am WE mal dazu, mit mit einem programmierten Tiny einen Takt an den Taster zu legen. Damit sollte sich das dann hoffentlich simulieren lassen.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Klaus0815

Leider noch nicht, ich hoffe am Wochenende.
Was sagst Du zu meiner Theorie, das es daran kaum liegen kann, da ja teilweise schon der erste Tastendruck nicht mehr erkannt wird?


papa

Ich hoffe immer noch auf die Abtastrate. Der Standardtakt sind 100 TicksPerSecond. Wenn man da einen blöden Zeitpunkt erwischt, messen wir immer am Anfang und am Ende der positiven Halbwelle. Und da könnte der Optokoppler noch nicht durchgeschaltet sein. Dann sehen wir den Impulse nicht. Durch Erhöhung der Abtastrate, haben wir mehr Messungen und und geht nichts mehr verloren.

Der EEProm-Inhalt bleibt beim Flashen erhalten - damit bleiben auch die Peerings. Wenn das Peering nicht passt, dann geht es immer nicht.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Klaus0815

ZitatWenn man da einen blöden Zeitpunkt erwischt, messen wir immer am Anfang und am Ende der positiven Halbwelle.
Dann würde es aber mal funktionieren, mal nicht?  Wenn es mal nicht funktioniert hat funktioniert es reproduzierbar die nächsten 5-15 sec nicht, danach geht es wieder normal, irgendwas muss sich da im Programm aufhängen?
Werde aber trotzdem mal Deine Vorschläge testen, hatte auch schon überlegt die Optokopplerausgänge direkt zu brücken, aber da kommt man bei der Sandwichbauweise gar nicht so einfach dran.
Und UART-Ausgang zum debuggen ist halt noch schwieriger mit den anliegenden 230V

Viele Grüße

Klaus

Klaus0815

Die beiden Änderungen haben leider nichts gebracht.
Bin kurz davor, einen weiteren Aktor zu kaufen, nicht das es letztendlich an der Hardware liegt.

Schade das hier niemand das gleiche Problem hat und die Software mal testen mag

papa

Also ich habe jetzt hier ebenfalls einen Takt auf den Taster gelegt. Das bringt bei mir aber die Firmware nicht aus den Takt.

Probiere doch mal bitte das angehängte Hex-File. Wäre nicht das erste mal, das meines geht aber das selbst übersetzte nicht.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Klaus0815

Ist das Hex-File incl. Bootloader oder muss ich erst den Bootloader, dann das File per OTA flashen?

papa

BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Klaus0815

gar nicht so einfach, versuche es gerade mit AVRDude unter Windows
In der Arduino IDE wird dieser mit
avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega32 -cstk500v1 -PCOM7 -b19200 -Uflash:w:C:\Users\TOUCHV~1\AppData\Local\Temp\arduino_build_537830/HM_LC_SW2_FM.ino.hex:i
aufgerufen, aber bei mir kommt dann
avrdude: can't open config file "C:\Program": No such file or directory

das config file liegt aber definitiv dort

Habe leider in der Werkstatt nur einen Windows-PC, aber ich kämpfe mich durch

Viele Grüße

Klaus