Minimal Hardware Design GSM-Stockwaage mit TTGO T-Call

Eigentlich ne super Idee! Laß uns das doch mal ausprobieren!
:slight_smile:

Schaltplanzeichnen ist eigentlich nicht so mein Metier. Also verzeiht bitte, wenn das etwas unkonventionell ist.


USB_DS3231.pdf (16,7 KB)

Diese kleine Platine ist ein Zwischenstecker für den USB-Anschluss. Der DS3231 zieht das Gate für den P-Kanal MOSFET auf low und schaltet damit die VBUS Leitung (und damit die MCU) ein.
Die MCU kommuniziert per I2C mit dem DS3231, stellt darüber die neue Weckzeit ein und zieht sich am Ende selbst den Stecker.
Der Reed Kontakt dient dazu, die MCU außerplanmäßig aus dem Schlaf zu holen. Das hat den Vorteil kontaktlos zu sein - muß man also kein Gehäuse aufschrauben.

Das funktioniert mit jeder MCU, die per USB versorgt werden kann. Das sind in diesem Kontext eigentlich alle. Der Stromverbrauch der MCU oder der Sensoren spielt hiermit dann auch praktisch keine Rolle mehr (bei ‘langsamen’ Meßintervallen).

1 Like

Das finde ich nicht so zielführend, Welche 5 V-Stromquelle sollen wir dafür nutzen? Alle USB-Powerbanks scheiden aus wegen der automatischen Abschaltung. Wie könnten die wieder mit Solar aufgeladen werden? Wieder eine höherer Spannung, die verlustbehaftet gewandelt werden muss.

Dann lieber ein stromsparendes board wie den WiPy und ein SIM800 breakout dort dran mit einem LiPo wie schon oben geschildert.

Hier gab es zum T-Call noch ein paar zusätzliche Aufrufe um Strom im deep sleep zu sparen, die haben wir noch nicht alle bei uns:

Obs was bringt waage ich zu bezweifeln, der Poster spricht immer noch von 950 uA. Das wären sogar mehr wie wir gemessen haben.

z.b.:
https://www.ebay.de/itm/Raspberry-Pi-Wemos-18650-Battery-Shield-V3-V8-ESP32-ESP-32-USB-Cable-For-Arduino-/273916822649

Klar ist das mit dem Wandeln doof, aber wir können die 5V für den HX711 verwenden und die Wandlungsverluste können uns auch wurscht sein, wenn wir nichts wandeln, weil wir nichts verbrauchen.

Warum mit Stromverbrauch abmühen, wenn wir den Stecker ziehen können?

Hallo @clemens,

mein aktueller Versuchsaufbau mit einem TTGO-T-CALL, 2x HX711 & 18650LiPO der mittels Solar Panel gespeist scheint seit knapp einem Monat aus zureichen um Messwerte alle 15 Minuten zu übermitteln.

(Die extremen Ausreißer im Dashboard kommen von Tests)

Sofern der Ladezustand unter 75% sinkt - wird die Schlafphase des ESP auf 60min verlängert.

Hier Generische “state-of-the-art” Arduino-Firmware für ESP8266 und ESP32 schon mal kurz skizziert.

3 Likes

misst Du den echten Ladezustand ( schwierig zu messen ) ?
Oder nur die Spannung des Akkus ( x % von 4.2 Volt )?

Ich greif dabei auf die Werte zurück die mir das GSM-Modul liefert

  volt_level = modem.getBattPercent();
  voltage = modem.getBattVoltage() / 1000.0F;

Hatte das aber auch in der Vergangenheit mal mit Spannungsteiler und Messung,
wobei die Ermittlung mittels Funktion natürlich deutlich komfortabler ist.

Das hört sich gut an! Welches Panel hast du, vermutlich etwas mehr als 0,5 W? :-)

Geringfügig mehr hat das Solar Modul schonmit 6 W & 6V → Banggood 6W 6V - Solar Modul

Meine ersten Versuche mit einem kleineren Modul & dem damals noch gesonderten SIM800 Modul waren nicht so erfolgreich. Zumal ich mir überlegt hab das Modul lieber unterhalb der Beute zu platzieren und nur das Solar Modul der Witterung aussetze.

1 Like

Auch wenn das bei @clemens nicht so auf Begeisterung gestossen ist, werde ich das mit dem Abschalten über einen DS3231 weiter verfolgen.
Das ganze ist eigentlich sehr simpel. Hab es zwar hier in SMD gezeichnet, aber das kann man ganz locker auf einer Lochrasterplatine löten (FYI in schön würde das Board bei Aisler ca. 4€ kosten).

Als Stromversorgung bietet sich eine LiFePo4-Zelle an.
Mit Solarzelle in der Luxusversion Solar1. Alternativen dazu habe ich keine gefunden. LiFePo-Solarlader sind meistens für den Campingbedarf (mit 3S oder mehr Zellen).
Billiger ist es, einfach LiPo Solarlader zu nehmen. Die Ladeschlussspannung ist bei 4,2V und das vertragen die LiFePo4s noch. Ich konnte da noch nichts negatives ergoogeln - so richtig toll klingt das aber nicht.

