Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

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

Moderator: Co-Administratoren

Balu1973
Beiträge: 54
Registriert: 30.12.2010, 12:24

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von Balu1973 » 31.01.2021, 16:40

Hallo,

Danke für Eure Antworten. Alex: Du hast geschrieben mit PlatformIO neu flashen. Das versuche ich gerade.

Habe mir vscode und platformio installiert und per das git Projekt geclont. Außerdem den Treiber für den USB-Seriell Adapter installiert.
PlatformIO hat das Device auch erkannt:
device.png
device.png (12.57 KiB) 1102 mal betrachtet
So wie ich es verstanden habe kann ich dann mit Haken in der blauen PlatformIO Leiste das flashen ausführen:
platformio.png
platformio.png (17.07 KiB) 1104 mal betrachtet
Dabei kommt folgende Ausgabe:

Code: Alles auswählen

 Executing task in folder HB-RF-ETH: C:\Users\Balu\.platformio\penv\Scripts\pio.exe run <

Processing hb-rf-eth (platform: espressif32; board: hb-rf-eth; framework: espidf)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
INFORMATION: Es konnten keine Dateien mit dem angegebenen
Muster gefunden werden.
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/hb-rf-eth.html
PLATFORM: Espressif 32 (3.0.0) > HB-RF-ETH
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (esp-prog) External (esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
 - framework-espidf 3.40200.210118 (4.2.0)
 - tool-cmake 3.16.4
 - tool-esptoolpy 1.30000.201119 (3.0.0)
 - tool-idf 1.0.1
 - tool-mconf 1.4060000.20190628 (406.0.0)
 - tool-ninja 1.9.0 
 - toolchain-esp32ulp 1.22851.191205 (2.28.51)
 - toolchain-xtensa32 2.80400.210114 (8.4.0)
Warning! Could not find file "main.1e43358e.css.gz"
Warning! Could not find file "main.1e43358e.js.gz"
Warning! Could not find file "index.html.gz"
Warning! Could not find file "favicon.26242483.ico.gz"
Error: Detected a whitespace character in project paths.
=============================================================================================================================== [FAILED] Took 0.76 seconds ===============================================================================================================================The terminal process "C:\Users\Balu\.platformio\penv\Scripts\pio.exe 'run'" terminated with exit code: 1.
Bin ich hier denn noch richtig? Wo finde ich die fehlenden Dateien?

Danke und Grüße,
Balu
8x HM-Sec-RHS, 6x HM-CC-VG-1, 2x HM-PB-4-WM, 6x HM-TC-IT-WM-W-EU, 6x HM-CC-RT-DN, 1x HM-WDS10-TH-O, 1x HMIP-PS, 1x HM-LC-Dim1T-FM, 1x HM-Sec-SCo, 1x HM-ES-TX-WM, 1x HM-LC-Sw4-PCB, 1x HM-WDS30-OT2-SM, 1x CUX28, 1x HmIP-RCV-50, 1x HM-ES-PMSw1-Pl, 1x HmIP-SWD, 1x HMIP-PSM, 2x HM-LC-Dim1TPBU-FM, 1x HmIP-BSL, 1x HM-WDS40-TH-I, 1x HM-LC-Sw1-Pl, 1x HM-LC-Dim1T-Pl-2

Benutzeravatar
deimos
Beiträge: 5383
Registriert: 20.06.2017, 10:38
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leimersheim
Hat sich bedankt: 121 Mal
Danksagung erhalten: 950 Mal
Kontaktdaten:

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von deimos » 31.01.2021, 16:55

Hi,

das sind die Dateien von der WebUI. Die werden durch Parcel bei Build generiert. Dafür muss aber NodeJS installiert sein und die Entsprechenden Pakete vom WebUI Node Paket.

Zusätzlich sollte man schauen, dass der Pfad keine Leerzeichen enthält, daa gibt wohl Probleme mit der esp-idf Toolchain.

Viele Grüße
Alex

Balu1973
Beiträge: 54
Registriert: 30.12.2010, 12:24

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von Balu1973 » 31.01.2021, 17:53

Hi,

Danke für Deine schnelle Antwort. Habe jetzt nodejs, parcel und webui auch installiert.
VSCode kompiliert auch jetzt so einiges, habe am Ende aber Probleme mit undefinierten Referrenzen:

Code: Alles auswählen

Compiling .pio\build\hb-rf-eth\bootloader\soc\soc\esp32\i2c_periph.o
Compiling .pio\build\hb-rf-eth\bootloader\soc\soc\esp32\uart_periph.o
Compiling .pio\build\hb-rf-eth\bootloader\soc\soc\esp32\touch_sensor_periph.o
Generating an empty partition .pio\build\hb-rf-eth\ota_data_initial.bin
Archiving .pio\build\hb-rf-eth\bootloader\esp-idf\soc\soc\esp32\libsoc_esp32.a
Linking .pio\build\hb-rf-eth\bootloader.elf
Building .pio\build\hb-rf-eth\bootloader.bin
esptool.py v3.0
Linking .pio\build\hb-rf-eth\firmware_1_2_8.elf
c:/users/balu/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: .pio\build\hb-rf-eth\src\webui.o:(.literal._Z26index_html_gz_handler_funcP9httpd_req+0xc): undefined reference to `index_html_gz_length'
c:/users/balu/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: .pio\build\hb-rf-eth\src\webui.o:(.literal._Z26index_html_gz_handler_funcP9httpd_req+0x10): undefined reference to `_binary_index_html_gz_start'
c:/users/balu/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: .pio\build\hb-rf-eth\src\webui.o:(.literal._Z32main_1e43358e_js_gz_handler_funcP9httpd_req+0x4): undefined reference to `main_1e43358e_js_gz_length' 
c:/users/balu/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: .pio\build\hb-rf-eth\src\webui.o:(.literal._Z32main_1e43358e_js_gz_handler_funcP9httpd_req+0x8): undefined reference to `_binary_main_1e43358e_js_gz_start'
c:/users/balu/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: .pio\build\hb-rf-eth\src\webui.o:(.literal._Z33main_1e43358e_css_gz_handler_funcP9httpd_req+0x4): undefined reference to `main_1e43358e_css_gz_length'
c:/users/balu/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: .pio\build\hb-rf-eth\src\webui.o:(.literal._Z33main_1e43358e_css_gz_handler_funcP9httpd_req+0x8): undefined reference to `_binary_main_1e43358e_css_gz_start'
c:/users/balu/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: .pio\build\hb-rf-eth\src\webui.o:(.literal._Z36favicon_26242483_ico_gz_handler_funcP9httpd_req+0x4): undefined reference to `favicon_26242483_ico_gz_length'
c:/users/balu/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: .pio\build\hb-rf-eth\src\webui.o:(.literal._Z36favicon_26242483_ico_gz_handler_funcP9httpd_req+0x8): undefined reference to `_binary_favicon_26242483_ico_gz_start'
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\hb-rf-eth\firmware_1_2_8.elf] Error 1
============================================================================================================================== [FAILED] Took 131.07 seconds ==============================================================================================================================The terminal process "C:\Users\Balu\.platformio\penv\Scripts\pio.exe 'run'" terminated with exit code: 1.
Das sind ja scheinbar wieder Dateien aus dem WebUI Paket. Ich habe das mit npm install webui direkt im Speicherpfad des Projektes installiert. Oder muss das woanders hin?

