2 Kanal Dimmer auf STM32 Basis zur Diskussion

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

Jack01
Beiträge: 129
Registriert: 01.02.2017, 17:08
Hat sich bedankt: 50 Mal
Danksagung erhalten: 10 Mal

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von Jack01 » 05.12.2019, 13:12

Nein, den Freq. Test habe ich noch nicht laufen lassen.

Alle Funktionen sind aber gegeben. Anbei nochmal ein Screenshot vom Analyzer. Der Dimmer ist übrigens an einer Test-CCU (Rapberrymatic) angeschlossen. Der Analyzer ist aber mit meiner CCU2 verbunden. Deshalb gibt es auch keine Klarnamen auf dem Display.

Gruß

Hans-Jürgen
Screenshot.JPG
Raspberrymatic als VM auf Proxmox (Fujitsu Esprimo) mit HB-RF-USB und 34 Geräte (18 x Eigenbau)
4 x Amazon Alexa, ioBroker
Remote Control via TinyMatic und VPN
Motion Eye und ioBroker auf Proxmox

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von jp112sdl » 05.12.2019, 13:20

Ich bin nach wie vor skeptisch, wenn ich Adresse "00FFFF" lese.
Wo kommt die her?

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Jack01
Beiträge: 129
Registriert: 01.02.2017, 17:08
Hat sich bedankt: 50 Mal
Danksagung erhalten: 10 Mal

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von Jack01 » 05.12.2019, 18:31