Oder man nimmt LiPos und das Teil von Waveshare und lötet die LEDs aus. Und genau das werde ich dann mal ausprobieren (in der Lochraster-Version). Bis auf das Waveshare board habe ich alles dafür auf dem Tisch.
Edit: die letzte Option hat leider den Denkfehler, das, wenn man den DS3231 mit 5V betreibt, der I2C-Bus auch mit 5V läuft. Das kann der ESP32 nicht ab. Also muss entweder gleich mit 3,3V versorgt werden oder ein Pegelwandler an den Bus.

Schaltplan:

Board:

2 Likes

Ist jetzt nicht ganz so einfach geworden, wie im ersten Post beschrieben :stuck_out_tongue: aber immerhin:


Man beachte die professionelle Befestigung im Kasten. Der funkt momentan nur im WLAN, deshalb ist die Antenne noch so darunter gekruschelt.
Links oben ein 18650 Akku - die vorgesehene 14500 habe ich nicht.
Links das Waveshare Solar board, das leider nur 5V produziert. Daher wird eine Levelshifter auf der Hilfsplatine gebraucht.
Rechts oben die Hilfsplatine mit dem DS3231 (oben), level shifter (mitte rechts), MAX17043 (mitte links), daneben der MOSFET, ganz links Spannung rein und raus. Der DS3231 schaltet die Versorgung während des Deepsleeps komplett ab.
In der Mitte der HX711 zum wiegen.
Rechts unten der TTGO T-CALL.


So wird das jetzt erstmal zwei Wochen im Garten stehen, um zu sehen, wie weit man mit den Solarzellen kommt.
Momentan werden alle 10 Minuten (nachts alle 20) Daten hierhin geschickt:
https://swarm.hiveeyes.org/grafana/d/D6qEhpEWk/do-mm-stock-05

Ich muss noch die ganzen LEDs von dem Waveshare board und dem DS3231 runterlöten. Innenbeleuchtung braucht der Klemmenkasten ja eher nicht.
Nach dem Urlaub kommt dann noch der Modembetrieb dran und der zweite HX711 für die zweite Waage. Dann kann ich mir ansehen, was die Damen im Herbst so treiben.

Ich brauche von diesem Waagentyp exact diese eine. Falls Interesse an der Platine besteht, mache ich das gerne noch hübsch. In einer 3,3V Version wäre die nochmal deutlich simpler, der MAX17043 ist optional.
Damit macht man sich vollkommen unabhängig von den Verbräuchen einer MCU im deepsleep.

5 Likes

Zwei Wochen später: ist ohne Probleme durchgelaufen. Akku war am Ende voll geladen - allerdings auch kein Wunder bei dem guten Wetter.
1 Messfehler auf dem A-Kanal. Da auf dem B-Kanal nichts auffäliges war, kann es nicht die Katze gewesen sein. Werde ich weiter beobachten.
Die Innenbeleuchtung habe ich entfernt und das ganze jetzt innen hinter einem Fenster mit Spiegelfolie aufgebaut. Das simuliert Winter ganz gut. Schaun wir mal, wie weit man damit kommt.

Next up: senden per 2G. Den 2. HX7111 lege ich erstmal auf Eis und warte auf den NAU7802 oder ADS1234.

Edit: sorry, 2 Messfehler. Noch einer von heute Morgen und auch A-Kanal. Hmm, kann der höhere Gain dafür anfälliger sein?

1 Like

Der Dateineingang do-mm-stock-05 scheint tot zu sein.

Lebt denn das Projekt noch?

Oder gibt es mittlerweile evtl. einen Superstromspar-ESP32 (am Besten mit zukunftsfähigem GSM-Modul), der sich dafür besser eignet?

Danke @Fux fürs bumpen dieses threads! Habe tatsächlich das Projekt damals etwas aufgegeben nachdem klar wurde, dass wir mit dem TTGO T-Call auf keinen grünen Zweig kommen.

Wir haben im Januar 2020 mit der ersten Version des TTGO T-Call gearbeitet, nun habe ich wieder mal auf https://github.com/Xinyuan-LilyGO/LilyGo-T-Call-SIM800 geschaut und siehe da, seit damals gab es mehrere Revisionen und nun auch eine Version mit dem AXP192 als power management chip statt des IP5306. Zumindest das Problem mit dem Anschalten nach power loss / battery disconnection scheint damit gelöst.

  1. If you use the IP5306 version and use a lithium battery to supply power, you must press the reset button to turn on the board.
  2. If you use the AXP192 power management chip, you need to press and hold the PWR button for 2 seconds to turn on the power supply. By default, the AXP192 will be powered on when the battery is inserted.

Leider ist der deep sleep-Verbrauch mit 500 uA immer noch enorm etwa im Vergleich zum WiPy mit 15-20 uA, ggf. ist jetzt die Stunde des timers gekommen! ;-)

1 Like

