Тёмный

Anleitung für AUTOMATISCHE Pflanzen BEWÄSSERUNG Arduino ESP 8266 (Tutorial DIY selber bauen) + Code! 

TechLife
Подписаться 1,8 тыс.
Просмотров 71 тыс.
50% 1

➤ Hier gehts zu den verwendeten Bauteilen:
DIY für jeden zum Nachbauen inklusive Programmcode.
Hier findet ihr den Code kostenlos zum Download:
drive.google.com/drive/folder...
(Bewaesserung_Display)
Um einen Fehlkauf zu vermeiden, zeige ich euch nachfolgende Produkte die ich verwende. Durch diese Empfehlung werden die Links hiermit als "Werbung" bzw. Anzeige gekennzeichnet.
🪴 Blumentopf selbstbewässernd mit Wasserspeicher: amzn.to/3vGjKvl
Pumpe: amzn.to/3aP5GZJ
ESP: amzn.to/3pJXLBx
Relais: amzn.to/38YvbF6
Sensor: amzn.to/3eCERWW
Display: (nicht notwendig aber schön für Spielerein) amzn.to/2OtK7S7
Batteriefach: amzn.to/3eAiS2M
Platine: amzn.to/2B1xQ4a
Wasserschlauch für die Pumpe (ID=6mm) amzn.to/3ew5BZ1
Leitungen: amzn.to/2OXM0Xr
Ein Lötkolben ohne Temperaturregelung und zu großer Lötspitze kann das Löten deutlich erschweren. Ich empfehle euch daher Lötkolben mit manueller Temperaturregelung und eine sehr dünnen Lötspitze. Nachfolgend zeige ich euch einen geeigneten Lötkolben.
Lötkolben: amzn.to/32VSfCu
Solltet ihr auch den Programmcode benötigen, dann schreibt mir doch einfach unter trmanuel91@gmail.com und lasst mir ein Abo da (ist kostenlos) :). Ich stelle euch den Code kostenlos zur Verfügung weil ich überzeugt bin, dass alle einen Mehrwert davon haben.
Hier könnt ihr mich unterstützen, oder auch nicht ;)
www.paypal.me/allesundnicht
An alle die mich unterstützen VIELEN DANK :) Lasst mich in den Kommentaren wissen, ob alles gepasst hat, oder ob ihr noch Hilfe benötigt.
Ich hoffe ich konnte dir mit dem Video weiterhelfen. Sollte ich etwas vergessen haben, gerne mitteilen. Über Feedbacks, Verbesserungsvorschläge und neue Video-Ideen habe ich stets ein offenes Ohr :).

Наука

Опубликовано:

 

