HB-UNI-Sensor1-THPD-BME280 HomeAssistant

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

Moderator: Co-Administratoren

Benutzeravatar
FUEL4EP
Beiträge: 584
Registriert: 01.11.2017, 17:26
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 76 Mal
Danksagung erhalten: 77 Mal
Kontaktdaten:

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von FUEL4EP » 05.04.2021, 19:48

RG1004 hat geschrieben:
05.04.2021, 18:51
Mmh. Also ich habe das Ding ja fertig zusammengebaut (Arduino eingelötet) und da steht, dass dieses flashen vorher erfolgen soll (also z.b. bevor die CC1101 Funkplatine etc. verbaut ist). Auf ein paar Euros für diesen Programmer kommt es mir nicht an aber ich fürchte ohne genaue Anleitung was ich da machen soll bin ich da chancenlos. Geht das auch mit bereits verlötetem Arduino?
Ja, das geht. Ich baue meine Sensoren auch immer komplett auf und programmiere sie erst nach dem kompletten Aufbau. Nur bei einstellbaren Spannungswandlern muss man aufpassen, dass diese zuerst eingestellt werden, bevor andere Bauteile mit den erzeugten Spannungen beaufschlagt werden.

Es kann dann allerdings passieren, dass der CC1101 so schlecht ist, dass man ihn wieder auslöten muss. Das ist nicht immer einfach möglich.
Dito kann es passieren, dass der ATmega328P einen zu hohen Ruhestrom hat. Für beides kann man sich Testbeds bauen, um die Module vorher ohne Verlöten zu prüfen. Ich persönlich kaufe daher keine Billigware in China und habe bisher auch ohne Testbed-Prüfung nur ein Mal Probleme damit gehabt.

Für die Nutzung des ISP Programmers muss die SPI-Schnittselle mit einer Stiftleiste versehen werden, so dass der ISP Programmer einfach ansteckbar ist.
Grüße

Ewald

Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von jp112sdl » 05.04.2021, 19:49

FUEL4EP hat geschrieben:
05.04.2021, 19:33
a) Sensor in der Zentrale löschen, dann normalen Anlernvorgang
b) Sensor in Zentrale NICHT löschen, normaler Anlernvorgang, aber keine Sensor im 'Posteingang(1)' Meldung
Variante a) ist zu bevorzugen, weil dann auch alle Geräteparameterwerte zur CCU Übertragen werden.
Bei b) würde nur die Master-Adresse im Gerät bekannt gemacht. Etwaige Diskrepanzen zwischen Werten in der WebUI und im Gerät würde bestehen bleiben. (z.B. ein ein konfigurierbarer Temp-Offset).

VG,
Jérôme ☕️

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

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von jp112sdl » 05.04.2021, 20:02

Variante c) wäre noch, nach b) ein "RestoreConfig" über das versteckte devconfig-Tool zu machen.
Damit werden alle Parametereinstellungen, wie sie in der WebUI angezeigt werden, zum Gerät gesendet.

Ich hatte mir dazu mal einen extra Button in die WebUI oben rechts eingebaut, weil ich das doch öfter benötige und mir der Weg über devconfig jedes Mal zu mühsam ist
Bildschirmfoto 2021-04-05 um 20.01.47.png

VG,
Jérôme ☕️

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

RG1004
Beiträge: 33
Registriert: 02.01.2021, 14:51
System: CCU
Hat sich bedankt: 3 Mal

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von RG1004 » 20.04.2021, 18:04

Also ich habe mir jetzt den Diamex USB ISP-Programmer für AVR, STM32, LPC-Cortex (Prog-S2) zugelegt.
https://www.diamex.de/dxshop/USB-ISP-Pr ... ex-Prog-S2
Ich habe alles richtig angeschlossen und dann versucht mit AVRDUDESS auf den Arduino "zuzugreifen", also mal auszulesen was das System findet. Leider ohne Erfolg:
AVRDUDESS.png
Folgende zusätzliche Infos:
- die Status LED des Arduino leuchtet. Der Arduino hat 3,3V Spannung (gemessen)
- die Status LED des Diamex leuchtet grün
- ich habe auch die Datenblätter des Arduino und des Diamex heruntergeladen und gecheckt ob die Pins gemäß https://github.com/FUEL4EP/HomeAutomati ... /README.md stimmen. Ja alles korrekt
- ich habe die Einstellung mit Bit Clock "10" versucht.
- ich habe gemäß Hinweisen von Diamex andere Baudraten versucht, da die angeblich selbst umstellen
- ich habe die Verbindung zwischen Diamex und Arduino beim 6 und 10- poligen Stecker getestet
- COM4: ebenfalls in der Systemsteuerung nachgesehen: ist COM4
ich bin ratlos