Ich habe gerade entdeckt, dass AHTLAB aus Việt Nam ähnliche Hardware im Programm hat. Leider habe ich nirgends entdecken können, welcher power management chip genau verwendet wird [1].

Es ist natürlich fraglich, ob diese Geräte aus anderen Gründen (nicht) für ultra low power Betriebsweisen ausgelegt sind, solange wir keine Informationen über den deep sleep current herausgefunden haben.

Geräte

Repositories


  1. Ist es vielleicht ein MP2307 oder MP2393? ↩︎

Nein, es ist ein TD1410 (2A step-down DC/DC converter, 380 kHz, 20V), und die von Dir Zitierten sind ebenfalls step-down (buck) converter mit 3A - aber alles keine “power management” ICs, das wäre geprahlt. Keiner davon ist ein PMIC und könnte z.B. mit einer Akku-Ladefunktion aufwarten.

1 Like

Dazu noch etwas im TTN-Forum gefunden, es geht dort um den TTGO LoRa, nicht um den T-Call, aber um den neuen Energie-Management-Chip AXP192:

The AXP needs to be configured in code to enable power and the correct voltages to elements on the board. Without configuring the AXP many things will not work. See the TTGO T-Beam topic for more information.

Hier könnte man bei Gelegenheit dann auch mal spicken, beim code für den T-Beam / Paxcounter, auch ein ESP32 mit AXP von TTGO, der laut Produktseite überraschend stromsparend sein soll:

Sleep current: 0.2uA@SLEEP
1.5uA@IDLE

vielleicht ist die Verdrahtung ähnlich und man könnte beim code vom

oder bei der

genauer reinschauen.

1 Like

Versuche gerade zu verstehen, wie der (neue) T-Call mit SIM800C und AXP192 das SIM800-Modul mit Strom versorgt und ob die auf GITHub dokumentierten 500 uA im deep sleep wirklich das untere Ende der Fahnenstange sind, oder ob da noch was geht. Als erstes wollte ich schauen, ob man das SIM800-Modul komplett vom Strom trennen kann:

Auf Seite 3 des Schaltplans sieht man unter GPRS das SIM800C-Modul, ich vermute BAT1 und BAT2 ist die Versorgungsspannung, die hängt an DVDD4V. Auf der gleichen Seite rechts unter POWER taucht DVDD4V auch wieder auf, und zwar in Verbindung mit einem SY8089 Step Down Regulator. dafür scheint VSYS die Stromquelle zu sein. VSYS hängt am Strom-Management-Chip AXP192 an diversen Stellen. VIN1, VIN3, IPSOUT1/2.

Der SY8089 scheint ein EN(able) pin zu haben, mit dem man den ein / ausschalten kann?? Der ist mit IO25 des ESP verbunden. So ganz verstehen tue ich es aber nicht, da ja der SYS8089 auch die 3V3 für den ESP generiert? Wenn jetzt der ESP den SYS8089 abschaltet wird damit auch der ESP abgeschaltet und wer weckt dann das ganze System wieder auf? Hmmm … Bin mit den Erkenntnissen oben mehr als unsicher.

1 Like

Ich hab das jetzt auch endlich in die freie Wildbahn gebracht. Sind momentan noch keine Bienen drauf und der funkt auch nur mit WLAN - es ging mir aber auch erstmal darum, ob die Kombo aus Solar & DS3231 so funktioniert. Bis jetzt tut es das und hat auch das Regenwetter der letzten Wochen gut überstanden.
Ich hatte den heute nur nochmal auf, weil da noch eine LED aktiv war.

Mit dem DS3231 macht man sich unabhängig von allen Deepsleep Problemen oder sonstigen Leckströmen und man bekommt noch eine RTC dazu.
Der fliegende Aufbau ist im Grunde auch kein Problem - die ‘Adapterplatine’ könnte aber ein wenig hübscher sein.

Die Daten sind hier:
https://swarm.hiveeyes.org/grafana/d/D6qEhpEWk/do-mm-stock-05?orgId=2&from=now-2d&to=now

Offene Kiste:

Zusammengebaut:

Solarpanel:

Die Ritzen im Panel muss ich noch abdichten, sonst tropft es da durch.
Bei der Konstruktion mit XT60 Stecker & Schrumpfschlauch bin ich mir nicht ganz so sicher. Man wird sehen.

4 Likes

Nur zur Konkretisierung: Du verwendest nicht nur die RTC, sondern auch die Schaltung zur Spannungsabschaltung wie unter post 70 beschrieben und hier gut zu sehen:

2021-06-15 10_52_07-40e89f2ffdabc6fc4cdb69c2013ec53527a0dd2b.jpeg (JPEG-Grafik, 2016 × 1512 Pixel) -

Ja, das ist korrekt. Der DS3231 hat einen Ausgang, der über den Alarm-Trigger geschaltet wird. Dieser Ausgang schaltet die Spannungsversorgung für den ESP & HX711 ab.
Noch besser wäre es natürlich, wenn Nachts die Elektronik für das Solarpanel auch ausgeschaltet würde.