Falls doch Fritzing eine Option ist:
Ich glaube, da wäre ein Optokoppler etwas schicker.
Ich habe eigentlich kein Problem mit dem Zeichnen. Symbole & footprints kann ich mir inzwischen selber machen. Mein Problem liegt mehr im Schaltplandesign - da habe ich nämlich keine Ahnung von.
Ich nehme die Worte von @weef da durchaus ernst. Wenn ich mir jetzt die Mühe mache, dann kann ich es auch gleich richtig machen. Wenn das dadurch länger dauert, dann dauert es halt länger.
Mir geht es momentan darum, welche der drei oben genannten Optionen die sinnvollste für eine Stockwaage ist. Alles weitere folgt dann.
Ok, dann mache ich erst mal mit dem HX711 weiter.
Das Layout ist für die ‘grünen’ HX711. Wenn ich das recht sehe, sind die nicht pinkompatibel mit den ‘roten’?
Neu sind zwei Optokoppler, um die 5V Signale vom ESP32 zu trennen. Lösen die das Problem?
Frage: brauche ich R4&5?
Außerdem habe ich Löcher für einen zusätzliches I2C Element vorgesehen und für alle nichtgenutzten IOs vom ESP.
Alles auch auf Github natürlich.
nein, wieso das denn… raus mit denen.
Die betreffenden Signale haben gemeinsamen Masse-Bezug, ihre Pegel sind sehr ähnlich, - also keine Gründe vorhanden für Optokoppler.
Und gäbe es die, wäre U8 falsch herum; PD_SCK ist ein Eingang am HX711. EIn 4N35 wäre selbst für einen HX711 keine gute Wahl (zu langsam + keine Impulsformung).
Aber PD_SCK muß nicht einmal überhaupt betrachtet werden, denn der max. logic HIGH-Pegel vom ESP32
- ist hinreichend groß, um vom HX als HIGH erkannt zu werden, und
- kann, weil aus der 3,3V -Domäne, nie den maximal erlaubten logic HIGH-Pegel am HX überschreiten.
Bitte die auffindbaren Grundlagen zu voltage level translation, logic level translation , level shifting… nachschauen.
Bei Augen-Zudrücken ginge auch ein Spannungsteiler (aber diffzil wg. u.U. nötigem pull-up an SCK für ordentliches HX-power_down) , plus Hühneraugen-Zudrücken reicht ein Serienwiderstand im dreistelligen Ohmbereich in der Clock-Leitung. Das beides stellt keine Funktionsgarantie dar und ist nur der allermindeste Schutz.
Wäre das ein kommerzielles Projekt von mir, würde ich einen 74LVC1T45 an dieser Stelle vorsehen.
Und schon wieder muß ich mich mit dem HX711 beschäftigen… 8(
Nee, musst Du nicht. Du musst nur sagen: ‘nimm besser den ADS1232’ oder ‘nimm besser den NAU7802’. Hab ich ja oben gefragt. Dann hätte ich gesagt: ‘jawohl’ und den jeweiligen dann nach bestem Wissen da rein gezeichnet. Dann hättest Du mir gesagt, was daran alles quatsch ist und ich hätte es geändert, bis es passt.
Ich kann die Waage konstruieren und bauen, einen Schaltplan zeichnen (so lala) und das ganze programmieren. Ich bin auch bereit, da Arbeit reinzustecken, damit was Vernünftiges rauskommt, das auch andere nutzen können.
Was ich NICHT kann, ist SchaltplanDESIGN. Sollte ja inzwischen offensichtlich sein. Wenn mir da keine hilft, kommt nur Stuss raus.
Also: weiter machen mit dem HX711 - ja/nein?
Wenn ja: den SCK direkt an den ESP & einen 74LVC1T45 für SDA?
Trotz grausigen Designfehlern funktioniert bei mir die grüne (billig)-HX711-Platine am FiPy mit 3.3V seit Juni 2019 einwandfrei. Auch die Messergebnisse der Bosche H40A-Wägezelle sind aktzeptabel genau und mit wenig Temperaturdrift.
Man kann nun ein professionelles Redesign mit einem anderen IC machen um noch bessere Ergebnisse zu erzielen, oder man ist mit dem erreichten zufrieden, so wie ich.
Neue Version ohne Optokoppler und mit einem 74LVC1T45. Die gibt es anscheinend nur als SMD, aber ich denke mal, das ist zu verkraften.
Ich hab dem HX711 auch noch einen Kondensator spendiert. Wie sieht das aus mit den DS18B20? Die sind ja recht weit weg. Ist das dann sinnvoll, auf dem PCB noch einen Kondesator zu haben und wie groß müsste der dann ungefähr sein?
Ansonsten ist das so ok?
Fehlt noch ein Feature, das das Board haben sollte?
Der PullUp R3
kommt zwischen 3.3V und Data geklemmt. Dein jetztiges Setup macht dir einen sinnlosen und recht niederohmigem Strompfad, der deine Batterie schnell leersaugt.
D’oh - danke. Consider it fixed.
Du hast ja oben geschrieben, dass wir keinen Micropython-Code für die anderen beiden haben (so weit ich weiß willst du nicht mit Arduino / C-Code fahren). Das wäre halt auch noch ein Entscheidungskriterium.
Mal unabhängig von der (nicht) vorhandenen Software fände ich den NAU7802 schon sehr interessant, zwei Wägezellen / Stöcke könnte man damit anschließen und mit einem I2C-Expander ggf. auch noch weitere. Die Alternative dazu wäre für mich der ADS1234 (der 4er, nicht der 2er), da er eben 4 Kanäle, sprich Wägezellen / Stöcke unterstützen könnte. Der ist aber mit um die 14 EUR deutlich teurer.
Bei beiden haben wir den deep sleep noch nicht getestet, aber von den Datenblättern schaut das schon gut aus.
Für was ist der C1, C2, C4?
Noch nicht. Könnte man aber schreiben, wenn der Aufwand lohnt (= die Hardware ist so viel toller).
Wenn Adafruit bald ein Board für den NAU7802 rausbringt, gibt es Code für CircuitPython. Da ist der Hub zu Mpy klein. Beim ADS wäre es wohl mehr frikkelei, geht aber auch.
Stützkondensatoren (wie @weef oben beschrieben hat)
Sorry, wenn ich nochmal etwas grundsätzlicher anfange. ;-) Du schreibst oben
Nur mal zum Starten oder ist Batterie / Solar gar keine Option für dich? Daran schließt die nächste Frage an: Warum der TTGO T-Call? Wenn Strom in der Nähe ist, hat man doch meist auch WLAN, ist ja eher so, dass kein Strom da ist aber WLAN verfügbar.
Wenn schon eine Platine, dann bräuchten wir nicht den Stromfresser T-Call zu nehmen, sondern könnten auch einen WiPy verwenden und ein 5 EUR SIM800-Modul dranklöppeln, abschaltbare Stromversorgung wie hier Low Cost GSM/GPRS-(SIM800)-Node - #9 by weef level shifting wie im Datenblatt über voltage divider.
Oder – ganz kühne Idee :-) – ein nacktes ESP32-Modul.
Das hier ist erstmal für 1. Die Beuten stehen im Garten, da ist Strom kein Problem und damit entfällt eine Komplexität, um die man sich erstmal nicht kümmern muss. Das trifft natürlich nicht auf die meisten Imker zu, ein paar gibt es aber bei uns im Verein. Das wären die ‘low hanging fruits’.
Wenn 1. soweit unterwegs ist, kommt 2. dran. Ich hab nämlich auch zwei Völker, die in der Knüste stehen. Da gibts nicht mal Lora, deshalb GSM. Da drück ich mich um das Stromsparproblem, indem ich eine RTC benutze und alles abschalte. Das ist zwar nicht so elegant, aber funktioniert. Vielleicht gibts ja in Zukunft geeignetere Boards - die Bienenvölker werden uns so schnell nicht ausgehen.
Kleines Update + Frage.
Neu hinzugekommen ist ein Schalter, mit dem man die externe Spannungsversorgung abschalten kann. Hilfreich, wenn man mit dem Laptop doch mal direkt an den ESP muss.
Ansonsten habe ich alles nur neu sortiert, damit es besser auf die Platine passt.
Frage:
Der ESP hat eine WLAN-Antenne auf dem Board. Soll ich da drunter die Kupferschicht(-en) wegmachen? (ich vermute mal ‘ja’ und zwar möglichst viel).
Schaltplan:
Und die Ansichten vom Board. Das ist noch nicht fertig. Ich muss mir noch geeignete Federklemmen suchen und mich mit dem Thema BOM & 3D-Symbole beschäftigen.
Vorne:
Hinten:
Bei der Produktbeschreibung unter Lilygo® ttgo t8 v1.1 esp32 4mb psram tf card 3d antenna wifi buletooth module Sale - Banggood.com sold out-arrival notice-arrival notice steht was von “3D-Antenne”, die Dinger, die die aktuellen Arduino Nano 33 z.B. auch haben. Darunter ist bei den Arduino-Boards auch ground fill. allerdings sitzen die nicht mitten auf der Platine, sondern am Rand. Das würde ich auch hier versuchen, die Antenne an den Rand, ist natürlich mit dam USB-Anschluss gegenüber doof.
Normalerweise funken wir ja nicht mit WLAN und lesen gleichzeitig die Wägezelle aus, falls doch weiß ich nicht was die Antenne in direkter Nähe des ADCs mit sehr geringen Strömen macht, social distancing für die zwei?
Dann fehlt der fix für den HX711 noch E- und GND direkt verbinden, siehe Stromversorgung HX711 - #17 by Andreas
Die TP1, TP2, … sind versetzt ganz nett, wenn du Kabel dran löten möchtest, für header pins ist das doof, weil du jeden einzelnen anlöten müsstest, würde ich eher in Reihe mit normalem Rastermass setzen, dann kannst du da auch eine Stifteleiste ranlöten. Falls du die mal benutzt, brauchst du auch immer 3,3V und GND, da würde ich dann auch ein paar (! nicht nur 1x) nach aussen führen, sonst kannst du die pins auch nicht nutzen.
Gleiches (Strom!) für den Anschluss der Waage, wenn du den B-Kanal nutzen willst brauchst du für die Zweite Wägezelle auch shd, E+ und E-, mach doch ein zweites Schraub-/Federklemmenterminal daneben, das eine mit A+/- das andere mit B+/-
U7, U8, U9 finde ich persönlich immer nichtssagend, würde das umbenennen: DS18B20, I2S, was auch immer …
Willst du den BME280 direkt auf der Platine? Soll der nicht Aussenfeuchtigkeit oder Stockfeuchte messen, keine Federklemmen?
Ganz allgemein, ich würde mir jetzt schon Gedanken zum Gehäuse machen, dann kannst du die Größe der Plaine dem case anpassen und auch gleich Löcher reinmachen zum festschrauben. … und die Federklemmen so positionieren, dass sie nicht zu nahme an der Wandung sind.
Den USB hab ich extra so gesetzt, das man da auch im eingebauten Zustand drankommt. Die Nähe zum HX711 ist natürlich suboptimal, aber ich fürchte, einen Tod muss ich da sterben.
Bedankt - den hat’s beim umrangieren rausgehauen. Kommt wieder rein.
Das ist exakt die Absicht. Stiftleisten… hmm. Ja, du hast recht. Die sind einfacher zu handhaben. Und wenn man wirklich will, kann man ja auch daran was anlöten.
Gute Idee mit dem nach außen führen von 3,3V & GND (& 5V).
Für E+, E- & SHD kann man zwei Kabel in eine Klemme stecken. Da hat der HX711 ja auch nur je einen Anschluss.
Kommt noch. Hab ich links unten testweise schon gemacht. Ich mache die Beschriftung, sobald ich alle Bauteile zusammen habe.
Ich hatte das so verstanden, das der die Umgebung misst, also Luftdruck und Temperatur (im Gehäuse). Extern käme dann ein zweiter dran. Ich könnte aber gleich bei dem ‘internen’ die Adresse umstellen, dann braucht man das beim externen nicht mehr machen.
Das Gehäuse liegt hier schon auf dem Tisch. Leicht überdimensioniert, aber das schadet ja nicht.
Danke für die Hinweise!
Man kann nicht nur besser messen mit einer Klemme, sondern auch evtl. die Schaltung auf einem BreadBoard austesten. Dafür braucht man auch die Stromversorgung.
Das ist draussen an der Beute sehr unpraktisch, denn es hängen zwei Kabel an einem Stecker. Besser ist es, jede Waage hat seinen eigenen Stecker.
Ich war noch ein wenig fleissig.
Bitte schaut da noch einmal drüber. Es fehlen noch die Befestigungslöcher (und die Beschriftung an J1 & J5 wie ich gerade sehe - das sind je 3.3V & 5V + GND).
Ist 0805 für SMD ok zum handlöten oder lieber 1206?
Alles liegt natürlich auch hier:
Redesign des Schemas - ich hatte das sehr nahe an der tatsächlichen Verdrahtung gezeichnet, was eigentlich nicht nötig ist.
Vorderseite:
Rückseite:
Und weils so schön ist auch in 3D: