HM-Sec-SCo - alternative Firmware mit AskSinPP

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

Moderator: Co-Administratoren

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

HM-Sec-SCo - alternative Firmware mit AskSinPP

Beitrag von jp112sdl » 29.05.2022, 21:31

Nachdem aufgrund einer >>>fehlerhaften Funkmodulfirmware<<< zu Tage kam, dass der HM-Sec-SCo neben dem >>>alten Endlos-Sende-Bug<<< auch einen >>>Fehler im Telegramm-Zähler<<< hat und wohl spätestens jetzt niemand mehr auf das Einlösen der eQ-3 Zusage hofft, habe ich mich der Sache in der letzten Woche mal angenommen.

Mit der AskSinPP Arduino Bibliothek gibt es ja seit langem eine sehr gute Grundlage, um Homematic Geräte selbst zu coden und auf eigene oder aber auch bestehende eQ-3 Hardware zu flashen (z.B. RWE/Innogy/Livisi Geräte).

Das Problem: Für den im HM-Sec-SCo verbauten µC-Typ "EFM32G200F64" gibt gab es keine Arduino IDE Unterstützung.
Zudem fehlte mir auch jegliche Erfahrung in der Programmierung eines EFM32, sowohl was die Hard- als auch die Software betrifft.
Um so mehr waren Hartnäckigkeit und Wille vorhanden, mich in das Thema einzuarbeiten. Und das hieß: Google, Google und noch mal Google...

Für den Upload des Kompilats wird hardwareseitig lediglich ein ST-Link V2 benötigt. Den bekommt man für ca. 5,- EUR beim Chinamann.
Als Software-Tool wird OpenOCD verwendet https://openocd.org
Mac-Nutzer können es z.B. im Terminal schnell mittels brew install openocd installieren.

Also zunächst einmal die Verbindung zwischen EFM32 und OpenOCD herstellen.
Die Pins am HM-Sec-SCo PRG1 waren schnell ermittelt
Bild
und 4 Strippen (GND, 3.3V, SWCLK, SWDIO) zum ST-Link V2 dran getüdelt.

Schon beim Starten von OpenOCD war ersichtlich, dass keinerlei Kommunikation mit dem EFM32 möglich war und es lag auf der Hand, dass der Hersteller solche Schnittstellen sperrt, um ein Auslesen der vorhandenen Firmware zu verhindern.

Eine gesperrte SWD Schnittstelle zu entsperren erfolgt mittels OpenOCD und Telnet.
  • OpenOCD starten (openocd -f interface/stlink-dap.cfg -f target/efm32.cfg)
  • Mit OpenOCD via Telnet auf Port 4444 verbinden (telnet localhost 4444)
  • Code: Alles auswählen

    efm32.dap apreg 0 0x4 0xcfacc118
    efm32.dap apreg 0 0x0 1
    efm32.dap apreg 0 0x8
    sleep 1000
    efm32.dap apreg 0 0x0 2
    reset_config none
    reset init
  • Die SWD Schnittstelle lässt sich nun verwenden; der Flash Speicher ist gelöscht
Dann kann es jetzt losgehen, Code zu schreiben und diesen auf den EFM32 zu laden.
Bildschirmfoto 2022-05-30 um 18.55.49.png
Der Upload des Kompilats erfolgt mithilfe von OpenOCD

Code: Alles auswählen

openocd -f interface/stlink-dap.cfg -f target/efm32.cfg -c "program /path/to/.elf verify reset exit"
Der [noch unfertige, aber funktionierende] Sketch für den HM-Sec-SCo befindet sich im Github unter https://github.com/jp112sdl/HM-Sec-SCo-EFM32
Die alternative Firmware kann auf den HM-Sec-SCo, HmIP-SWDO und HmIP-SWDO-I geflasht werden.

Einige Ziele auf dem Weg zu einer EFM32-kompatiblen HM-Sec-SCo Firmware habe ich bereits erreicht (siehe Checkliste im Github-Repo), jedoch klemmt es noch hier und da.

Momentan baue ich am letzten Puzzleteil, dem Energiespar-/Sleep-Modus.

Ich werde diesen Beitrag nach und nach weiter vervollständigen.
Zuletzt geändert von jp112sdl am 13.10.2022, 14:27, insgesamt 4-mal geändert.

VG,
Jérôme ☕️

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

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

Re: HM-Sec-SCo - alternative Firmware mit AskSinPP [WIP]

Beitrag von papa » 30.05.2022, 08:13

Das ist ja absolut der Hammer !!!!!!!!!
Damit sollten sich ja auch eine ganze Reihe von HmIP-Geräten auf HM umflashen lassen.
Sehr cool ......
Anfragen zur AskSin++ werden nur im Forum beantwortet

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: HM-Sec-SCo - alternative Firmware mit AskSinPP [WIP]

Beitrag von jp112sdl » 30.05.2022, 09:34