16 мар 2020

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 187   
@techlife84
@techlife84 3 года назад
im Juni kommt ein neues Video :) Abonnieren ist Kostenlos! Vielen Dank an alle bisherigen Spenden. Den Code gibt es weiterhin Kostenlos :) seid gespannt...
@Enginebug
@Enginebug 5 дней назад
Wäre es vielleicht möglich den Code zu dieser Version noch zu bekommen? Ich habe zu spät gesehen, dass es eine neuere Version gibt und habe nun schon dieses Setup, das jedoch nicht mit dem verlinkten und offenbar aktualisierten Code zu funktionieren scheint.
@simongeiger2555
@simongeiger2555 4 года назад
Danke! Das werde ich gleich Nachbauen. Meine Pflanzen freuen sich jetzt schon :)
@peterbahr9566
@peterbahr9566 3 года назад
sehr gut, genau was ich gesucht habe
@Back4Fungame
@Back4Fungame 3 года назад
Danke für die super Anleitung, schade dass du nicht mehr Abonennten hast 💖
@lennard-9044
@lennard-9044 3 года назад
Klasse Video genau so ein Video hatte ich mir gewünscht als ich meinen Suchbegriff eingegeben habe. Chapeau
@techlife84
@techlife84 3 года назад
freut mich, schreib mir wenn du den code brauchst.
@supriserex73
@supriserex73 3 года назад
Mega video dankeschön!👍🏻👍🏻
@techlife84
@techlife84 3 года назад
Gerne ;)
@MrJaynut
@MrJaynut 6 месяцев назад
Tolles Video, gut erklärt, Dankeschön 👍🏾👍🏾
@eXa47
@eXa47 10 месяцев назад
Perfekt für das bevorstehende Gesetz. 😂 Danke 👍🏽
@justart76
@justart76 4 года назад
Danke für das Teilen des Codes, das funktioniert 1A!
@justart76
@justart76 4 года назад
Man könnte noch eine prozentuale Anzeige daraus machen: const int Trocken = 740; const int Nass = 298; int sensorValue = 0; int prozentfeuchte = 0; void FeuchtigkeitinProzent() { sensorValue = analogRead(A0); prozentfeuchte = map(sensorValue, Trocken, Nass, 0, 100); if(prozentfeuchte > 100) { Serial.println("100 %"); } else if(prozentfeuchte 0 && prozentfeuchte < 100) { Serial.print(prozentfeuchte); Serial.println("%"); } } void loop() { (...) display.print(prozentfeuchte); display.println("%"); } Auch bei der Schaltung des Relais könnte man dann mit den Prozentangaben arbeiten. Beispiel: if (prozentfeuchte < 75) { digitalWrite(2,0); // 0 bzw. LOW = AN }
@tmade7127
@tmade7127 4 года назад
@@justart76 Hi, habe deine Code ausprobiert (danke für die Idee!!), aber bei mir funktioniert die Mapping-Funktion nicht, bzw. es zeigt ~ 161% an :( ! Was für ein Board benutzt du? Die Mapping-Funktion habe ich nachgelesen und sie ist syntaktisch richtig!? Die Constanten habe ich natürlich angepasst (350/ 700).
@justart76
@justart76 4 года назад
@@tmade7127 Ich habe ein Wemos D1 dranhängen. Habe gerade noch zwei Systeme aufgesetzt und es funktioniert bei mir tadellos. Alle Verbindungen überprüft? Bei mir wird manchmal so etwas angezeigt, wenn es einen Wackelkontakt gibt. :-)
@tmade7127
@tmade7127 4 года назад
@@justart76 Nochmal danke für deine Hinweise und Idee! Dass der "map" zunächst nicht ging lag bei mir daran, dass du den Map in der "void" setzt und wie ich eben erst verstehe, dafür eine Funktion gebaut hast (schlau!). Anbei mein fertiger Sketch: www.tmade.de/wiki/doku.php?id=arduino:arduino#irrigation_system Nachdem ich jetzt gerade erst deinen Ansatz verstanden habe (und jetzt auch weiß, warum es bei mir zunächst nicht ging), muss ich das nochmal bauen. :)
@mathias6132
@mathias6132 4 года назад
Sowas hab ich schon lang gesucht
@techlife84
@techlife84 3 года назад
da ich viele Anfragen bezüglich der Software und den Bibliotheken bekomme die Frage: Soll ich ein zusätzliches Video machen, wie ich die Bibliotheken etc. installiere?
@gerd7038
@gerd7038 3 года назад
Gerne, für Anfänger genau richtig! Gerne wüsste ich auch, was in der Software zu ändern ist, wenn man das Display weglassen möchte und dafür lieber ein paar LEDs die Feuchtigkeit anzeigen lassen möchte. Natürlich auch, wo/wie die LEDs angeschlossen werden, wäre interessant zu wissen.
@techlife84
@techlife84 3 года назад
Video ist online, ich sammle Vorschläge die öfter kommen und mache dazu zusätzliche Videos, schreibt es gerne im neuen Video in die Kommentare. Grüße
@kevinkaminiorz6805
@kevinkaminiorz6805 3 года назад
Mega gutes Video, wird nachgebaut für mein Hochbeet. Ich hab dir eine E-Mail bezüglich des Code geschickt.
@techlife84
@techlife84 3 года назад
viel Erfolg
@ctrlarduino4247
@ctrlarduino4247 3 года назад
Cool! :)
@renax187
@renax187 4 года назад
Cooles Video! Verdienter Like! :D Ist das Batteriefach notwendig?
@techlife84
@techlife84 4 года назад
Danke fürs Feedback. Ja das Batteriefach brauchst du, da der Mikrokontroller die Pumpenleistung nicht schalten kann. Alternativ kannst du natürlich auch andere externe Stromquellen anschließen (3,3-5V) dann hast du das Thema Batterien nicht. Meine Batterien halten jetzt seit 4 Monaten.
@felixp.8692
@felixp.8692 3 года назад
Sehr angenehm dir zuzuhören
@zanzup2377
@zanzup2377 3 года назад
Hello, ich hatte dir schon eine Mail geschrieben. Sehr coole Sache, abo hab ich schon da gelassen :)
@techlife84
@techlife84 3 года назад
Hi sorry für die verspätete Antwort, code kommt heute Nachmittag. email war im spam filter :(
@miuggthx5317
@miuggthx5317 4 года назад
Super Video. Abo und like da gelassen. Wie wäre es mal mit einer schönen Unterlage, damit die Cam besser fokusiert und damit das Holz nicht so leidet zwecks kratzer etc. ? :) LG ps: Was Pflanzen angeht, müsstest du dich etwas beschäftigen, da sie nicht Gesund aussieht, aber das ist ja nen anderes Thema. ( Belüftung,Erde,Food etc.) . Trotzdem super Video weiter so.
@techlife84
@techlife84 4 года назад
Danke für das Feedback :). In meinem nächsten video Zeige ich die Pflanze wie sie aktuell aussieht. Kein Vergleich mehr :) saftig grün und gut gewachsen, dachte selber nicht, dass ein regelmäßiges Gießen so eine Veränderung hervor ruft :D.
@yusufluable
@yusufluable 2 года назад
Hallo, vielen Dank, sehr hilfsreich. Eine Frage hätte ich denn noch und zwar zum Betrieb muss immer einen Rechner da seien oder wenn Programmcode auf Controller geladen ist, läuft dann allein ohne Rechner .
@techlife84
@techlife84 2 года назад
Programmcode rüber laden, danach kannst du es auch ohne Rechner betreiben, z.B. mit einer Powerbank
@byzgms2171
@byzgms2171 2 года назад
Danke für das Video! Ich wäre auch an dem Programmcode interessiert, habe dir auch schon eine Mail geschrieben. :)
@techlife84
@techlife84 2 года назад
Hab ihn dir geschickt. Viel Spaß damit
@ramon9725
@ramon9725 3 года назад
Super Video! Wie die anderen deiner Videos auch. Ich habe eine Frage bezüglich dem Display, hast den den SDA auf D2 und den SCL auf D1 aufgelegt? Wenn ja wieso, komme leider nicht dahinter sorry. Muss du die Pins dann im Programm auch konfigurieren oder werden Sie dann automatisch vom D1 über die Adresse 0x3C des Displays angesprochen ? Sorry das sind wahrscheinlich dumme Fragen ich fange leider erst an. Schönen Gruß
@techlife84
@techlife84 3 года назад
Hi, danke für dein Feedback. Es gibt keine dummen Fragen, nur dumme Antworten und deine Fragen sind berechtigt ;) Sieh dir mal die GPIO vom ESP 8266 mini -> www.google.com/search?q=esp8266+mini+gpio&sxsrf=ALeKk0016v21hiS1ikeMSxq9WnQmIeOQ4A:1606314492369&tbm=isch&source=iu&ictx=1&fir=HI8V5x7XNyIhnM%252CSnlcq4QotyYk3M%252C_&vet=1&usg=AI4_-kRZOwHAA1krGpFVa2ehVZhpF5UqVg&sa=X&ved=2ahUKEwibxNvl853tAhWKqaQKHYpBDhkQ9QF6BAgCEFM&biw=1920&bih=982&dpr=1#imgrc=HI8V5x7XNyIhnM an. Hier solltest du sehen warum ich D1 und D2 dafür hergenommen habe :) Die Adresse ist in der Bibliothek, welche du einbindest enthalten. Grüße
@ramon9725
@ramon9725 3 года назад
@@techlife84 super vielen Dank jetzt ist es klar. Bei dem Datenblatt von Az Deivery wird es nicht so beschrieben, deswegen kam ich nicht drauf!
@familiespongebob8694
@familiespongebob8694 Год назад
Danke, fand es sehr anschaulich. Bei mir ist immer die Frage wie macht man so ein Projekt am Ende in "schön!"? Danke für dein Video, wenn auch manchmal etwas unscharf :P
@aKa55
@aKa55 Год назад
Könnte mir vorstellen, das man mit einem 3D Drucker hier arbeiten könnte. Damit die Sensoren nicht so blank rumliegen in der Wohnung oder auf der Terrasse.
@pallme100
@pallme100 3 года назад
Cooles Projekt 👍 Ich hätte eine kurze Frage. Wenn dir der uC kaputt geht flutet dir das ganze die Pflanze und danach das Zimmer. Warum gehst du beim Relais nicht auf NO?
@techlife84
@techlife84 3 года назад
Oder wenn die Katze den Schlauch aus dem Topf wirft :P. Ich lade in den nächsten tagen ein neues Video hoch, da ändere ich diese Dinge :) danke für dein Feedback
@hage7950
@hage7950 2 года назад
Tolles Video! Habe ich gerade gefunden, weil ich auch ein Pflanzenbewässerungssystem bauen möchte, allerdings mit4 Feuchtigkeitssensoren und 4 Pumpen. Vielleicht hast Du ja noch mal Zeit dir Gedanken zu machen, was zu programmieren ist, damit ich auf dem Display verschiedene Untermenüs für z.B. Eingabe von 4 Feuchtigkeitswerten (bei deren Unterschreitung die Pumpen für eine gewisse Zeit anfangen zu laufen) mit einem Rotary Encoder (Drehgeber) mit Druckschalter, Pumpenlaufzeiten und Pausendauer eingeben und abspeichern zu können. Vielen Dank !!!
@techlife84
@techlife84 2 года назад
Baue gerade ein Solarbetriebenes kleines Gewächshaus. Anstatt 4 Pumpen zu nehmen, ich würde es eher über Ventile ansteuern.
@kronosgaming4690
@kronosgaming4690 2 года назад
gutes Video, hätte aber da noch eine Frage: Der Mikrocontroller gibt doch eine Spannung von 3.3V an den GPIO-Pins aus(oder doch 5V).Aber das Relais braucht laut Datenblatt 5 V um zu Schalten. Also reichen die 3.3V Ausgangsspannung aus um das Relais zu schalten?
@techlife84
@techlife84 2 года назад
Hi, das Datenblatt zum Relais stimmt nicht. Bei 5V funktioniert es nicht
@nocritt
@nocritt 3 месяца назад
Muss der Microcontroller durchgehend mit dem Programm/dem laptop Verbundensein damit die Funktion gegeben ist? Gäbe es auch eine Möglichkeit das Programm auf dem Controller zu speichern, so dass nur die Batterie und das Wasser gewechselt werden muss?
@sir_dude0594
@sir_dude0594 3 месяца назад
Hast du schonmal drüber nachgedacht eine Leiterplatte dafür zu designen? Über kostenlose Version von Eagle geht das Wunderbar ;)
@theobergli6827
@theobergli6827 Год назад
Wie lange halten die Batterien? Ich habe eine Bewässerung, aber nach 14 Tagen sind die Batterien leer. 14 Tage würden die Pflanzen aber auch so durchhalten. Ich suche nach einer Möglichkeit, die Bewässerung für drei Monate über Batterien laufen zu lassen.
@norbertdunker-ld7lv
@norbertdunker-ld7lv Год назад
Guten Abend, schöne Variante, danke! Wo finde ich den Code?
@dominikbarnhofer5083
@dominikbarnhofer5083 Год назад
Kann man einen D1 mini mit 5v oder 3.3v betreiben?
@nobbeperez9517
@nobbeperez9517 3 года назад
Hey, tolles Projekt das bei mir auch gut funktioniert. Ich hab aber ne Frage bezüglich der PINs. Im Code steht dass der Relais-PIN digitalWrite(2,0) ist. Das Müsste nach meinem Verständnis doch der D2 auf dem Board sein. In Wirklichkeit ist es aber der D4, den du ja auch verlötet hast. Wie kommt das? Ich wollte mir das ganze nämlich noch auf nem Board mit mehr analogen Anschlüssen auf 4 Sensoren und Pumpen erweitern, bin jetzt aber zwecks Programmierung überfragt.
@techlife84
@techlife84 3 года назад
Danke für das Feedback. Deine Frage ist völlig nachvollziehbar. Beim ESP 8266 Mini musst du dir die GPIO anschauen siehe link (escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/) GPIO2 = D4 =DigitalWrite(2,..) völlig verwirrend, aber merk dir beim esp8266 mini für den Code, dass du dir die GPIO Nummer ansiehst. Hoffe ich konnte dir damit weiter helfen. PS am Montag kommt ein neues Video indem ich eine verbesserte Version der Bewässerung zeige, evtl ist das auch für dich interessant. LG :)
@nobbeperez9517
@nobbeperez9517 3 года назад
@@techlife84 Wer hat sich denn sowas wieder ausgedacht? :D Danke für die schnelle Antwort. Ich hab die LoLin NodeMCU Version. Seh grade dass es dort auch so ausschaut. www.theengineeringprojects.com/wp-content/uploads/2018/10/Introduction-to-NodeMCU-V3.png Werd mir deine neue Version auf jeden Fall anschauen. Grüße
@nobbeperez9517
@nobbeperez9517 3 года назад
@@techlife84 wobei mir auffällt dass der Display-Pin digitalWrite(0, 1); pinMode (2, OUTPUT); digitalWrite(2, 1); auch D4 sein müsste aber der normale D2 ist.... :(
@tobiasb9192
@tobiasb9192 28 дней назад
Hey mein Relais Schaltet zuverlässig ohne Last oder mit einer led Aber sobald ich den Motor anklemme spinnt das Relais komplett . Kannst du mir vllt helfen ?
@xXxGoetzxXx
@xXxGoetzxXx 4 года назад
Hi, muss der Chip permanent über usb angeschlossen sein oder kann man ihn auch über Einfache Kabel bestromen?
@techlife84
@techlife84 4 года назад
Du kannst den ESP auch über dein handy Ladegerät oder einer Powerbank anschließen :) Grüße
@schnullertroll4173
@schnullertroll4173 3 года назад
Geil. Wie kann man das regeln, wenn die Erde großflächiger (Tablettgröße) und flacher (2cm) ist, für die Anzucht von Weizengras?
@techlife84
@techlife84 3 года назад
du Könntest probieren den Sensor horizontal anzubringen, damit du die Fläche vom Sensor bedeckst.
@larsmuller8548
@larsmuller8548 3 года назад
Hallo an dem programm cod hätt ich intresse würde gern mal einwenig damit experimentieren
@techlife84
@techlife84 3 года назад
Hi, schreib mir bitte eine email ;)
@kyu5882
@kyu5882 3 года назад
Kannst du mal ein Video zur Erklärung von Ground und alles im Elektrotechnischen Sinne? Wenn ich im Internet suche, dann finde ich immer seitenweise Informationen, jedoch will ich einfach nur so knackig kurz zusammengefasst dargestellt haben. Wenn du das machst, kannst du dann auch Volt, Ampere, Ohm, Watt und so erklären und wie man sich das Vorstellen kann, also Volt ist ja die Spannung, aber was ist Spannung und warum gibt es viel und wenig Spannung und Weiteres. Wenn nicht ist auch gut, jedoch finde ich, dass dadurch viele inkl. mir besser folgen können.
@techlife84
@techlife84 3 года назад
Mach ich 👌 wollte eh bald ein neues Video machen, dann versuche ich das einzubringen
@konstantinhungs9167
@konstantinhungs9167 3 года назад
Hast du ne Ahnung, wie lang man die Leitungen zum Sensor maximal haben sollte? Gibt es ne Möglichkeit das durch isolierte Kabel zu verlängern?
@techlife84
@techlife84 3 года назад
verlängern kannst du die, ich hab leider keine Ahnung was die maximale länge dafür dann ist. Theoretisch könntest du es über die spannungsabfall Formel in Abhängigkeit der Leitungslänge und dem Querschnitt berechnen. Allerdings kommt da nur ein theoretischer Wert raus. Probieren geht über studieren :)
@konstantinhungs9167
@konstantinhungs9167 3 года назад
Hey, vielen Dank für deine Antwort. Ich werde das morgen mal mit deiner angesprochenen Formel durchrechnen. Ich plane eine Technikecke auf einer Seite des Balkons und einen Kabel- und Schlauchkanal um die Brüstung um zu allen Kästen zu gelangen. Wenn der ausgerechnete Wert halbwegs stimmt, dann probiere ich es aus und schreibe dir das Ergebnis :)
@marcoingendahl5782
@marcoingendahl5782 3 года назад
@@konstantinhungs9167 hey erzähl Mal wie es gelaufen ist
@pflanzenhorst
@pflanzenhorst 2 года назад
Kann ich eine Powerbank einfach an die Anschlüsse machen so wie du die Batterie?
@techlife84
@techlife84 2 года назад
Kannst du machen ja.
@its_bexxi
@its_bexxi 11 месяцев назад
Hey wo bekommt man den Code her?
@philokirsch9810
@philokirsch9810 2 года назад
Wenn es nicht so pfuschermäßig aussehen soll, wäre es eigentich cool, das Ganze z.B. direkt in die Pflanze reinzubauen. Vorrausgesetzt, die Pflanze ist groß genug.
@marcelkalmring5630
@marcelkalmring5630 2 года назад
Ist es möglich, den Status auch per IOBroker abzufragen?
@techlife84
@techlife84 2 года назад
Ja
@GoDamian84
@GoDamian84 4 года назад
Hy Cooles Video, wäre es möglich, das Du alle Komponenten verlinkst. ;) Um eine Fehlkauf zu vermeiden! Gruss Damian
@techlife84
@techlife84 4 года назад
Danke für das Feedback. Ich habe die Komponenten die ich verwende in der Videobeschreibung verlinkt.
@peterpetersen1973
@peterpetersen1973 3 года назад
Kann Mann das auch draußen benutzen fürs Beet?
@techlife84
@techlife84 3 года назад
Hi, theoretisch ja, aber du müsstest die Elektronik gegen Feuchtigkeit, Regen etc. schützen.
@cemstn208
@cemstn208 3 года назад
Hi, habe die erweiterte Version leider nicht hinbekommen und werde es später versuchen. Ich bräuchte für dieses Projekt den Code und die Info, ob das Arduino hier noch aktuell ist. Danke dir für alles. Die Spende/Support folgt.
@techlife84
@techlife84 Год назад
Code ist in der Video Beschreibung zum Download verfügbar
@alexjustdoit2255
@alexjustdoit2255 4 года назад
Guten Tag. Bin totaler Neueinsteiger bei Arduino und ich hatte eine kleine mobile Bewässerung im Sinn. Und ich kann nach kurzer Bastelei sagen dass ich mit deinem Code schon erfolgreich war. Danke dafür. Hatte versucht das Display aus dem Code zu entfernen da ich dieses nicht benötige. Leider habe ich dabei wohl etwas zu viel gelöscht..... Wäre super hilfreich für mich wenn Du den vereinfachten Programmcode ohne Display auch noch posten könntest. Die nächsten Schritte die ich im Kopf habe ist ein Sleep Mode um das Ganze auch mit Akkus einige Tage betreiben zu können. Evtl später mal noch solar und mit einem Microcontroller der mehrere analoge Eingänge hat. Aber Schritt für Schritt.😃
@techlife84
@techlife84 4 года назад
schöne Gedankengänge. Werde ich asap machen. Kleiner Tipp, bevor du löscht, kommentier erstmal aus, über //, dann testen und löschen. Werde demnächst 2 neue Videos machen, ebenfalls mit Mikrokontroller, vielleicht ist ja was dabei für dich. Grüße
@alexjustdoit2255
@alexjustdoit2255 4 года назад
Hatte nun schon etwas experimentiert und mittels Easycding.tn ein kleines Programm gebastelt. Zuerst dachte ich dass es gut funktioniert hatte am Ende die deep Sleep Funktion am Ende auf 1 h eingestellt und zuvor 100 mal den Sensor mit 0,5 s de las Zeit auslesen und das Relais entsprechend schalten lassen. Hatte gut funktioniert bis ich das Ganze dann habe länger laufen lassen über den Akku. Nun sind scheinbar 2 Sensoren hinüber..... Einer zeigt nur noch 1024 an der andere 45.... Kann es sein dass es nicht gut ist das Relais und den Sensor über die 3.3 V Ausgänge anzusteuern? Leider hat der Größe Node Mcu ja keine 5 V Ausgänge.... Bei den Akkus habe ich 3 Nimh Akkus mit nehm Step up Modul auf 5 V hochgefahren und die kleine Pumpe habe ich direkt am Bateriepack parallel abgegriffen. Irgendwo muss da de rf Wurm drin sein.... Naja aller Anfang ist schwer. Wenn Du da was in die Richtung hast das mir hilft würde ich mich sehr freuen. Danke und nenschönen Tag
@techlife84
@techlife84 4 года назад
@@alexjustdoit2255 Danke für deine Frage, leider ist es so schwierig für mich deinen Aufbau nachzuvollziehen. Warum hast du nicht den ESP8266 mini aus dem Video verwendet? Laut den Datenblättern (Sensor 5V) darf das keine Ursache sein, da die Bauteile dafür ausgelegt sind. Warum hast du deine Auslesezeit mit 0,5 delay so kurz gewählt? Das hört sich sehr schnell an. Es kann auch sein das er über das zusätzliche Step up Modul dass du verwendest, eine Spannungsspitze abbekommen hat. Meine Anlage läuft jetzt seit gut 3 Monaten ohne Probleme oder Ausfälle. Bei Fragen kannst du dich gerne melden.
@alexjustdoit2255
@alexjustdoit2255 4 года назад
Hallo, die Antwort ist ganz einfach weil ich nur den großen Bruder hier hatte. Der mini ist jetzt aber bestellt. Ersatzweise habe ich jetzt mit einem nano experimentiert. Das funktioniert jetzt mit 2 akku Packs eine für den nano und eine für die Pumpe schon wunderbar. Nur der Stromsoarmodus ist beim nano nicht sehr gut. Das sollte dann mit dem mini noch besser gehen. Momentan reicht die Akkulaufzeit circa 4 Tage mit 3 Nimh Akkus. Verbesserungen folgen. Hab auch die Grenzen im Code noch so gesetzt dass er bei zu hohen oder niedrigen Werten generell aus ist um bei einem Sensordefekt zu verhindern dass ich alles flute. Danke nochmals für die Inspiration.
@techlife84
@techlife84 4 года назад
@@alexjustdoit2255 Hört sich sehr gut an. Ich tracke aktuell die Daten (Feuchtigkeit, Temperatur, Pumpe an) um zu sehen ob und wie sie korrelieren. Dazu kommt ein neues Video.
@AspireProCrackslable
@AspireProCrackslable 4 года назад
Hei cooles Video ! Wiso arbeitest du nicht mit einem arduino mini ?
@techlife84
@techlife84 4 года назад
Danke dir :). Weil der kein WIFI Modul hat und ich das ganz gerne nutze.
@lukask8383
@lukask8383 4 года назад
Hey, Top Video, habe genau so etwas gesucht. Könntest du mir den Code zukommen lassen ?
@GoDamian84
@GoDamian84 4 года назад
👍
@joachimhubschke7758
@joachimhubschke7758 Год назад
Hallo zusammen, Ich hatte mir ein Set über Amazon bestellt, der Aufbau und das programmieren gingen ebenfalls sehr einfach. Allerdings hatte ich Probleme mit den Pumpen die nach kurzer Zeit defekt waren! Hat jemand ähnliche Erfahrungen und vll einen Tipp? Mfg Joachim
@techlife84
@techlife84 Год назад
meine laufen immer noch
@bboyspaida
@bboyspaida 2 года назад
Kann man auch ne 24v pumpe anschliesen?
@techlife84
@techlife84 2 года назад
ja, dafür brauchst du dann aber eine 24V Spannungsquelle für die Pumpe (anstatt dem Batteriefach)
@bedasepo9084
@bedasepo9084 3 года назад
Welches Komponenten werden benötigt um 2 weiter Sensoren und 2 weitere Pumpen zu betreiben?
@techlife84
@techlife84 3 года назад
Kommt ganz darauf an wie du was schalten möchtest. Da gibt es keine eindeutige Aussage. Was magst du machen? Lg
@bedasepo9084
@bedasepo9084 3 года назад
@@techlife84 gleicher Aufbau nur mit 2 weiteren Sensoren und 2 weiteren Pumpen:) Grüße
@techlife84
@techlife84 3 года назад
@@bedasepo9084 sollen die Pumpen gleichzeitig laufen, oder willst du die unabhängig voneinander betreiben
@bedasepo9084
@bedasepo9084 3 года назад
@@techlife84 Die Pumpen sollten unabhängig voneinander laufen also je nach Feuchtigkeitsbedarf des Sensors
@techlife84
@techlife84 3 года назад
@@bedasepo9084 dann brauchst du jeweils einen Sensor, ein Relais, die Stromzufuhr brauchst du nur einmal.
@charlysstore
@charlysstore 4 года назад
auch ich danke für das Teilen des Codes , der funktioniert auf meinem UNO R3 ATMega328P CH340 16MHz Entwicklungsboard prima zusammen mit dem von Dir verlinkten I2C Display 128 x 64 Pixel 0,96 Zoll Display. Leider nicht mit dem Mini NodeMcu mit ESP8266-12F WLAN Modul. Hab das selbe thema wie HaGe Vau, im display halbes Glas und wilde pixel. Anfängergrübeln...
@techlife84
@techlife84 4 года назад
Danke für das Feedback und viel spaß damit. Bezüglich dem Mini Node bin ich überfragt warum es bei manchen geht und bei manchen wiederum nicht. Anfang August habe ich etwas mehr Zeit, dann werde ich mich der Sache annehmen :)
@tmade7127
@tmade7127 4 года назад
Bei mir habe ich das selbe Verhalten...ein halbes leeres Rechteck und Pixel wild zerstreut. Außerdem bootet das Board nur, wenn ich den Datenbus vom Display erst anstecke, wenn das Board gebootet hat (sonst bootet es nicht mehr und ich habe schon 3 Displays getestet). :(
@techlife84
@techlife84 4 года назад
@@tmade7127 ich habe das Problem bei euch zwei gefunden. Anscheinend sind nicht alle displays baugleich, obwohl Sie so aussehen! Ich müsste von euch wissen was auf der Rückseite des displays steht. Es muss eine Änderung in der Bibliothek vorgenommen werden, da die i2c Adresse für die Ansteuerung bei den Minis nicht immer stimmt. Deswegen funktioniert es bei mir und bei manchen nicht.
@techlife84
@techlife84 4 года назад
Das Problem lässt sich aber beheben :)
@techlife84
@techlife84 4 года назад
@@tmade7127 probiert mal diese Anleitung aus: Da beschreibt er das Problem, welches nicht immer vorhanden ist. randomnerdtutorials.com/esp8266-0-96-inch-oled-display-with-arduino-ide/ You should change the OLED address in the following line, if necessary. In our case, the address is 0x3C. if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
@cemdeniz1346
@cemdeniz1346 3 года назад
Danke fürs Video.. Darf ich den Code haben?
@techlife84
@techlife84 3 года назад
Gerne, für den Code schicke mir doch eine Email an die Adresse die in der Videobeschreibung angegeben ist. Lg :)
@Kingofbuddy
@Kingofbuddy 2 года назад
Hey ich finde deine Arbeit mega toll möchte es gerne nach machen brauche nur den Code hab dir eine Mail geschrieben aber es gab eine Fehler Meldung das man dir nicht schreiben kann
@techlife84
@techlife84 2 года назад
Hi, danke für das Feedback. Ich bekomme am Tag 1-3 emails zum Code, die E-Mail-Adresse sollte also funktionieren :)
@Shiro-bj2fc
@Shiro-bj2fc Год назад
Hallo TechLife, wir haben diese Idee als Schulprojekt gewählt und haben schwierigkeiten die verlinkten Komponenten zu kaufen. Wir sind leider keine Stromer und darum auch nicht das Ideale Fachwissen, falls du uns eine kompatible Wasserpumpe empfehlen könntest, wäre das ideal.
@techlife84
@techlife84 Год назад
Ein kompatible ist doch verlinkt :)
@smerotist9491
@smerotist9491 3 месяца назад
Alles Ok, aber was für eine Üble Musik im Hintergrund?
@kevinschulze9637
@kevinschulze9637 3 года назад
Bei mir schaltet das Relais nicht um. Hast du da vllt einen Tipp?
@techlife84
@techlife84 3 года назад
Richtige Kontakte angeschlossen? Eigentlich hilft nur Messen. Wenn es Laut ESP schaltet, dann müsstest du am Ausgang gegen GND eine Spannung messen, wenn das der Fall ist, dann stimmt was am Relay nicht. Solltest du dann keine Spannung am Ausgang messen, dann liegt es wahrscheinlich an deiner Deklaration im Programm. Grüße
@kevinschulze9637
@kevinschulze9637 3 года назад
Multimeter ist bestellt. Ich schaue mal, was bei rum kommt und melde mich dann nochmal. Danke!
@kevinschulze9637
@kevinschulze9637 3 года назад
Wenn ich den output messe habe ich 3.32 v wenn der abnehmer dran ist sind es 0.6v. Da muss ich mich noch ein bisschen auseinander setzen.
@jsjhsdjsjdhdb9193
@jsjhsdjsjdhdb9193 3 года назад
Hey, cooles Video. Kannst du bitte noch den kompletten Code zeigen, brauch den wirklich dringend
@techlife84
@techlife84 3 года назад
schreib mir am besten ne mail, dann sende ich dir den code zu
@jsjhsdjsjdhdb9193
@jsjhsdjsjdhdb9193 3 года назад
Was ist deine Mail?
@heikopetersen2706
@heikopetersen2706 3 года назад
Jetzt versuche ich es nochmal hierüber, den Code zu bekommen. Bitte, bitte schick mir doch den Code. Leider hast du bislang nicht auf meine Mails geantwortet.
@techlife84
@techlife84 3 года назад
Hi, sorry das du noch keinen Code erhalten hast. Habe gesehen das deine Mail im Spam Ordner gelandet ist. Tut mir sehr leid. Die Mail geht morgen Vormittag raus, da ich heute unterwegs bin. Liebe Grüße und viel Spaß damit 👨‍💻
@heikopetersen2706
@heikopetersen2706 3 года назад
Alles & nichts Ha, da bin ich aber froh! Vielen Dank für die Antwort, ich freu mich schon drauf!
@timoto5072
@timoto5072 2 года назад
Hi, ist der code noch zu haben?
@techlife84
@techlife84 2 года назад
Klar, schreib mir ne mail
@rohrdesignerCS
@rohrdesignerCS 3 года назад
am besten funktioniert das ganze mit nem Platienenhalter !LOL
@mikestamatis3679
@mikestamatis3679 2 года назад
Hast du nicht mal Lust Links zu posten unter denen man die Sachen bestellen kann?
@techlife84
@techlife84 2 года назад
Sind alle in der Videobeschreibung verlinkt. LG
@tschauleude3426
@tschauleude3426 Год назад
Sehr schönes Projekt, leider zum Teil fast nicht zu ersehen wo welche Kabel zu verlöten sind. zb: "dann dieser d4 hier" aber 6 Sätze über deine schlechte Lötarbeit und dass du das wort eigentlich nicht magst. Ein "Schaltplan" wäre mehr als hilfreich! Ein Schaltplan würde wirklich viel zeit sparen und zum Verständnis beitragen!
@madnessfire9081
@madnessfire9081 4 года назад
Genau was ich gesucht habe - schickst mir den Code pls - ansonsten ggf auf Github laden :) - vielen Dank vorab
@techlife84
@techlife84 4 года назад
Danke für das Feedback, der code ist bereits hier im Kommentar von mir angeheftet. Grüße
@madnessfire9081
@madnessfire9081 4 года назад
@@techlife84 Bitte entschuldige meine Frage, aber ich bin krankheitsbedingt nicht auf der Höhe - habe alle Kommentare durchgelesen, finde ihn aber leider nicht
@techlife84
@techlife84 4 года назад
@@madnessfire9081 Viel Spaß /* VCC = 5 Volt cap sens VCC = 3,3 Volt Relais -------------------------------------------------------------*/ #include #include #include #include Adafruit_SSD1306 display(-1); /* const unsigned char Smiley_lachen [] PROGMEM = { }; const unsigned char Smiley_middle [] PROGMEM = { }; const unsigned char Smiley_traurig [] PROGMEM = { };*/ /*const int waterValue= 400; const int moistValue= 600; const int dryValue = 850; const int pumpON = 660;*/ int val = 1; void setup() { // put your setup code here, to run once: Serial.begin(9600); digitalWrite(0, 1); pinMode (2, OUTPUT); digitalWrite(2, 1); // initialize with the I2C addr 0x3C display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // Clear the buffer. display.clearDisplay(); //display.invertDisplay(1); // symbol_leer display.drawRoundRect(0, 14, 30, 50, 5, WHITE); display.display(); delay(2000); // symbol_viertelbvoll display.fillRoundRect(0, 14, 30, 12.5, 2, WHITE); display.display(); delay(2000); // symbol_halbvoll display.fillRoundRect(0, 14, 30, 25, 2, WHITE); display.display(); delay(2000); // symbol_dreiviertelvoll display.fillRoundRect(0, 14, 30, 38, 2, WHITE); display.display(); delay(2000); // symbol_voll display.fillRoundRect(0, 14, 30, 50, 2, WHITE); display.display(); delay(2000); } void loop() { // put your main code here, to run repeatedly: display.clearDisplay(); int sensorValue=analogRead(A0); Serial.println(sensorValue); delay(200); //display.println(sensorValue); if (sensorValue > 570) { //val=!val; display.drawRoundRect(0, 14, 30, 50, 5, WHITE); display.display(); digitalWrite(2,0); // 0 bzw. LOW = AN } else if ((sensorValue < 550) && (sensorValue > 500)) { display.fillRoundRect(0, 14, 30, 12.5, 2, WHITE); display.display(); } else if ((sensorValue < 500) && (sensorValue > 450)) { display.fillRoundRect(0, 14, 30, 38, 2, WHITE); display.display(); } else if (sensorValue < 450) { display.fillRoundRect(0, 14, 30, 50, 2, WHITE); display.display(); digitalWrite(2,1); } display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(50,20); display.println(sensorValue); display.display(); delay(200); }
@techlife84
@techlife84 4 года назад
@@madnessfire9081 In meiner Antwort unter deinem Kommentar habe ich den code soeben eingefügt. Viel spaß damit
@rolex8433
@rolex8433 4 года назад
void setup() { // put your setup code here, to run once: Serial.begin(9600); digitalWrite(0,1); //Output Pin wird als output definiert pinMode (2, OUTPUT); //Relais wird ausgeschaltet digitalWrite(2,HIGH); } void loop() { int sensorValue = analogRead(A0); Serial.println(sensorValue); delay(200); //Relais wird eingeschaltet wenn der Sensor einen Wert über 600 ausgiebt if (sensorValue > 600) { //Relais einschalten digitalWrite(2,LOW); Serial.println("Pumpe An"); } //Relais wird ausgeschaltet wenn der Sensor einen Wert unter 600 ausgiebt else if (sensorValue < 600) { //Relais ausschalten digitalWrite(2,HIGH); Serial.println("Pumpe Aus"); } } Das ist mein Code für alle für alle die die Bewässerungsanlage ohne Display betreiben wollen. Als Tipp noch schaltet eine Diode zwischen Relais und Arduino ohne hat es bei mir nicht funktioniert.
@techlife84
@techlife84 4 года назад
Welche Spannung hast du für das Relays hergenommen? Ich verwende keine Diode und es funktioniert seit dem Video Upload.
@rolex8433
@rolex8433 4 года назад
Ich habe das Relais an die 5v Spannung des Arduinos angeschlossen. Bei mir war das Relais entweder an oder aus. Habe dann mal online gesucht und jemand mit dem gleichen Problem gefunden. Der meinte eine Diode würde helfen. Habe es ausprobiert und seit dem funktioniert alles wunder bar.
@techlife84
@techlife84 4 года назад
@@rolex8433 Wenn du das Relais an 3,3V anschließt funktioniert es ohne Diode :). aber danke für den Tipp :) Grüße
@cemstn208
@cemstn208 3 года назад
@@techlife84 entschuldige, aber ich habs leider immernochnicht gebacken bekommen. Daher tauche ich hier wieder auf. Ich habe Dankend den Code ohne Display (mein Versuch mit Display) hat nicht geklappt. (Portproblem beim ESP8266.) Mit dem Arduino uno funktuoniert die Verbindung. Problem... Ich bekomme das Relais nicht auf grün geschaltet. Grün blinkt immer nur, wenn ich das In vom Relais in die Arduino Buchse D1 stecke. Mehr nicht. Wie kann ich das Problem lösen? Grüße
@Simon30xxx
@Simon30xxx 4 года назад
Danke für diese tolle Idee, doch auch wenn du schreibst, das du den Code in einem Kommentar hinterlassen hast, habe ich wohl Klappen vor den Augen, ich finde ihn leider nicht...wärest du wohl so Gütig? :)
@techlife84
@techlife84 4 года назад
Gerne, beim nächsten mal kennzeichne ich es in der Videobeschreibung. Siehe nachfolgend. Viel Spaß /* VCC = 5 Volt cap sens VCC = 3,3 Volt Relais -------------------------------------------------------------*/ #include #include #include #include Adafruit_SSD1306 display(-1); /* const unsigned char Smiley_lachen [] PROGMEM = { }; const unsigned char Smiley_middle [] PROGMEM = { }; const unsigned char Smiley_traurig [] PROGMEM = { };*/ /*const int waterValue= 400; const int moistValue= 600; const int dryValue = 850; const int pumpON = 660;*/ int val = 1; void setup() { // put your setup code here, to run once: Serial.begin(9600); digitalWrite(0, 1); pinMode (2, OUTPUT); digitalWrite(2, 1); // initialize with the I2C addr 0x3C display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // Clear the buffer. display.clearDisplay(); //display.invertDisplay(1); // symbol_leer display.drawRoundRect(0, 14, 30, 50, 5, WHITE); display.display(); delay(2000); // symbol_viertelbvoll display.fillRoundRect(0, 14, 30, 12.5, 2, WHITE); display.display(); delay(2000); // symbol_halbvoll display.fillRoundRect(0, 14, 30, 25, 2, WHITE); display.display(); delay(2000); // symbol_dreiviertelvoll display.fillRoundRect(0, 14, 30, 38, 2, WHITE); display.display(); delay(2000); // symbol_voll display.fillRoundRect(0, 14, 30, 50, 2, WHITE); display.display(); delay(2000); } void loop() { // put your main code here, to run repeatedly: display.clearDisplay(); int sensorValue=analogRead(A0); Serial.println(sensorValue); delay(200); //display.println(sensorValue); if (sensorValue > 570) { //val=!val; display.drawRoundRect(0, 14, 30, 50, 5, WHITE); display.display(); digitalWrite(2,0); // 0 bzw. LOW = AN } else if ((sensorValue < 550) && (sensorValue > 500)) { display.fillRoundRect(0, 14, 30, 12.5, 2, WHITE); display.display(); } else if ((sensorValue < 500) && (sensorValue > 450)) { display.fillRoundRect(0, 14, 30, 38, 2, WHITE); display.display(); } else if (sensorValue < 450) { display.fillRoundRect(0, 14, 30, 50, 2, WHITE); display.display(); digitalWrite(2,1); } display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(50,20); display.println(sensorValue); display.display(); delay(200); }
@Simon30xxx
@Simon30xxx 4 года назад
@@techlife84 Schade, ich hab soweit ich das sehen kann alles so kopiert, doch der ESP macht immer wieder einen Soft WDT Reset. Das 128 x 64 Display zeigt ein halbes "Glas" (nicht so ein großes Glas wie bei dir) leer an und die restlichen Pixel sind auf dem kleinen Bildschirm verteilt ..Ich dachte ich könnte eben schnell so ein Teil Bauen und unsere Erdbeeren damit versorgen, weil wir heute abend eine Woche ausser Haus sind...:o(
@Simon30xxx
@Simon30xxx 4 года назад
@@techlife84 /* VCC = 5 Volt cap sens VCC = 3,3 Volt Relais -------------------------------------------------------------*/ #include #include #include #include Adafruit_SSD1306 display(-1); /* const unsigned char Smiley_lachen [] PROGMEM = { }; const unsigned char Smiley_middle [] PROGMEM = { }; const unsigned char Smiley_traurig [] PROGMEM = { };*/ /*const int waterValue= 400; const int moistValue= 600; const int dryValue = 850; const int pumpON = 660;*/ int val = 1; void setup() { // put your setup code here, to run once: Serial.begin(9600); digitalWrite(0, 1); pinMode (2, OUTPUT); digitalWrite(2, 1); // initialize with the I2C addr 0x3C display.begin(SSD1306_SWITCHCAPVCC, 0x3C); //display.begin(SSD1306_SWITCHCAPVCC, 0x3D); // Clear the buffer. display.clearDisplay(); //display.invertDisplay(1); // symbol_leer display.drawRoundRect(0, 14, 30, 50, 5, WHITE); display.display(); delay(2000); // symbol_viertelbvoll display.fillRoundRect(0, 14, 30, 12.5, 2, WHITE); display.display(); delay(2000); // symbol_halbvoll display.fillRoundRect(0, 14, 30, 25, 2, WHITE); display.display(); delay(2000); // symbol_dreiviertelvoll display.fillRoundRect(0, 14, 30, 38, 2, WHITE); display.display(); delay(2000); // symbol_voll display.fillRoundRect(0, 14, 30, 50, 2, WHITE); display.display(); delay(2000); } void loop() { // put your main code here, to run repeatedly: display.clearDisplay(); int sensorValue=analogRead(A0); Serial.println(sensorValue); delay(200); //display.println(sensorValue); if (sensorValue > 570) { //val=!val; display.drawRoundRect(0, 14, 30, 50, 5, WHITE); display.display(); digitalWrite(2,0); // 0 bzw. LOW = AN } else if ((sensorValue < 550) && (sensorValue > 500)) { display.fillRoundRect(0, 14, 30, 12.5, 2, WHITE); display.display(); } else if ((sensorValue < 500) && (sensorValue > 450)) { display.fillRoundRect(0, 14, 30, 38, 2, WHITE); display.display(); } else if (sensorValue < 450) { display.fillRoundRect(0, 14, 30, 50, 2, WHITE); display.display(); digitalWrite(2,1); } display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(50,20); display.println(sensorValue); display.display(); delay(200); }
@techlife84
@techlife84 4 года назад
@@Simon30xxx Hi danke für deine Nachricht. Ich habe den Code gerade copy paste bei mir hochgeladen und es funktioniert. Da es auch bei den anderen Kommentaren funktioniert, weiß ich leider nicht wo der Fehler bei dir liegt. Das dir die Anzeige kleiner angezeigt wird liegt an in deiner libaries. Da gibt es einen Ordner der heißt Adafruit_SSD1306, darin ist eine datei die heißt Adafruit_SSD1306.h. Die Datei im Texteditor öffnen und Comment out #define SSD1306_128_32 and uncomment #define SSD1306_128_64. Dann müsste deine Anzeige den Balken richtig anzeigen. Ich hoffe ich konnte dir damit weiterhelfen, leider ist es sehr schwierig das nur über die Kommentarfunktion zu erklären. Ansonsten gerne Fragen wenn du nicht weiter kommst. Schöne erholsame Woche.
@techlife84
@techlife84 4 года назад
Solltest du die Stelle in der Datei Adafruit_SSD1306.h nicht finden, dann kopier einfach meinen in deine Datei: /*! * @file Adafruit_SSD1306.h * * This is part of for Adafruit's SSD1306 library for monochrome * OLED displays: www.adafruit.com/category/63_98 * * These displays use I2C or SPI to communicate. I2C requires 2 pins * (SCL+SDA) and optionally a RESET pin. SPI requires 4 pins (MOSI, SCK, * select, data/command) and optionally a reset pin. Hardware SPI or * 'bitbang' software SPI are both supported. * * Adafruit invests time and resources providing this open source code, * please support Adafruit and open-source hardware by purchasing * products from Adafruit! * * Written by Limor Fried/Ladyada for Adafruit Industries, with * contributions from the open source community. * * BSD license, all text above, and the splash screen header file, * must be included in any redistribution. * */ #ifndef _Adafruit_SSD1306_H_ #define _Adafruit_SSD1306_H_ // ONE of the following three lines must be #defined: #define SSD1306_128_64 ///< DEPRECTAED: old way to specify 128x64 screen //#define SSD1306_128_32 ///< DEPRECATED: old way to specify 128x32 screen //#define SSD1306_96_16 ///< DEPRECATED: old way to specify 96x16 screen // This establishes the screen dimensions in old Adafruit_SSD1306 sketches // (NEW CODE SHOULD IGNORE THIS, USE THE CONSTRUCTORS THAT ACCEPT WIDTH // AND HEIGHT ARGUMENTS). #if defined(ARDUINO_STM32_FEATHER) typedef class HardwareSPI SPIClass; #endif #include #include #include #if defined(__AVR__) typedef volatile uint8_t PortReg; typedef uint8_t PortMask; #define HAVE_PORTREG #elif defined(__SAM3X8E__) typedef volatile RwReg PortReg; typedef uint32_t PortMask; #define HAVE_PORTREG #elif (defined(__arm__) || defined(ARDUINO_FEATHER52)) && !defined(ARDUINO_ARCH_MBED) typedef volatile uint32_t PortReg; typedef uint32_t PortMask; #define HAVE_PORTREG #endif /// The following "raw" color names are kept for backwards client compatability /// They can be disabled by predefining this macro before including the Adafruit header /// client code will then need to be modified to use the scoped enum values directly #ifndef NO_ADAFRUIT_SSD1306_COLOR_COMPATIBILITY #define BLACK SSD1306_BLACK ///< Draw 'off' pixels #define WHITE SSD1306_WHITE ///< Draw 'on' pixels #define INVERSE SSD1306_INVERSE ///< Invert pixels #endif /// fit into the SSD1306_ naming scheme #define SSD1306_BLACK 0 ///< Draw 'off' pixels #define SSD1306_WHITE 1 ///< Draw 'on' pixels #define SSD1306_INVERSE 2 ///< Invert pixels #define SSD1306_MEMORYMODE 0x20 ///< See datasheet #define SSD1306_COLUMNADDR 0x21 ///< See datasheet #define SSD1306_PAGEADDR 0x22 ///< See datasheet #define SSD1306_SETCONTRAST 0x81 ///< See datasheet #define SSD1306_CHARGEPUMP 0x8D ///< See datasheet #define SSD1306_SEGREMAP 0xA0 ///< See datasheet #define SSD1306_DISPLAYALLON_RESUME 0xA4 ///< See datasheet #define SSD1306_DISPLAYALLON 0xA5 ///< Not currently used #define SSD1306_NORMALDISPLAY 0xA6 ///< See datasheet #define SSD1306_INVERTDISPLAY 0xA7 ///< See datasheet #define SSD1306_SETMULTIPLEX 0xA8 ///< See datasheet #define SSD1306_DISPLAYOFF 0xAE ///< See datasheet #define SSD1306_DISPLAYON 0xAF ///< See datasheet #define SSD1306_COMSCANINC 0xC0 ///< Not currently used #define SSD1306_COMSCANDEC 0xC8 ///< See datasheet #define SSD1306_SETDISPLAYOFFSET 0xD3 ///< See datasheet #define SSD1306_SETDISPLAYCLOCKDIV 0xD5 ///< See datasheet #define SSD1306_SETPRECHARGE 0xD9 ///< See datasheet #define SSD1306_SETCOMPINS 0xDA ///< See datasheet #define SSD1306_SETVCOMDETECT 0xDB ///< See datasheet #define SSD1306_SETLOWCOLUMN 0x00 ///< Not currently used #define SSD1306_SETHIGHCOLUMN 0x10 ///< Not currently used #define SSD1306_SETSTARTLINE 0x40 ///< See datasheet #define SSD1306_EXTERNALVCC 0x01 ///< External display voltage source #define SSD1306_SWITCHCAPVCC 0x02 ///< Gen. display voltage from 3.3V #define SSD1306_RIGHT_HORIZONTAL_SCROLL 0x26 ///< Init rt scroll #define SSD1306_LEFT_HORIZONTAL_SCROLL 0x27 ///< Init left scroll #define SSD1306_VERTICAL_AND_RIGHT_HORIZONTAL_SCROLL 0x29 ///< Init diag scroll #define SSD1306_VERTICAL_AND_LEFT_HORIZONTAL_SCROLL 0x2A ///< Init diag scroll #define SSD1306_DEACTIVATE_SCROLL 0x2E ///< Stop scroll #define SSD1306_ACTIVATE_SCROLL 0x2F ///< Start scroll #define SSD1306_SET_VERTICAL_SCROLL_AREA 0xA3 ///< Set scroll range // Deprecated size stuff for backwards compatibility with old sketches #if defined SSD1306_128_64 #define SSD1306_LCDWIDTH 128 ///< DEPRECATED: width w/SSD1306_128_64 defined #define SSD1306_LCDHEIGHT 64 ///< DEPRECATED: height w/SSD1306_128_64 defined #endif #if defined SSD1306_128_32 #define SSD1306_LCDWIDTH 128 ///< DEPRECATED: width w/SSD1306_128_32 defined #define SSD1306_LCDHEIGHT 32 ///< DEPRECATED: height w/SSD1306_128_32 defined #endif #if defined SSD1306_96_16 #define SSD1306_LCDWIDTH 96 ///< DEPRECATED: width w/SSD1306_96_16 defined #define SSD1306_LCDHEIGHT 16 ///< DEPRECATED: height w/SSD1306_96_16 defined #endif /*! @brief Class that stores state and functions for interacting with SSD1306 OLED displays. */ class Adafruit_SSD1306 : public Adafruit_GFX { public: // NEW CONSTRUCTORS -- recommended for new projects Adafruit_SSD1306(uint8_t w, uint8_t h, TwoWire *twi=&Wire, int8_t rst_pin=-1, uint32_t clkDuring=400000UL, uint32_t clkAfter=100000UL); Adafruit_SSD1306(uint8_t w, uint8_t h, int8_t mosi_pin, int8_t sclk_pin, int8_t dc_pin, int8_t rst_pin, int8_t cs_pin); Adafruit_SSD1306(uint8_t w, uint8_t h, SPIClass *spi, int8_t dc_pin, int8_t rst_pin, int8_t cs_pin, uint32_t bitrate=8000000UL); // DEPRECATED CONSTRUCTORS - for back compatibility, avoid in new projects Adafruit_SSD1306(int8_t mosi_pin, int8_t sclk_pin, int8_t dc_pin, int8_t rst_pin, int8_t cs_pin); Adafruit_SSD1306(int8_t dc_pin, int8_t rst_pin, int8_t cs_pin); Adafruit_SSD1306(int8_t rst_pin = -1); ~Adafruit_SSD1306(void); boolean begin(uint8_t switchvcc=SSD1306_SWITCHCAPVCC, uint8_t i2caddr=0, boolean reset=true, boolean periphBegin=true); void display(void); void clearDisplay(void); void invertDisplay(boolean i); void dim(boolean dim); void drawPixel(int16_t x, int16_t y, uint16_t color); virtual void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); virtual void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); void startscrollright(uint8_t start, uint8_t stop); void startscrollleft(uint8_t start, uint8_t stop); void startscrolldiagright(uint8_t start, uint8_t stop); void startscrolldiagleft(uint8_t start, uint8_t stop); void stopscroll(void); void ssd1306_command(uint8_t c); boolean getPixel(int16_t x, int16_t y); uint8_t *getBuffer(void); private: inline void SPIwrite(uint8_t d) __attribute__((always_inline)); void drawFastHLineInternal(int16_t x, int16_t y, int16_t w, uint16_t color); void drawFastVLineInternal(int16_t x, int16_t y, int16_t h, uint16_t color); void ssd1306_command1(uint8_t c); void ssd1306_commandList(const uint8_t *c, uint8_t n); SPIClass *spi; TwoWire *wire; uint8_t *buffer; int8_t i2caddr, vccstate, page_end; int8_t mosiPin , clkPin , dcPin , csPin, rstPin; #ifdef HAVE_PORTREG PortReg *mosiPort , *clkPort , *dcPort , *csPort; PortMask mosiPinMask, clkPinMask, dcPinMask, csPinMask; #endif #if defined(SPI_HAS_TRANSACTION) SPISettings spiSettings; #endif #if ARDUINO >= 157 uint32_t wireClk; // Wire speed for SSD1306 transfers uint32_t restoreClk; // Wire speed following SSD1306 transfers #endif }; #endif // _Adafruit_SSD1306_H_
@enricoherfurth8974
@enricoherfurth8974 3 года назад
Hallo, ich habe dir eine email zu Programmcode geschrieben. Kann du mir bitte ein mal den Programmcode schicken.
@techlife84
@techlife84 3 года назад
Hi sorry für die verspätete Antwort, code kommt heute Nachmittag. email war im spam filter :(
@himbeerkuchen
@himbeerkuchen 3 года назад
Danke
@gerd7038
@gerd7038 3 года назад
Hallo, da der ESP 8266 wohl WLAN fähig sein soll, wünschte ich mir eine Hardware/Software Erweiterung. Ich würde gerne zusätzlich ein Magnetventil, für die Balkonpflanzen-Bewässerung schalten wollen, um dem Kabelsalat vom Balkon zur Küche, wo das Magnetventil sitzt, zu vermeiden. Wenn zusätzlich zu umständlich ist, dann einfach ein zweites Gerät für den Balkon. Es soll aber nicht manuell per Handy ein Schaltbefehl bekommen, sondern automatisch das Bewässerungsfühler-Signal nutzen, um das Ventil zu öffnen, oder schließen zu lassen! Geht da was? Hier gibt es eventuell einen Arduino Lösungsansatz...howtomechatronics.com/tutorials/arduino/arduino-wireless-communication-nrf24l01-tutorial/
@tobiashegemann1811
@tobiashegemann1811 2 года назад
ESP-Now und MQTT Sollten für die Kommunikation zwische ESPs am besten Sein. Die Tasmota Firmware oder Der IO Broker sollten die Einfachsten zum Inplementieren Sein , da man sie Mit Einfachen Wenn,dann Regeln Programmieren Kann in einer Graphischen Programiersprache (Blockly)
@paulbrunnmayr4805
@paulbrunnmayr4805 3 года назад
Hey habe dir eine email geschrieben für den Programmcode. Will das unbedingt nachbauen einfach genial! Bitte schreib mir zurück!
@techlife84
@techlife84 3 года назад
Schau in dein email Eingang, viel Spaß damit. 😉
@kyu5882
@kyu5882 3 года назад
Hey, ich finde deine Videos echt klasse, nur könnten die Thumbnails besser sein, da diese sehr "billig" aussehen und einen schlechte ersten Eindruck verursachen.
@techlife84
@techlife84 3 года назад
Ja in Sachen Thumbnails bin ich nicht sehr einfallsreich 😂
@heikopetersen2706
@heikopetersen2706 3 года назад
Ich habe Dir noch eine Mail geschickt mit Bild, nur falls diese wieder im Spamordner landet.
@techlife84
@techlife84 3 года назад
gerade gesehen, habe deine Mail als nicht Spam schon markiert 😂
@techlife84
@techlife84 4 года назад
Code (Wie gesagt ich bin kein Programmierer und der Code ist bestimmt nicht perfekt). Solltest du ihn 1:1 einfügen, dann teste zuvor deinen Sensorwert. Ich habe festgestellt das die unterschiedlichen Sensoren unterschiedliche Werte im Wasserglas anzeigen. Ist aber nicht weiter tragisch, solang du die Feuchtigkeit für DEINEN Sensor im Programmcode definierst. Ich bin offen für Anregungen, Fragen und Verbesserungsvorschläge. Viel Spaß /* VCC = 5 Volt cap sens VCC = 3,3 Volt Relais -------------------------------------------------------------*/ #include #include #include #include Adafruit_SSD1306 display(-1); /* const unsigned char Smiley_lachen [] PROGMEM = { }; const unsigned char Smiley_middle [] PROGMEM = { }; const unsigned char Smiley_traurig [] PROGMEM = { };*/ /*const int waterValue= 400; const int moistValue= 600; const int dryValue = 850; const int pumpON = 660;*/ int val = 1; void setup() { // put your setup code here, to run once: Serial.begin(9600); digitalWrite(0, 1); pinMode (2, OUTPUT); digitalWrite(2, 1); // initialize with the I2C addr 0x3C display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // Clear the buffer. display.clearDisplay(); //display.invertDisplay(1); // symbol_leer display.drawRoundRect(0, 14, 30, 50, 5, WHITE); display.display(); delay(2000); // symbol_viertelbvoll display.fillRoundRect(0, 14, 30, 12.5, 2, WHITE); display.display(); delay(2000); // symbol_halbvoll display.fillRoundRect(0, 14, 30, 25, 2, WHITE); display.display(); delay(2000); // symbol_dreiviertelvoll display.fillRoundRect(0, 14, 30, 38, 2, WHITE); display.display(); delay(2000); // symbol_voll display.fillRoundRect(0, 14, 30, 50, 2, WHITE); display.display(); delay(2000); } void loop() { // put your main code here, to run repeatedly: display.clearDisplay(); int sensorValue=analogRead(A0); Serial.println(sensorValue); delay(200); //display.println(sensorValue); if (sensorValue > 570) { //val=!val; display.drawRoundRect(0, 14, 30, 50, 5, WHITE); display.display(); digitalWrite(2,0); // 0 bzw. LOW = AN } else if ((sensorValue < 550) && (sensorValue > 500)) { display.fillRoundRect(0, 14, 30, 12.5, 2, WHITE); display.display(); } else if ((sensorValue < 500) && (sensorValue > 450)) { display.fillRoundRect(0, 14, 30, 38, 2, WHITE); display.display(); } else if (sensorValue < 450) { display.fillRoundRect(0, 14, 30, 50, 2, WHITE); display.display(); digitalWrite(2,1); } display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(50,20); display.println(sensorValue); display.display(); delay(200); }
@leon1532
@leon1532 4 года назад
Moin kurze Frage zum Projekt, haste vielleicht den Namen oder die Produktnummer der Batteriehalterung für die Wasserpumpe?
@techlife84
@techlife84 4 года назад
Schau dir mal den aus der Videobeschreibung an, ist der selbe wie der von mir bloß mit ON/OFF Schalter. Funktioniert aber auch.
@matayr4350
@matayr4350 Год назад
Bitte den Code Oder E-Mail Adresse ?
@techlife84
@techlife84 Год назад
Code ist in der videobeschreibung zum Download verfügbar
@lilnizo4527
@lilnizo4527 8 месяцев назад
Hab dir eine Mail geschrieben, doch bis jetzt noch keine Antwort. Wäre echt Mega wenn du mir antworten würdest, da ich das Projekt in ähnlicher Form für die Schule nachbauen muss. Danke schonmal 😊
@frankleiner8357
@frankleiner8357 4 года назад
Furchtbare zu laute Musik
@techlife84
@techlife84 4 года назад
Hab ich auch erst danach festgestellt. Merke ich mir für die Zukunft, danke trotzdem für das Feedback.
Далее
Automatic Garden Watering System
15:28
Просмотров 203 тыс.
ПАЛОЧКА В НОС (СЕКРЕТ)
00:40
Просмотров 142 тыс.
Brawl Stars Animation: PAINT BRAWL STARTS NOW!
00:52
Просмотров 4,3 млн
🛑 до конца!
00:12
Просмотров 92 тыс.
Raspberry Pi Plant Watering (& Time Lapse)
23:41
Просмотров 330 тыс.
Build an Automated Hydroponic System
15:21
Просмотров 1,4 млн
Preventing Plant Death With Technology
14:00
Просмотров 131 тыс.
What's the difference? Arduino vs Raspberry Pi
6:21
Просмотров 1,8 млн
Digitale Bewässerungsanlage Workshop
12:43
Просмотров 4,5 тыс.
Sensors - which one to use
17:06
Просмотров 1,3 млн
CAN Bus: Serial Communication - How It Works?
11:25
Просмотров 214 тыс.
Making Cooler/Generator with Thermoelectric Device
14:37