Danke und Grüße,
Balu
8x HM-Sec-RHS, 6x HM-CC-VG-1, 2x HM-PB-4-WM, 6x HM-TC-IT-WM-W-EU, 6x HM-CC-RT-DN, 1x HM-WDS10-TH-O, 1x HMIP-PS, 1x HM-LC-Dim1T-FM, 1x HM-Sec-SCo, 1x HM-ES-TX-WM, 1x HM-LC-Sw4-PCB, 1x HM-WDS30-OT2-SM, 1x CUX28, 1x HmIP-RCV-50, 1x HM-ES-PMSw1-Pl, 1x HmIP-SWD, 1x HMIP-PSM, 2x HM-LC-Dim1TPBU-FM, 1x HmIP-BSL, 1x HM-WDS40-TH-I, 1x HM-LC-Sw1-Pl, 1x HM-LC-Dim1T-Pl-2

Benutzeravatar
deimos
Beiträge: 5383
Registriert: 20.06.2017, 10:38
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leimersheim
Hat sich bedankt: 121 Mal
Danksagung erhalten: 950 Mal
Kontaktdaten:

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von deimos » 31.01.2021, 18:18

Hi

welche Version von esp-idf wird bei dir beim Build verwendet? Mit der 4.2 Version wurde einiges geändert, das Fehlerbild würde passen, wobei ich dachte, dass die noch nicht für Platformio released ist.
Im Moment kann ich leider nicht im Detail helfen, bin grade ziemlich intensiv mit Dammwachen wg. des Hochwassers bei uns beschäftigt.