papa hat geschrieben:
30.05.2022, 08:13
Damit sollten sich ja auch eine ganze Reihe von HmIP-Geräten auf HM umflashen lassen.
Jup, dank stan23s Recherche in einigen ELV Journalen konnten wir bisher folgende Gerätschaften mit EFM32 Chip finden:

Code: Alles auswählen

HmIP-WRC2		: EFM32G200F64
HmIP-SWDO		: EFM32G200F64   ???
HmIP-WRCR		: EFM32G210F128
HmIP-SRD		: EFM32G210F128
HmIP-SCTH230	        : EFM32G210F128
HmIP-RCB1		: EFM32G210F128
HmIP-FCI6		: EFM32G210F128
HmIP-WRCD		: EFM32G210F128
HmIP-SWDO-I		: EFM32G210F128
ELV-SH-WSC		: EFM32G210F128
ELV-SH-WUA		: EFM32G210F128
HmIP-SFD		: EFM32G210F128
HmIP-MIO16-PCB	        : EFM32G840F128
HmIP-K-DRSI1	        : EFM32G840F128
HmIP-K-DRDI3	        : EFM32G840F128
HmIP-MOD-OC8	        : EFM32G840F128
Das tolle ist ja, dass die HmIP Geräte inzwischen wesentlich preiswerter als die HM Geräte sind :mrgreen:

Den EFM32G840F128 habe ich schon angefangen zu integrieren... ist aber Fleißarbeit, die ganzen Pins in die variants.h einzuarbeiten

VG,
Jérôme ☕️

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

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

Re: HM-Sec-SCo - alternative Firmware mit AskSinPP [WIP]

Beitrag von papa » 30.05.2022, 09:38

Wir müssen dann mal sehen, wie wir das alles zusammen bringen. So dass es auch noch halbweg übersichtlich bleibt
Anfragen zur AskSin++ werden nur im Forum beantwortet

der-pw
Beiträge: 435
Registriert: 26.01.2019, 13:39
Wohnort: Wolfenbüttel
Hat sich bedankt: 126 Mal
Danksagung erhalten: 100 Mal
Kontaktdaten:

Re: HM-Sec-SCo - alternative Firmware mit AskSinPP [WIP]

Beitrag von der-pw » 30.05.2022, 10:14

jp112sdl hat geschrieben:
30.05.2022, 09:34
Das tolle ist ja, dass die HmIP Geräte inzwischen wesentlich preiswerter als die HM Geräte sind
Nicht nur das, bspw. der HM-LC-Sw2PBU-FM, ist nur schwer zu bekommen, inzwischen.

Die Idee ist jedefalls :wink: großartig!
Grüße,
Patrick

https://github.com/der-pw

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: HM-Sec-SCo - alternative Firmware mit AskSinPP [WIP]

Beitrag von jp112sdl » 30.05.2022, 11:02

der-pw hat geschrieben:
30.05.2022, 10:14
Nicht nur das, bspw. der HM-LC-Sw2PBU-FM, ist nur schwer zu bekommen, inzwischen.
Gibt es von HmIP überhaupt einen 2-Kanal Aktor (für Markenschalter)?

VG,
Jérôme ☕️

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

der-pw
Beiträge: 435
Registriert: 26.01.2019, 13:39
Wohnort: Wolfenbüttel
Hat sich bedankt: 126 Mal
Danksagung erhalten: 100 Mal
Kontaktdaten:

Re: HM-Sec-SCo - alternative Firmware mit AskSinPP [WIP]

Beitrag von der-pw » 30.05.2022, 11:20

Ich hätte ganz naiv gedacht, ja.
Scheint es aber auch nicht zu geben, beim kurzen überblicken.
Vermutlich sind die Relais doch zu klein, für Standardanwendungen.
Grüße,
Patrick

https://github.com/der-pw

Horbi
Beiträge: 199
Registriert: 29.05.2019, 12:51
Hat sich bedankt: 19 Mal
Danksagung erhalten: 65 Mal

Re: HM-Sec-SCo - alternative Firmware mit AskSinPP [WIP]

Beitrag von Horbi » 30.05.2022, 18:15

Das ist echt Hardcore!

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: HM-Sec-SCo - alternative Firmware mit AskSinPP [WIP]

Beitrag von jp112sdl » 30.05.2022, 22:23

Horbi hat geschrieben:
30.05.2022, 18:15
Das ist echt Hardcore!
Eher ungewohnt. Der EFM32 bringt schon gute Features mit.
12bit Differential-ADC, digitale GPIO mit "glitch filter" fürs Debouncing, nur 0,6µA im höchsten Energiesparmodus.

VG,
Jérôme ☕️

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

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: HM-Sec-SCo - alternative Firmware mit AskSinPP [WIP]

Beitrag von jp112sdl » 30.05.2022, 22:25

Hat jemand das passende Equipment, um mal von einem originalen Gerät die Stromaufnahme zu messen?
Mit nem Multimeter ist man eher aufgeschmissen, sinnvolle Werte zu erfassen, weil der IR-Abtastung alle 500ms erfolgt.

VG,
Jérôme ☕️

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

Antworten

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