Forum: Haus & Smart Home EQ3 ISR2.0 für Homatic umflashen


von Christoph M. (mchris)


Lesenswert?

Ich habe hier 4 EQ3 ISR2.0 Rolladenschalter.
Die MCU darin sind EFM32G210.
Es gibt scheinbar ein Arduino-Framework, dass einige EFM32 unterstützt.
Ich sehe da aber keine G210 Variante:
https://github.com/Bucknalla/efm32-arduino-core
Geht es trotzdem damit?

von Heinz R. (heijz)


Lesenswert?

Lies oder frag am Besten mal hier:

https://homematic-forum.de/forum/viewtopic.php?t=76355

von Christoph M. (mchris)



Lesenswert?

Heinz R. (heijz)
>Lies oder frag am Besten mal hier:

Danke für den Link.
Glücklicherweise hat schon mal jemand die Anschlussbelegung für das 
Programmierinterface sowie den Zugriff mit OpenOCD.
Leider muss es bei jeder Art von Tool-Chain ja immer ein Problem geben:
1
> reset init
2
[efm32.cpu] Could not find MEM-AP to control the core
3
[efm32.cpu] Debug AP not available, reset NOT asserted!

Dem scheint wohl eine Änderung der ST-Link-Firmware zugrunde zu liegen:
https://github.com/jp112sdl/HM-Sec-SCo-EFM32#warning-st-link-v2-firmware-bug

