AskSin++ Library

Begonnen von papa, 08 September 2016, 11:11:25

Vorheriges Thema - Nächstes Thema

jp112sdl

Zitat von: Tom Major am 22 Juli 2018, 12:51:15
ok, dann wird ein HW Problem unwahrscheinlicher, aber noch nicht ganz ausgeschlossen.  ;)
Habe es mit 3 verschiedenen Pro-Mini Boards getestet und im Sleep auch mal den Vcc vom CC1101 getrennt, um diesen als Stromfresser auszuschließen.
LDO ist natürlich von den Pro-Mini-Boards auch entfernt.  ;)

Zitat von: Tom Major am 22 Juli 2018, 12:51:15
Funktioniert der RHS bei 3,2V trotzdem noch korrekt?
Ja, er funktioniert einwandfrei, auch noch bei 2,0 V. Nur die Batterien halten nicht sehr lange...  8)
Das war mir aufgefallen, weshalb ich der Sache mal auf den Grund gehen wollte.
Bei 2V sinkt die Stromaufnahme dann auf 1,4mA. Sie fällt also proportional zur VCC.

Zitat von: Tom Major am 22 Juli 2018, 12:51:15
Wie sieht die Eingangsschaltung für die pin Abfrage aus?
Hardwareseitig ist nur ein Reed-Kontakt dran an A3. Aber auch die Verwendung von "echten" Digitalpins z.B. "6" ändert nix.

Tom Major

Nach diesen Infos klingt das nach einem relativ seltsamen Problem  >:(
Kannst du mal ein gutes Foto vom Schaltungsaufbau posten oder verlinken?
Ist der Status des Reeds egal für die Stromaufnahme bei 3,2V?
Früher: FHEM 5.x
Jetzt: RaspberryMatic / ioBroker

jp112sdl

Der Aufbau ist eigentlich total unspektakulär.
2x AAA an VCC und GND, das CC1101 ist mit Lackdraht auf der Rückseite des Pro Mini angeheftet.

Den Status des Reeds habe ich gar nicht verändert; der Kontakt war bei meinen Messungen bisher immer "offen".

Ich vermute den "Fehler" (sofern es sich um einen handelt) nicht mal unbedingt in der AskSinPP Lib, sondern eher in der Low-Power Lib.


Tom Major

Stimmt, relativ unspektakulärer Aufbau  ;)

Kann es sein dass der AVR bei 3,2V nicht mehr in den sleep geht? Die Stromaufnahme legt das nahe. Sehe allerdings aus der Ferne keinen Grund warum er das ab 3,2V nicht mehr tun sollte...

Man könnte in der LowPower bei wake-up und sleep eine LED an/ausmachen um das zu verifizieren, das wäre allerdings nur eine Annäherung an das Problem und noch keine Lösung.
Früher: FHEM 5.x
Jetzt: RaspberryMatic / ioBroker

Tom Major

Eine weitere Annäherung:
Alle pin Pegel des Pro Mini vergleichen bei 3,3V und 3,2V. Irgendwelche Unterschiede?
Früher: FHEM 5.x
Jetzt: RaspberryMatic / ioBroker

jp112sdl

Zitat von: Tom Major am 22 Juli 2018, 17:52:50
Eine weitere Annäherung:
Alle pin Pegel des Pro Mini vergleichen bei 3,3V und 3,2V. Irgendwelche Unterschiede?

Ich hab mal den Oszi angeschlossen und sehe, egal bei welcher Spannung, dass die Pegel der zu überwachenden Pins L sind und in kurzen Intervallen beim Prüfen kurz einen H-Peak haben.
Die ungenutzten Pins dümpeln bei 0,6V irgendwo umher.

Aber - Trommelwirbel - ich habe die Schaltung neu aufgebaut und einen Pro Mini aus einer anderen Charge (Bestellung) genommen.
Nu gehts! Ich hab noch drei mal alles verglichen. Die Fuses sind identisch, der Sketch ist derselbes.
Ich hab keine Ahnung, was da faul ist!

Kann es am Bootloader liegen? Ich hab nun schon den Bootloader neu gebrannt (der von der Arduino IDE mitkommt), was jedoch keine Besserung brachte.

Im Moment bin ich zufrieden, da der Batteriefresser nun gefixt ist.
Die anderen 3 Boards mit erhöhtem Stromverbrauch markiere ich mit "Netzteil only". ::)

Danke für die Hilfe bei der Fehlersuche!

Tom Major

Glaub nicht das der bootloader der Verursacher sein kann.
Das Problem ist ziemlich seltsam, m.E. könnte es sich lohnen das weiter zu untersuchen da der sleep Strom bei unseren HM devices ziemlich wichtig ist.
Ich habe mal ein SleepTest Sketch gemacht:
https://github.com/TomMajor/AskSinPP_Examples/tree/master/Info/SleepTest

Der Sketch schickt den CC1101 in den powerdown, und toggelt dann aller 8s zwischen Normal und Sleep, die LED auf dem Board wird auch entsprechend getoggelt.

cc1101_powerdown();
sollte aktiviert werden wenn ein CC1101 angeschlossen ist.

Man müsste dann in einem mA Messbereich den Wechsel zwischen 0 und einigen mA gut sehen können. Das muss auch bei 3,2V funktionieren.
Wenn deine "Netzteil only" Boards keine Unterschiede zur anderen Charge ergeben kann es m.E. nicht an den Boards liegen. Im sleep wird BOD per SW abgeschaltet.
Früher: FHEM 5.x
Jetzt: RaspberryMatic / ioBroker

jp112sdl

So... jetzt hatte ich mal kurz Zeit zum Tüfteln.
Vielen Dank für deinen Test-Sketch.