Viele Grüße
Alex

t0mk
Beiträge: 250
Registriert: 08.08.2018, 20:13
Hat sich bedankt: 7 Mal
Danksagung erhalten: 21 Mal

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von t0mk » 31.01.2021, 19:00

Moin,

nachdem ich mit plattformio und kompilieren nicht weitergekommen bin, habe ich eine Abkürzung über die fertig-kompilierten Stände genommen. Hier ist eine Anleitung, die ich einem anderen User hier im Forum schon zur Verfügung gestellt habe:
Lade das Archiv herunter, entpacke es, öffne Kommandozeile und wechsle in das Verzeichnis mit den entpackten Dateien. Schließe die Platine per USB an den Rechner an, kriege heraus, an welchem COM-Port sie hängt (ich gehe von Windows aus, solltest du ein anderes Betriebssystem haben, müssen wir noch was umstellen). Führe dann den Befehl aus, du musst allerdings den COM-Port anpassen auf den bei dir genutzten. Es ist alles ein langer Befehl:

Code: Alles auswählen

esptool.exe --chip esp32 --port COM21 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0xe000 boot_app0.bin 0x1000 bootloader_qio_80m.bin 0x10000 firmware_1_2_3.bin 0x8000 AnalogReadSerial.ino.partitions.bin
Bei mir landet dann am Ende die FW-Version 1.2.3 auf der Platine. Natürlich lässt sich damit auch eine andere Version flashen, ich habe nur der Einfachheit halber alles in ein Archiv gepackt. Die übrigen Daten stammen aus der Arduino-IDE mit dem installierten ESP32-Board.

Benutzeravatar
deimos
Beiträge: 5383
Registriert: 20.06.2017, 10:38
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leimersheim
Hat sich bedankt: 121 Mal
Danksagung erhalten: 950 Mal
Kontaktdaten:

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von deimos » 31.01.2021, 19:07

Hi,

die Partitionen so zu verändern wird schief gehen, ich nutze (bewusst) eine Aufteilung, die nicht der von Arduino entspricht und auch den Bootloader sollte idealerweise nicht von Arduino nehmen, weil der noch auf esp-idf 3.x basiert.
Beim Release 0.9.0 findet man sowohl die partitions.bin, als auch die bootloader.bin.

Viele Grüße
Alex

Balu1973
Beiträge: 54
Registriert: 30.12.2010, 12:24

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von Balu1973 » 31.01.2021, 19:11

Hallo,

@Alex:
Es ist wohl schon Version 4.2:

Code: Alles auswählen