Die 00FFFF ist wahrscheinlich meine RaspberryMatic.
In dem Moment, wo ich eine Aktion in der WebUI auslöse (z. B. den "aus" Button drücke, kommt 00FFFF > FABA64. Das ist sicherlich das Kommando von der RaspberryMatic an den Dimmer. Als nächstes kommt die Antwort vom Dimmer an die CCU und anschließend eine Broadcast vom Dimmer.
Ich habe nochmal einen Screenshot (Dimmer)angehängt. Dieses Muster wiederholt sich bei jeder Aktion.
Ich habe das mit dem Gerät HB-PBE4-FM (2. Gerät) überprüft. Auch hier wird von 789012 an 00FFFF gesendet wenn ich eine Taste auf dem Sender drücke.

Gruß

Hans-Jürgen

p.s.
bekomme im Moment den Freq Sketch nicht via Bootloader auf den ST32 geflascht. Aus irgendeinem Grund sendet die IDE vor dem Download immer einen Reset via DTR. Damit ist die Verbindung natürlich weg.....
Dateianhänge
Gerät2.PNG
2. Gerät
Gerät2.PNG (9.47 KiB) 1521 mal betrachtet
Screendump.PNG
Dimmer
Screendump.PNG (9.06 KiB) 1521 mal betrachtet
Raspberrymatic als VM auf Proxmox (Fujitsu Esprimo) mit HB-RF-USB und 34 Geräte (18 x Eigenbau)
4 x Amazon Alexa, ioBroker
Remote Control via TinyMatic und VPN
Motion Eye und ioBroker auf Proxmox

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von jp112sdl » 05.12.2019, 18:52

Jack01 hat geschrieben:
05.12.2019, 18:31
Ich habe das mit dem Gerät HB-PBE4-FM (2. Gerät) überprüft. Auch hier wird von 789012 an 00FFFF gesendet wenn ich eine Taste auf dem Sender drücke.
Hmm, was auch immer ein HB-PBE4-FM ist... ich vermute mal ein 4 Kanal Sender?
Jedenfalls sendet der kurz hintereinander (selber Zeitstempel) 2 Telegramme aus!? Soll das so?
Jack01 hat geschrieben:
05.12.2019, 18:31
Die 00FFFF ist wahrscheinlich meine RaspberryMatic.
Ungewöhnlich. Und mehr als unwahrscheinlich, dass dein Modul diese physische Adresse hat.
Jack01 hat geschrieben:
05.12.2019, 18:31
und anschließend eine Broadcast vom Dimmer.
Dein Dimmer hat da 3 Sekunden nach dem letzten Telegramm neu gestartet (Message Counter [9] ist kleiner als die Nachricht davor [30])... und an seine nicht bekannte Zentrale (000000, siehe vorhin) gesendet


Auch wenn augenscheinlich alles funktioniert, ist da noch irgendwas im Argen - würde ich sagen.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Jack01
Beiträge: 129
Registriert: 01.02.2017, 17:08
Hat sich bedankt: 50 Mal
Danksagung erhalten: 10 Mal

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von Jack01 » 06.12.2019, 10:34

So, ich habe den Dimmer jetzt nochmal ab- und wieder angemeldet (an der RaspberryMatic).
Dann habe ich über das WebUI der RaspberryMatic eine direkt Verknüpfung zwischen dem Dimmer und einem 4-fach Taster erstellt.

Es funktionier alles problemlos. Der Dimmer schaltet auf- und ab, die Stati auf dem WebUI werden entsprechend geändert/dargestellt.
Anbei noch mal die Entsprechenden Logs. einmal von der seriellen Schnittstelle und einmal vom Analyzer. Die Broadcast Message ist jetzt allerdings verschwunden...

Gruß

Hans-Jürgen
Dateianhänge
Direkt Verknüpfung.PNG
Kommando ein-aus_seriell.PNG
Kommando ein-aus_seriell.PNG (8.31 KiB) 1478 mal betrachtet
Kommando ein-aus_Analyzer.PNG
Kommando ein-aus_Analyzer.PNG (12.13 KiB) 1478 mal betrachtet
Raspberrymatic als VM auf Proxmox (Fujitsu Esprimo) mit HB-RF-USB und 34 Geräte (18 x Eigenbau)
4 x Amazon Alexa, ioBroker
Remote Control via TinyMatic und VPN
Motion Eye und ioBroker auf Proxmox

TRyan
Beiträge: 19
Registriert: 28.03.2021, 09:46
System: sonstige
Danksagung erhalten: 2 Mal

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von TRyan » 14.02.2023, 18:54

Hallo,

sorry das ich diesen Beitrag wieder aus der Versenkung raushole.

Ich wollte gerne dieses Projekt nachbauen. Soweit hat auch alles geklappt. Jedoch ist leider das EEPROM AT24cs32 zurzeit nicht zu bekommen.

Ich habe als alternative den 24LC32 herausgesucht. Laut Datenblatt sollte er ähnlich wie der at24cs32 sein.

Beim Frequenztest wird wohl auch ein Wert in das EEPROM gespeichert:

Code: Alles auswählen

17:42:57.106 -> Done: 0x2164FA - 0x2165DA
17:42:57.106 -> Calculated Freq: 0x21656A 868.300 MHz
17:42:57.106 -> Store into config area: 656A....stored!
17:42:57.239 -> 
17:42:57.239 -> Old Config Freq was: 0x21656A 868.300 MHz
Aber leider hängt das HM-LC-DW-WM programm kurz nach dem starten:

Code: Alles auswählen

17:39:08.010 -> AskSin++ v5.0.2 (Feb 14 2023 17:38:57)
17:39:08.010 -> Address Space: 32 - 2396
17:39:08.010 -> FFFFFFFF
17:39:08.010 -> Init Storage: CAFE3CB2
Mehr passiert leider nicht. Wenn ich das EEPROM entferne läuft das Programm, aber es gibt am Anfang natürlich viele EEPROM fehler.

Hat jemand eine Idee woran es liegen könnte?

Danke für Eure Hilfe.

Viele Grüße

Tobias

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von jp112sdl » 14.02.2023, 18:56

TRyan hat geschrieben:
14.02.2023, 18:54
Mehr passiert leider nicht.
Wie lange hast du gewartet?
Ich hab schon mal fast ne Minute warten müssen, bevor die erstmalige Initialisierung durch war.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

TRyan
Beiträge: 19
Registriert: 28.03.2021, 09:46
System: sonstige
Danksagung erhalten: 2 Mal

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von TRyan » 14.02.2023, 19:36

Hallo Jérôme,

danke für Hilfe.

Ich habe jetzt 10min gewartet, aber leider ist nichts weiter passiert.

Gibt es einen Debug-Modus den ich einschalten kann, um zu sehen wo es hängt?

Danke für Deine Hilfe.

Viele Grüße

Tobias

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von papa » 14.02.2023, 22:14

Du könntest hier https://github.com/pa-pa/AskSinPP/blob/ ... age.h#L410 mal die Ausgaben wieder reinnehmen. Mal sehen, was da passiert.
Wir hatten auch schon Probleme mit dem Timing - da haben wir hier https://github.com/pa-pa/AskSinPP/blob/ ... age.h#L442 den Delay auf 2 erhöht. Vielleicht brauchen wir in dieser Hardwarekombination auch mehr. Wäre auf jeden Fall einen Versuch wert.
Anfragen zur AskSin++ werden nur im Forum beantwortet

TRyan
Beiträge: 19
Registriert: 28.03.2021, 09:46
System: sonstige
Danksagung erhalten: 2 Mal

Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion

Beitrag von TRyan » 15.02.2023, 08:45

Hallo papa,

danke für Deine Antwort.

Ich habe den "I2C Scanner" ausprobiert um zu testen, ob das EEPROM überhaupt spricht:

Code: Alles auswählen

08:33:29.746 -> Scanning... 
08:33:29.746 -> I2C device found at aScanning... 
08:33:29.746 -> I2C device found at address 0x50  !
08:33:29.746 -> done
Danach habe ich die "DPRINT" aus der Storage.h einkommentiert.

Leider bekomme ich nur das herraus:

Code: Alles auswählen

08:37:20.919 -> AskSin++ v5.0.2 (Feb 15 2023 08:37:11)
08:37:20.919 -> Address Space: 32 - 2396
08:37:20.919 -> Read: 0000 0004
08:37:20.919 -> FFFFFFFF
08:37:20.919 -> Init Storage: CAFE3CB2
08:37:21.039 -> setData: 0000 4
08:37:21.039 ->   write: 0000
mehr kommt leider nicht.

Dann habe in der funkion setData nache jedem "Wire.*" befehl ein _delay_ms(100) gesetzt.

Code: Alles auswählen

+++
while( success == true && size > 0 ) {
      uint16_t towrite = calcBlockSize(addr, size);
       DPRINT("  write: ");DHEX(addr);DPRINT(" ");DDECLN(towrite);
      Wire.beginTransmission(ID);
	  _delay_ms(100);
      Wire.write(addr >> 8);
	  _delay_ms(100);
      Wire.write(addr & 0xff);
	  _delay_ms(100);
      uint8_t done = 0;
      while( done < towrite ) {
		DPRINT("Wire.write\n");
        done++;
        Wire.write(*buf++);
		_delay_ms(100);
      }
      success = Wire.endTransmission() == 0;
 +++     
 
Die Ausgabe ist dann wie folgt:

Code: Alles auswählen

08:40:53.070 -> AskSin++ v5.0.2 (Feb 15 2023 08:40:43)
08:40:53.070 -> Address Space: 32 - 2396
08:40:53.070 -> Read: 0000 0004
08:40:53.070 -> FFFFFFFF
08:40:53.070 -> Init Storage: CAFE3CB2
08:40:53.190 -> setData: 0000 4
08:40:53.190 ->   write: 0000 4
08:40:53.350 -> Wire.write
08:40:53.390 -> Wire.write
08:40:53.430 -> Wire.write
08:40:53.470 -> Wire.write
Jetzt scheint es an der Zeile success = Wire.endTransmission() == 0; zu hängen.

Danke für eure Hilfe.

Viele grüße

Tobias

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“