Also es ist unerheblich, ob 3.3V oder 3.0V - die Stromaufnahme schwankt zwischen 10mA (EIN) und 6mA (SLEEP)....

Lade ich den Sketch auf einen "guten" 328P mit CC1101 komme ich auf 4,8mA (EIN) und 1,7mA (SLEEP)

Keine Ahnung, ob der Stromfresser ein russisches Modell mit Heizdraht ist... irgendwo muss die Energie ja bleiben. ??? :o

Tom Major

#953
Beim "guten" 328P, meinst du da 1,7 Microampere? Sonst muss ich das selber noch mal testen  ;)
LDO ist bei beiden, gut und schlecht, entfernt?
Früher: FHEM 5.x
Jetzt: RaspberryMatic / ioBroker

jp112sdl

Zitat von: Tom Major am 25 Juli 2018, 23:12:56
Beim "guten" 328P, meinst du da 1,7 Microampere? Sonst muss ich das selber noch mal testen  ;)
Nein nein, Milliampere!
Bei meinem Messgerät schließe ich auch aus, dass es falsch misst, denn das Amperemeter am Labornetzteil zeigt auch grob 0,011 / 0,004 A an.
Ist beim powerDown evtl. noch mehr mit anzugeben?

Zitat von: Tom Major am 25 Juli 2018, 23:12:56
LDO ist bei beiden, gut und schlecht, entfernt?
Entfernt beim "schlechten" und bei 2 "guten" hatte ich einen mit LDO und einen ohne LDO. Jedoch fielen die paar zusätzlichen µA bei den mA nicht ins Gewicht.

Tom Major

Zitat von: jp112sdl am 26 Juli 2018, 06:51:02
Nein nein, Milliampere!
Bei meinem Messgerät schließe ich auch aus, dass es falsch misst, denn das Amperemeter am Labornetzteil zeigt auch grob 0,011 / 0,004 A an.
Ist beim powerDown evtl. noch mehr mit anzugeben?
Entfernt beim "schlechten" und bei 2 "guten" hatte ich einen mit LDO und einen ohne LDO. Jedoch fielen die paar zusätzlichen µA bei den mA nicht ins Gewicht.

Dann läuft da was schief.. Fuses? (Clock/Xtal), zusätzlich angeschlossene HW? oder es stimmt was mit dem AVR selbst nicht..

Habe den SleepTest Sketch getestet und besser dokumentiert:
https://github.com/TomMajor/AskSinPP_Examples/tree/master/Info/SleepTest

Macht genau das was er soll.
Mit diesem Sketch (und auf HW bestehend aus Pro Mini und CC1101) muss die Stromaufnahme in etwa zwischen 3mA und 3..4uA toggeln.
Früher: FHEM 5.x
Jetzt: RaspberryMatic / ioBroker

gloob

Hallo,

Ich wollte gerade einen Arduino Pro Mini flashen und bekomme folgenden Fehler im Log:

AskSin++ V3.1.1 (Jul 30 2018 19:18:47)
Address Space: 32 - 73
CAFE993D
Init Storage: CAFE6189
CC init1
Error at 00 expected: 2E read: 00
Error at 02 expected: 06 read: 00
Error at 03 expected: 0D read: 00
Error at 04 expected: E9 read: 00
Error at 05 expected: CA read: 00
Error at 07 expected: 0C read: 00
Error at 0B expected: 06 read: 00
Error at 0D expected: 21 read: 00
Error at 0E expected: 65 read: 00
Error at 0F expected: 6A read: 00
Error at 10 expected: C8 read: 00
Error at 11 expected: 93 read: 00
Error at 12 expected: 03 read: 00
Error at 15 expected: 34 read: 00
Error at 17 expected: 03 read: 00
Error at 18 expected: 18 read: 00
Error at 19 expected: 16 read: 00
Error at 1B expected: 43 read: 00
Error at 21 expected: 56 read: 00
Error at 23 expected: E9 read: 00
Error at 24 expected: 2A read: 00
Error at 25 expected: 1F read: 00
Error at 26 expected: 11 read: 00
Error at 29 expected: 59 read: 00
Error at 2C expected: 81 read: 00
Error at 2D expected: 35 read: 00
Error at 2E expected: 09 read: 00
Error at 3E expected: 03 read: 00
CC Version: 00
Error at 3E expected: C0 rea


Jemand eine Idee, was das sein könnte? Sieht stark danach aus als könnte er den CC1101 nicht ansprechen.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

jp112sdl

Zitat von: gloob am 30 Juli 2018, 19:20:28
Sieht stark danach aus als könnte er den CC1101 nicht ansprechen.
Korrekt!

gloob

#958
Zitat von: jp112sdl am 30 Juli 2018, 19:27:53
Korrekt!

Schade. Es scheint als seinen die Gerber Dateien von Alex Reinert defekt:
https://github.com/alexreinert/PCB/tree/master/HB-UNI-SEN-BATT

In der Mitte sieht man schön die Lötpads des CC1101 und dort 3 Leitungen direkt mit der Massefläche verbunden sind

30€ an Platinen für die Tonne.  :(

Edit: Mal schauen ob ich die Bahnen mit dem Cutter-Messer trennen kann.

Edit 2: Ich hab die fehlerhaften Bahne auf der Unterseite getrennt und schon kann der CC1101 und der BME280 korrekt angesprochen werden
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

jp112sdl

Zitat von: gloob am 30 Juli 2018, 19:45:20
Schade. Es scheint als seinen die Gerber Dateien von Alex Reinert defekt:
https://github.com/alexreinert/PCB/tree/master/HB-UNI-SEN-BATT

Es war tatsächlich irgendwas faul mit der Vorlage.
Er hat mir gerade geschrieben, dass er sie gefixt und im Github aktualisiert hat.