Seite 3 von 8

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 03.10.2020, 09:50
von jp112sdl
michaelapp hat geschrieben:
03.10.2020, 09:11
Kann ich mit PaltformIO und dem ISP den Bootlader flashen
Was sagt denn Google...? ^^ 8)

"platformio flash bootloader" -> Ergebnis 1: https://community.platformio.org/t/burn ... ormio/9515 :lol:

Dann wird's jetzt aber hier OT...

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 03.10.2020, 11:16
von michaelapp
So via Arduino habe ich es erst mal hinbekommen den Bootloader zu flashen.

Im PlatformIO habe ich nach der Anleitung wenn ich sie richtig verstanden habe folgendes gemacht:

In der platformio.ini folgendes eingetragen:

Code: Alles auswählen

[env:pro8MHzatmega328]
platform = atmelavr
board = pro8MHzatmega328
im src Ordner im main folgendes:

Code: Alles auswählen

{
  "build": {
    "core": "arduino",
    "extra_flags": "-DARDUINO_AVR_PRO",
    "f_cpu": "8000000L",
    "mcu": "atmega328p",
    "variant": "eightanaloginputs"
  },
  "bootloader": {
    "efuse": "0xFD",
    "file": "atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex",
    "hfuse": "0xDA",
    "lock_bits": "0x0F",
    "lfuse": "0xFF",
    "unlock_bits": "0x3F"
  },
  "debug": {
    "simavr_target": "atmega328p"
  },
  "frameworks": [
    "arduino"
  ],
  "name": "Arduino Pro or Pro Mini ATmega328 (3.3V, 8 MHz)",
  "upload": {
    "maximum_ram_size": 2048,
    "maximum_size": 30720,
    "protocol": "arduino",
    "require_upload_port": true,
    "speed": 57600
  },
  "url": "http://arduino.cc/en/Main/ArduinoBoardProMini",
  "vendor": "Arduino"
}
Wenn ich jetzt versuche zu flashen, erhalte ich folgende Fehlermeldung:

Code: Alles auswählen