Hier noch die verwendeten Terminal-Kommados (Ubuntu):
1
Den ST-Link Adapter mit der Platine verbinden (es werden nur folgende benötigt:
2
3
 GND, VCC(3.3V), SWCLK, SWDIO  
4
5
und dann per USB an den PC anstecken.
6
7
openocd -f interface/stlink-dap.cfg -f target/efm32.cfg
8
9
Dann Telnet im zweiten Fenster:
10
11
telnet localhost 4444
12
13
Kurz warten und dann im Fenster in der Telnet Session eingeben und mit [Enter] den Befehl absenden:
14
15
efm32.dap apreg 0 0x4 0xcfacc118
16
efm32.dap apreg 0 0x0 1
17
efm32.dap apreg 0 0x8
18
sleep 1000
19
efm32.dap apreg 0 0x0 2
20
reset_config none
21
reset init

: Bearbeitet durch User
von Christoph M. (mchris)


Lesenswert?

Die Geräte mit EFM32 scheinen schon etwas älter zu sein.
Falls es diese noch zu kaufen gibt, könnte man mit der Arduino-IDE ja 
alles mögliche in eine dieser Platinen flashen.
Der EFM32G210 wie er im obigen Rolladenschalter eingebaut ist, müsste ja 
eigentlich genügend Rechenleistung haben, die gesamte 
Heimautomatisierung zu steuern. Die Idee wäre also, dass ein einzelner 
Schalter das gesamte Controlling übernimmt. Hat schon mal jemand über so 
was nachgedacht?

von Heinz R. (heijz)


Lesenswert?

wozu soll das gut sein?  Da gibt es doch weitaus bessere Alternativen 
wie IOBroker, Homemassistant, FHEM usw

Hier läuft die meiste Steuerung über simple Bash-Scripte

In einem Controller ohne Weboberfläche wo man bei jeder 'nderung neu 
flasjen muss wollte ich so was zugegeben nicht haben

von Christoph M. (mchris)


Lesenswert?

Heinz R. (heijz)
12.04.2025 19:25
>wozu soll das gut sein?  Da gibt es doch weitaus bessere Alternativen
>wie IOBroker, Homemassistant, FHEM usw

Naja, der erste Gedanke könnte ja sein: Warum braucht ein 
Rolladenschalter mit zwei Relais einen Mikroprozessor mit dem vielfachen 
an Speicher und Geschwindigkeit des Appolo-Guidence-Computers für die 
Mondlandung?

https://www.silabs.com/documents/public/data-sheets/efm32g-datasheet.pdf

Und kann man da nicht mehr damit machen ?

Im Normalfall läuft ja z.B. Homeassistand oder ähnliches auf einem 
Prozessor, der einige Watt im Dauerbetrieb über's Jahr verbraucht und da 
um ein paar Schalter zu steuern. Wie ist das, wenn der Zentralcomputer 
aussfällt? Müssen dann die Rolläden unten bleiben? Man könnte sich ja 
ein verteiltes Netzwerk mit verteilter Intelligenz vorstellen, in dem 
der Schalter direkt mit der Logik des Rolladenmotors kommuniziert.

Wie hoch ist eigentlich der Energiebedarfs des Schalters mit dem 
Mikrocontroller? Wenn das ganze Haus mit so was ausgestattet ist, 
summieren sich ja die Stromverbräuche. Ein normaler mechanischer 
Schalter hat den Stromverbrauch 0.

von Heinz R. (heijz)


Lesenswert?

Christoph M. schrieb:
> Naja, der erste Gedanke könnte ja sein: Warum braucht ein
> Rolladenschalter mit zwei Relais einen Mikroprozessor mit dem vielfachen
> an Speicher und Geschwindigkeit des Appolo-Guidence-Computers für die
> Mondlandung?

weil es halt nichts mehr kostet, ist doch egal ob der jetzt 20 oder 50 
Cent kostet

Christoph M. schrieb:
> Wie hoch ist eigentlich der Energiebedarfs des Schalters mit dem
> Mikrocontroller? Wenn das ganze Haus mit so was ausgestattet ist,
> summieren sich ja die Stromverbräuche. Ein normaler mechanischer
> Schalter hat den Stromverbrauch 0.

Ja, das ist halt so bei Smart Home - ich mache mir da aber zugegeben 
keinerlei Gedanken

Heute hat die PV 100kWh gebracht, der 30 kWh Akku wird mich sicher durch 
die Nacht bringen

Aber auch ohne PV - so ein Teil kostet in der Anschaffung ca, 50€ - 
verbraucht in 20 Jahren Lebenszeit weitere 20€ Strom - stört mich 
zugegeben nicht, habe ich bei der Anschaffung bereits mit eingerechnet

von Christoph M. (mchris)


Lesenswert?

>weil es halt nichts mehr kostet, ist doch egal ob der jetzt 20 oder 50
>Cent kostet

Ich weiß, ich weiß, aber man könnte ja mehr machen.

Mein Schalter blinkt jetzt:



1
// Blinky Rolladenschalterhardware
2
// 152276_hmipbms_um.pdf
3
4
#define LED_ROT PA0
5
#define LED_GREEN PA1
6
7
void setup() {
8
  pinMode(LED_ROT, OUTPUT);
9
  pinMode(LED_GREEN, OUTPUT);
10
}
11
12
void loop() {
13
  digitalWrite(LED_ROT, HIGH);
14
  digitalWrite(LED_GREEN, LOW);
15
  delay(1000);
16
  digitalWrite(LED_ROT, LOW);
17
  digitalWrite(LED_GREEN, HIGH);
18
  delay(1000);
19
}

Arduino-IDE-Log:
Open On-Chip Debugger 0.11.0+dev-gab95bac57-dirty (2021-05-11-10:49)
Licensed under GNU GPL v2
For bug reports, read
  http://openocd.org/doc/doxygen/bugs.html
Info : auto-selecting first available session transport "dapdirect_swd". 
To override use 'transport select <transport>'.
cortex_m reset_config sysresetreq

Info : STLINK V2J28S6 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.494048
Info : Unable to match requested speed 1000 kHz, using 950 kHz
Info : Unable to match requested speed 1000 kHz, using 950 kHz
Info : clock speed 950 kHz
Info : stlink_dap_op_connect(connect)
Info : SWD DPIDR 0x2ba01477
Info : efm32.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : starting gdb server for efm32.cpu on 3333
Info : Listening on port 3333 for gdb connections
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x00000860 msp: 0x20004000
** Programming Started **
Info : detected part: EFM32G Gecko, rev 147
Info : flash size = 128kbytes
Info : flash page size = 512bytes
** Programming Finished **
** Verify Started **
** Verified OK **
** Resetting Target **
shutdown command invoked

von Heinz R. (heijz)


Lesenswert?

Christoph M. schrieb:
>>weil es halt nichts mehr kostet, ist doch egal ob der jetzt 20 oder 50
>>Cent kostet
>
> Ich weiß, ich weiß, aber man könnte ja mehr machen.

im ganzen Haus sind Microcontroller die sicherlich wesentlich mehr 
könnten, aber ich käme jetzt zugegeben nicht auf die Idee z.B. die 
Kaffeemaschine umzuflashen? :-)

wo fängst da an, wo hörst auf?

Heute die Kaffeemaschine, morgen ist die neue Mikrowelle schneller - 
dann doch lieber was extra für die Steuerung

: Bearbeitet durch User
von Christoph M. (mchris)


Lesenswert?

AsksinPP scheint das Protokoll zum HomeMaticIP zu sein:

https://asksinpp.de/

Da gibt es Bibliotheken mit einigen Beispielen:
https://github.com/pa-pa/AskSinPP

Was ich nicht gefunden habe: Wie sieht das Low-Level-Protokoll aus? Ist 
der Treiber als Schichtenmodell realisiert?
Vielleicht kennt sich ja jemand damit aus.

von Thomas S. (thommi)


Lesenswert?

@ Christoph M.
Vielen Dank für die Links. Habe immer wieder mal nach so etwas gesucht. 
Dafür ein +1

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.