Hackertomm
Beiträge: 680
Registriert: 18.04.2018, 12:32
System: Alternative CCU (auf Basis OCCU)
Wohnort: Neuhausen auf den Fildern
Hat sich bedankt: 15 Mal
Danksagung erhalten: 19 Mal

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von Hackertomm » 20.04.2021, 18:24

Da ist der falsche Programmer eingestellt!
Da steht "Arduino", das ist falsch.
Es müsste wahrscheinlich "Atmel STK500" heißen.
Programmer.jpg
Gruß
Hackertomm

Virtual Image auf einer Qnap TS-451D2, 2GHZ Celeron u. 8GB RAM, aktuell Raspberry OVA, Vers. 3.71.12.20231020

RG1004
Beiträge: 33
Registriert: 02.01.2021, 14:51
System: CCU
Hat sich bedankt: 3 Mal

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von RG1004 » 20.04.2021, 22:01

Danke für den Tipp. Ein Schritt weiter aber mit nächstem Problem:

mit Atmel STK500 als Programmer wurde der Arduino erkannt:

Code: Alles auswählen

>>>: avrdude -u -c stk500 -P COM4 -b 57600 -p m8 
Detected 1e950f = ATmega328P
Danach habe ich die Fuses gesetzt:

Code: Alles auswählen

-c stk500 -p m328p -P COM4 -b 57600 -U lfuse:w:0xFF:m -U hfuse:w:0xD6:m -U efuse:w:0xFF:m 
Danach den Bootloader geflasht:

Code: Alles auswählen

-c stk500 -p m328p -P COM4 -b 57600 -V -U flash:v:"C:\Program Files (x86)\AVRDUDESS\ATmegaBOOT_168_atmega328_pro_8MHz.hex"
Das erfolgreiche flashen verifiziert und das war auch ok.
Seitdem lassen sich am Arduino keinerlei Sketches mehr installieren (Frequenztest etc.). Beim kompilieren kommen nach mehreren Minuten immer Fehlermeldungen.

Zurück zum AVRDUDE:
Wenn man den Arduino nochmals am DIAMEX anschließt und das Bootfile verifiziert kommt immer eine Fehlermeldung:

Code: Alles auswählen

Reading | ################################################## | 100% 0.00s

avrdude.exe: Device signature = 0x1e950f (probably m328p)
avrdude.exe: verifying flash memory against C:\Program Files (x86)\AVRDUDESS\ATmegaBOOT_168_atmega328_pro_8MHz.hex:
avrdude.exe: load data flash data from input file C:\Program Files (x86)\AVRDUDESS\ATmegaBOOT_168_atmega328_pro_8MHz.hex:
avrdude.exe: input file C:\Program Files (x86)\AVRDUDESS\ATmegaBOOT_168_atmega328_pro_8MHz.hex auto detected as Intel Hex
avrdude.exe: input file C:\Program Files (x86)\AVRDUDESS\ATmegaBOOT_168_atmega328_pro_8MHz.hex contains 32652 bytes
avrdude.exe: reading on-chip flash data:

Reading | ################################################## | 100% 0.00s

avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x7800
             0xff != 0x0c
avrdude.exe: verification error; content mismatch

avrdude.exe done.  Thank you.
Also:
- AVRDUDE Bootlader flashen - Meldung ok
- verifizieren - Meldung ok
- Gerät vom PC abstecken, wieder anstecken, erneut verifizieren - es kommt immer die obige Fehlermeldung
Bitte um Hilfe

Hackertomm
Beiträge: 680
Registriert: 18.04.2018, 12:32
System: Alternative CCU (auf Basis OCCU)
Wohnort: Neuhausen auf den Fildern
Hat sich bedankt: 15 Mal
Danksagung erhalten: 19 Mal

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von Hackertomm » 21.04.2021, 09:52