c:/users/michael/.platformio/packages/toolchain-atmelavr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avr5/crtatmega328p.o:(.init9+0x0): undefined reference to `main'
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\pro8MHzatmega328\firmware.elf] Error 1
Wo liegt mein Denkfehler?

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 03.10.2020, 11:46
von der-pw
michaelapp hat geschrieben:
03.10.2020, 11:16
Wo liegt mein Denkfehler?
Der liegt schon da, dass du das
jp112sdl hat geschrieben:
03.10.2020, 09:50
Dann wird's jetzt aber hier OT...
gekonnt ignorierst und den Beitrag weiterhin für dein PlatformIO-Problem kaperst.

Schau dir mal die Vorlagen an, die psi ganz fleißig bei den example Sketches angelegt hat, wie bspw. dieses platformio.ini: https://github.com/pa-pa/AskSinPP/blob/ ... formio.ini

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 03.10.2020, 12:16
von michaelapp
Hallo Patrick,

danke für den Hinweis.

PSI sein Beispiel ist für das Flashen, korrekt. Einen Bootloader bekomme ich mit der Beispiel platformio.ini nicht drauf da ich zum flashen des Bootloaders einen ISP verwenden muss.

Gruß
Michael

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 03.10.2020, 12:41
von der-pw
Also PlatformIO habe ich noch nie zum Bootloader Flashen benutzt.
Ich nehme da "avrdudess" für.
Ansonsten auch hier mal gucken: https://asksinpp.de/Grundlagen/02_software.html

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 09.02.2021, 13:34
von coronaxxl
Hallo Zusammen,

ich versuche nun schon eine ganze Weile diesen Sketch zum laufen zu bringen. Hardware funktioniert, wurde mit einem anderen HB-Sketch getestet. Zusätzliches MAX6675 Modul+K-Sonde ist vorhanden.

Folgende Probleme zeigen sich:

Bei dem HB-UNI-Sen-TEMP-MAX6675.ino fängt es schon damit an, dass der Config-Button nicht funktioniert, keine Fehler im SerialMonitor und keine Reaktion auf den Tastendruck.
Bei dem HB-UNI-Sen-TEMP-MAX6675-DT.ino funktioniert der Config-Button, anlernen funktioniert ebenfalls, jedoch werden die Messwerte nicht nach 180Sekunden aktualisiert. Die Batterie Anzeige zeigt auch keine realistischen Werte, aber erstmal Nebensache.

Ich habe das alles mit Arduino IDE kompiliert und hochgeladen. AskSin-master wurde verwendet, da hier die Max6675.h enthalten ist. (Mit der v4 kommen zusätzliche Fehlermeldungen)
EnableInterrupt und Low-Power Bibliotheken sind eingebunden.

Beim Kompilieren tauchen bei beiden Sketch auch noch folgende Fehler auf:

Code: Alles auswählen

In file included from \Arduino\libraries\AskSinPP-master/Device.h:10:0,
                 from \Arduino\libraries\AskSinPP-master/MultiChannelDevice.h:9,
                 from \Arduino\HM-MAX6675\HM-MAX6675.ino:17:
\Arduino\libraries\AskSinPP-master/Sign.h: In member function 'void as::KeyStore::addAuth(as::Message&)':
\Arduino\libraries\AskSinPP-master/Sign.h:155:26: warning: unused parameter 'msg' [-Wunused-parameter]
   void addAuth (Message& msg) {}
                          ^~~
In file included from \Arduino\HM-MAX6675\HM-MAX6675.ino:17:0:
\Arduino\libraries\AskSinPP-master/MultiChannelDevice.h: In instantiation of 'bool as::ChannelDevice<HalType, ChannelType, ChannelCount, List0Type>::validSignature(uint8_t, as::Message&) [with HalType = as::AskSin<as::StatusLed<4>, as::BatterySensorUni<15, 5>, as::Radio<as::LibSPI<10>, 2> >; ChannelType = WeatherChannel; int ChannelCount = 1; List0Type = as::List0; uint8_t = unsigned char]':
\Arduino\libraries\AskSinPP-master/MultiChannelDevice.h:254:32:   required from 'bool as::ChannelDevice<HalType, ChannelType, ChannelCount, List0Type>::process(as::Message&) [with HalType = as::AskSin<as::StatusLed<4>, as::BatterySensorUni<15, 5>, as::Radio<as::LibSPI<10>, 2> >; ChannelType = WeatherChannel; int ChannelCount = 1; List0Type = as::List0]'
\Arduino\HM-MAX6675\HM-MAX6675.ino:138:1:   required from here
\Arduino\libraries\AskSinPP-master/MultiChannelDevice.h:215:31: warning: unused parameter 'ch' [-Wunused-parameter]
   bool validSignature(uint8_t ch,Message& msg) {
                               ^~
\Arduino\libraries\AskSinPP-master/MultiChannelDevice.h:215:43: warning: unused parameter 'msg' [-Wunused-parameter]
   bool validSignature(uint8_t ch,Message& msg) {
                                           ^~~
\Arduino\libraries\AskSinPP-master/MultiChannelDevice.h: In instantiation of 'bool as::ChannelDevice<HalType, ChannelType, ChannelCount, List0Type>::validSignature(as::Message&) [with HalType = as::AskSin<as::StatusLed<4>, as::BatterySensorUni<15, 5>, as::Radio<as::LibSPI<10>, 2> >; ChannelType = WeatherChannel; int ChannelCount = 1; List0Type = as::List0]':
\Arduino\libraries\AskSinPP-master/MultiChannelDevice.h:367:30:   required from 'bool as::ChannelDevice<HalType, ChannelType, ChannelCount, List0Type>::process(as::Message&) [with HalType = as::AskSin<as::StatusLed<4>, as::BatterySensorUni<15, 5>, as::Radio<as::LibSPI<10>, 2> >; ChannelType = WeatherChannel; int ChannelCount = 1; List0Type = as::List0]'
\Arduino\HM-MAX6675\HM-MAX6675.ino:138:1:   required from here
\Arduino\libraries\AskSinPP-master/MultiChannelDevice.h:206:32: warning: unused parameter 'msg' [-Wunused-parameter]
   bool validSignature(Message& msg) {
                                ^~~
Kann man mir behilflich sein diesen tollen Sketch zum laufen zu bekommen.

Mit bestem Dank im voraus

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 09.02.2021, 13:41
von jp112sdl
Hi
coronaxxl hat geschrieben:
09.02.2021, 13:34
Beim Kompilieren tauchen bei beiden Sketch auch noch folgende Fehler auf:
aber
coronaxxl hat geschrieben:
09.02.2021, 13:34

Code: Alles auswählen

warning
ist kein Fehler, nur eine Warnung, die ignoriert werden kann.
coronaxxl hat geschrieben:
09.02.2021, 13:34
Bei dem HB-UNI-Sen-TEMP-MAX6675.ino fängt es schon damit an, dass der Config-Button nicht funktioniert, keine Fehler im SerialMonitor und keine Reaktion auf den Tastendruck.
Hast du die externe Batteriemessung richtig angeschlossen? Enable Pin ist 5 und gemessen wird an A1

Falls nämlich "keine" Spannung gemessen wird, dann landest du unterhalb von battery.critical und die Schaltung geht in den Dauertiefschlaf (https://github.com/jp112sdl/HB-UNI-Sen- ... 5.ino#L129)

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 09.02.2021, 13:59
von coronaxxl
Hallo und danke für die schnelle Rückmeldung,

die Batteriemessung habe ich natürlich nicht angeschlossen. :roll:

Das bedeutet VCC an A1? Was mache ich mit PIN 5?

Grüße

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 09.02.2021, 14:07
von jp112sdl
Der MAX6675 braucht ja mind. 3V, deshalb nutze ich einen StepUp der konstant diese Spannung liefert und ProMini+Max6675 versorgt.
Um aber die tatsächliche Batterie-Eingangsspannung zu messen muss ein Spannungsteiler her.

Wie dort in der Box "Battery measurement"
https://github.com/pa-pa/HMSensor/blob/ ... StepUp.pdf
Nur halt dass du A3 gegen A1 und D7 gegen 5 austauschst

Re: HB-UNI-Sen-TEMP-MAX6675

Verfasst: 09.02.2021, 14:27
von coronaxxl
Ok, Spannungsteiler wie du beschrieben hast eingebaut, Config Button geht immer noch nicht bei HB-UNI-Sen-TEMP-MAX6675.ino, obwohl hier richtig gemessen wird, siehe Screenshot. Einmal eVCC mit angeschlossener Spannung und eVCC=0 mit abgeklemmter Spannung. Kann hier noch ein Fehler vorliegen?
Kann ich nicht die Batteriemessungsüberwachung temporär rausnehmen?


Ergänzung: HB-UNI-Sen-TEMP-MAX6675-DT.ino scheint so nun zu funktionieren, Messdaten kommen nun alle 180 Sekunden und die Batterieanzeige zeigt auch passende Werte. Es wird aber keine Störung angezeigt, dass Sensor 2 nicht angeschlossen ist.