Attempting to build webpage...
b'\n> webui@1.0.0 build D:\\homematic\\HB-RF-ETH\\webui\n> parcel build index.htm --no-source-maps --no-content-hash\n\n\xe2\x88\x9a  Built in 915ms.\n\ndist\\main.1e43358e.js        525.12 KB    435ms\ndist\\main.1e43358e.css       228.08 KB     45ms\ndist\\favicon.26242483.ico     15.04 KB     18ms\ndist\\index.html                  512 B     11ms\n\n\xf0\x9f\x97\x9c\xef\xb8\x8f  Compressing bundled files...\n\n\n\xe2\x9c\xa8  Compressed in 0.05s.\n\ndist\\main.1e43358e.js.gz        133.06 KB    0.022s\ndist\\main.1e43358e.css.gz        32.21 KB    0.007s\ndist\\favicon.26242483.ico.gz      1.42 KB    0.003s\ndist\\index.html.gz                  313 B    0.004s\n'
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/hb-rf-eth.html
PLATFORM: Espressif 32 (3.0.0) > HB-RF-ETH
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (esp-prog) External (esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
 - framework-espidf 3.40200.210118 (4.2.0)   <----------------------------
 - tool-cmake 3.16.4
 - tool-esptoolpy 1.30000.201119 (3.0.0)
 - tool-idf 1.0.1
 - tool-mconf 1.4060000.20190628 (406.0.0)     
 - tool-ninja 1.9.0
 - toolchain-esp32ulp 1.22851.191205 (2.28.51) 
 - toolchain-xtensa32 2.80400.210114 (8.4.0)   
Reading CMake configuration...
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 0 compatible libraries
Scanning dependencies...
No dependencies
Aber kümmer Dich erst mal um den Damm. Ich drücke die Daumen, dass er hält!
Wenn das Hochwasser weg ist wäre ich Dir dankbar, wenn Du hier noch mal schauen könntest.

@t0mk:
Danke für die Anleitung.

Ich sage Bescheid, wie es läuft.

Grüße,
Ralf
8x HM-Sec-RHS, 6x HM-CC-VG-1, 2x HM-PB-4-WM, 6x HM-TC-IT-WM-W-EU, 6x HM-CC-RT-DN, 1x HM-WDS10-TH-O, 1x HMIP-PS, 1x HM-LC-Dim1T-FM, 1x HM-Sec-SCo, 1x HM-ES-TX-WM, 1x HM-LC-Sw4-PCB, 1x HM-WDS30-OT2-SM, 1x CUX28, 1x HmIP-RCV-50, 1x HM-ES-PMSw1-Pl, 1x HmIP-SWD, 1x HMIP-PSM, 2x HM-LC-Dim1TPBU-FM, 1x HmIP-BSL, 1x HM-WDS40-TH-I, 1x HM-LC-Sw1-Pl, 1x HM-LC-Dim1T-Pl-2

t0mk
Beiträge: 250
Registriert: 08.08.2018, 20:13
Hat sich bedankt: 7 Mal
Danksagung erhalten: 21 Mal

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von t0mk » 31.01.2021, 20:43

deimos hat geschrieben:
31.01.2021, 19:07
die Partitionen so zu verändern wird schief gehen, ich nutze (bewusst) eine Aufteilung, die nicht der von Arduino entspricht und auch den Bootloader sollte idealerweise nicht von Arduino nehmen, weil der noch auf esp-idf 3.x basiert.
So ist's mit dem Halbwissen :( Aber ich dachte, ich hätte deine Aufteilung genommen, nicht die von Arduino, indem ich ein Partitionsschema durch deins ersetzt habe. Aber die IDE scheint was anderes draus zu machen.
deimos hat geschrieben:
31.01.2021, 19:07
Beim Release 0.9.0 findet man sowohl die partitions.bin, als auch die bootloader.bin.
Gut zu wissen. Mit meinem Aufruf scheint es zumindest im Moment zu funktionieren. Solltest Du mehr Zeit haben, kannst Du bitte den Aufruf korrigieren?

Benutzeravatar
deimos
Beiträge: 5383
Registriert: 20.06.2017, 10:38
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leimersheim
Hat sich bedankt: 121 Mal
Danksagung erhalten: 950 Mal
Kontaktdaten:

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von deimos » 31.01.2021, 20:51

Hi,

das Problem sind nicht die Adressen, sondern die verwendeten .bin Dateien für Bootloader und Partitions. Die boot_app0.bin von Arduino kann verwendet werden, alle anderen bin Files sollten von meinem Github Repo genommen werden.

Viele Grüße
Ale

t0mk
Beiträge: 250
Registriert: 08.08.2018, 20:13
Hat sich bedankt: 7 Mal
Danksagung erhalten: 21 Mal

Re: Platine HB-RF-ETH: Funkmodul per Netzwerk anbinden

Beitrag von t0mk » 31.01.2021, 20:59

OK, Danke, dann werde ich mir das noch mal ansehen!

Aber meinst Du nicht, Arduino IDE sollte die Partitions-Datei passend zu dem (geändertem) Partitions-Schema generiert haben? Oder wird da nichts generiert, auch wenn dss Schema sich ändert? Nur so aus Interesse, natürlich ist es einfacher fertige Datei zu nehmen, wenn man weiß wo sie liegt :D

Edit: Ich habe deine partitions.bin und die in meinem Paket enthaltene AnalogReadSerial.ino.partitions.bin verglichen, die sind wohl absolut identisch. Insofern hat die Arduino-IDE einen guten Job gemacht, wenn auch der Bootloader nicht auf dem aktuellen Stand ist.

Wenn das gewünscht ist, kann ich das besser beschreiben und per PR zur Verfügung stellen, wenn auch die meisten User die Platine fertig geflasht kaufen.
Zuletzt geändert von t0mk am 02.02.2021, 13:45, insgesamt 3-mal geändert.

Antworten

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