Warum hast du den Bootloader geflasht?
Ich fand da keine Beschreibung, die das fordert!
Ich würde übrigens, erst den Bootloader flashen und dann die Fuses setzen!
Denn der Bootloader könnte andere Fuses mitbringen.

Aber so genau kenne ich mich mit der Materie auch nicht aus!
Gruß
Hackertomm

Virtual Image auf einer Qnap TS-451D2, 2GHZ Celeron u. 8GB RAM, aktuell Raspberry OVA, Vers. 3.71.12.20231020

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von jp112sdl » 21.04.2021, 11:27

Bei 32652 Byte Sketch Größe passt kein Bootloader.

VG,
Jérôme ☕️

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

RG1004
Beiträge: 33
Registriert: 02.01.2021, 14:51
System: CCU
Hat sich bedankt: 3 Mal

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von RG1004 » 21.04.2021, 13:53

Also ich hab e es aus dieser Anleitung herausgelesen:
https://asksinpp.de/Grundlagen/04-isp.h ... ss-des-isp
und hier:

Code: Alles auswählen

Sketch (Bootloader) flashen
Beispiel HEX-File flashen, hier der Bootloader (opens new window)der es ermöglicht Software über die UART Schnittstelle zu flashen. Da hier eine Datei geflasht wird ist darauf zu achten, dass der avrdude-Aufruf aus dem gleichen Verzeichnis erfolgt, in dem auch die Datei liegt. Im Beispiel wird ein Diamex verwendet welcher auf /dev/ttyACM3 erkannt wurde und ein ATMega 328P.

# Schreiben des Arudino Bootloaders
avrdude -p m328p -P /dev/ttyACM3 -c stk500v2 -V -U flash:w:ATmegaBOOT_168_atmega328_pro_8MHz.hex

# Bootloader verifizieren
avrdude -p m328p -P /dev/ttyACM3 -c stk500v2 -U flash:v:ATmegaBOOT_168_atmega328_pro_8MHz.hex
Vielleicht habe ich das missverstanden.
Also ich habe verstanden:
1.) die Fuses setzen
2.) Bootloader flashen
Wie kann man das rückgängig machen falls es nicht sein soll?

Benutzeravatar
FUEL4EP
Beiträge: 584
Registriert: 01.11.2017, 17:26
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 76 Mal
Danksagung erhalten: 77 Mal
Kontaktdaten:

Re: HB-UNI-Sensor1-THPD-BME280 HomeAssistant

Beitrag von FUEL4EP » 21.04.2021, 14:07

Die Dateigröße des bootloader HEX Files stimmt auch nicht. Bei mir unter Linux OS ist die Dateigröße von ATmegaBOOT_168_atmega328_pro_8MHz.hex 5484 Bytes (enthalten in arduino-1.8.13-linux64.tar.xz). Bitte die Quelle des HEX Files prüfen und auch sicherstellen, dass es ein HEX File ist:

Code: Alles auswählen

:107800000C94343C0C94513C0C94513C0C94513CE1
:107810000C94513C0C94513C0C94513C0C94513CB4
:107820000C94513C0C94513C0C94513C0C94513CA4
:107830000C94513C0C94513C0C94513C0C94513C94
:107840000C94513C0C94513C0C94513C0C94513C84
:107850000C94513C0C94513C0C94513C0C94513C74
:107860000C94513C0C94513C11241FBECFEFD8E036
:10787000DEBFCDBF11E0A0E0B1E0EAE8FFE702C063
:1078800005900D92A230B107D9F712E0A2E0B1E065
:1078900001C01D92AD30B107E1F70E942D3D0C945F
:1078A000C33F0C94003C982F95959595959595958B
:1078B000905D8F708A307CF0282F295A8091C0000B
:1078C00085FFFCCF9093C6008091C00085FFFCCF60
:1078D0002093C6000895282F205DF0CF982F809127
:1078E000C00085FFFCCF9093C6000895EF92FF92F1
:1078F0000F931F93EE24FF2487018091C00087FD22
:1079000017C00894E11CF11C011D111D81E2E8164D

...
...
Also nochmals das Programmieren mit dem richtigen HEX File (5484 Bytes groß) versuchen ..
Grüße

Ewald

Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs

Antworten

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