[Gelöst] ESPEasy kommunizieren mit einem ATmega328P oder ähnlich

Begonnen von Gear, 06 März 2019, 20:50:20

Vorheriges Thema - Nächstes Thema

Gear

Guten Abend Zusammen,

so zu der Aussage hin, dass der Nano hier schlap machen würde bei sovielen Strings per Serial rauszuhauen, bzw das int zu string umwandeln vermeidet werden sollte oder ähnliches.
Der Nano läuft jetzt seit ca 2,5h und schickt permanent die Daten raus, so wie in meinem Beispiel Sketch.
> Ich habe einfach mal Rx und Tx abgesteckt, nun gibt es keine Probleme beim senden.

Zu der Sache mit dem 0815 Sketch, ja, das ist in diesem Fall so gewollt.
Ich möchte erstmal die Möglichkeiten austesten, bevor ich mir die Mühe mache und etwas programmiere.

Ich werde mich am WE mal dran setzen und schauen, warum das probleme verursacht, wenn es mit dem ESP verbunden ist.


Und nun zu einem meiner Vorhaben, wenn es jmd interessiert.

Ich habe eine "Pflanzen-Ecke" in meinem Wohnzimmer unter dem Dachfenster, leider passiert es oft, dass ich vergesse diese zu giesen oder mal für bis zu vier Wochen nicht zuhause bin.
Diese Ecke besteht aus 5 unterschiedlichen Behältnissen, in jedem Behältnis soll ein Feuchtigkeitsmesser rein der Analog den Zusand gibt.
Desweiteren habe ich darunter einen Wasserbehälter der 20L Wasser fassen kann, der Füllstand soll auch ausgewertet werden.
Es soll durch 5 Kleine Wasserpumpen das jeweilige Behältnis gegossen werden.

Der ESP Ist hinter der Mediawand und steuert die LEDs (RGB+W+W), 12 Relais und 2 Strommesser (Da mein Server und Workstation dort in der Ecke stehen)
Nun wollte ich nicht noch einen ESP im Netzwerk haben und für so eine Simple Aufgabe dann einen ESP + ein paar ADC ist mir dann doch zu teuer. (Habe ein paar Nanos für 1,27€ im Sale geordert).

Der Ablauf soll so sein, dass der ESP alle x Minuten dem Nano sagt, "GetInfo", daraufhin sendet der Nano ggf. alle Daten in einem JSON String der selbst gebaut wird die Daten an den ESP per cmd publish wird dieser per MQTT weitergeleitet und FHEM wertet aus und veranlässt ggf. eine Pumpe für x Sekunden das jeweilige Behältnis zu bewässern.
Und wenn der Wasserstand unter x Liter fällt, dann bekomme ich ne Nachricht via Telegram und es werden keine Pumpen mehr angeschaltet, damit diese nicht leerlaufen und ggf kaputt gehen können.

Also das wäre eine der Pläne.
> ODroid H3 => OMV => Docker => FHEM <
Fritz!Box 7590, Fritz!Repeater 6000, MQTT, RaspberryMatic, Zigbee2MQTT, ESP32, ESP8266, Shelly, Grafana ...
> 3D-Druck <

DasQ

könntest einfach mal ein ordentlichen sketch versuchen?
wie gesagt du deklarierst nix, du machst da irgendwas und wunderst dich das es nicht geht.

https://www.arduino.cc/reference/en/language/functions/analog-io/analogread/

ZitatExample Code

The code reads the voltage on analogPin and displays it.

int analogPin = A3; // potentiometer wiper (middle terminal) connected to analog pin 3
                    // outside leads to ground and +5V
int val = 0;  // variable to store the value read

void setup() {
  Serial.begin(9600);           //  setup serial
}

void loop() {
  val = analogRead(analogPin);  // read the input pin
  Serial.println(val);          // debug value
}
Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

Gear

Wie gesagt, ich setze mich an deisem WE dran, habe nun ein "richtiges" Sketch geschreiben.

Aber gut ich nehme das vorgeschlagene Sketch.
Der ESp hat die Baudrate 9600 genau wie auf dem Nano.

Kommunikation ESP > Nano geht, das habe ich mit meinem Sketch getestet.
Kommunikation Nano > ESP geht nicht, weder bei meinem, noch bei dem Sketch aus der Ref.
> ODroid H3 => OMV => Docker => FHEM <
Fritz!Box 7590, Fritz!Repeater 6000, MQTT, RaspberryMatic, Zigbee2MQTT, ESP32, ESP8266, Shelly, Grafana ...
> 3D-Druck <

DasQ

Zitat von: Gear am 02 April 2019, 12:22:23
Ich habe das so gemacht, wie in dem Link von dir unter "Uni-Direktional" steht.
Tx des ESP auf Rx des Nano
Tx des Nano über die Widerstände 1k zum Rx des ESP und 2k zu GND.

Du weißt was Uni-Direktional heißt?
Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

Gear

Zitat von: Gear am 02 April 2019, 12:22:23
Ich habe das so gemacht, wie in dem Link von dir unter "Uni-Direktional" steht.
Tx des ESP auf Rx des Nano
Tx des Nano über die Widerstände 1k zum Rx des ESP und 2k zu GND.

Uni-Direktional == Kommunikation nur in eine Richtung.
Das war aber auch nur auf das Schaltbild bezogen...
> Da du ja einen Schaltplan wolltest, wie ich es angeschlossen habe.

Jedoch steht auf der verlinkten Seite auch das diese Anschlussweise in beide Richtungen geht, da der Nano 3,3V (die auch aus dem Tx des ESP kommen) dies als Logisch "EINS" ansieht, und über dewn Spannungsteiler 1k und 2k der Pegel angepasst wird, so dass der Rx des ESP die 5V nicht sieht.
> ODroid H3 => OMV => Docker => FHEM <
Fritz!Box 7590, Fritz!Repeater 6000, MQTT, RaspberryMatic, Zigbee2MQTT, ESP32, ESP8266, Shelly, Grafana ...
> 3D-Druck <

Gear

Ich habe es mittlerweile zum laufen bekommen, danke für die Hilfe.
> ODroid H3 => OMV => Docker => FHEM <
Fritz!Box 7590, Fritz!Repeater 6000, MQTT, RaspberryMatic, Zigbee2MQTT, ESP32, ESP8266, Shelly, Grafana ...
> 3D-Druck <