ESP32 Star Netzwerk

OP #7939029

Ich suche nach einer möglichst preiswerten und einfachen Möglichkeit (daher die Idee mit dem ESP32...), um mit einer Basisstation mit 8 bis 16 Knoten zu kommunizieren. Die maximale Entfernung ist <20m und ich brauche kein Mesh. Die Datenrate ist ebenfalls gering (wenn an der Basiseinheit ein Knopf gedrückt wird, soll am entsprechenden Knoten eine LED leuchten bzw. die Farbe ändern). Stromverbrauch ist auch nicht wirklich kritisch, die LEDs brachen verhältnismäßig viel und der Akku ist groß, aber verschwenden will ich natürlich auch nichts. Was wäre hierfür eine mögliche Lösung oder sollte ich doch besser andere Module verwenden? Z.B. die würth Thyone-I, die explizit für diesen Zweck gedacht sind, aber halt teurer sind, einen zusätzlichen MC brauchen und nicht wirklich gut dokumentiert sind?

Ok, war nur eine Idee, die Beschränkung war mir neu. Wobei 20m durchaus sportlich sind für einen ESP32 mit PCB Antenne. Da würde ich dann der Einfachheit halber einen billigsten AP setzen und alle ESPs zu Clients machen.

Oder vielleicht doch Mesh? https://randomnerdtutorials.com/esp-mesh-esp32-esp8266-painlessmesh/

Zigbee braucht halt einen Coordinator, sonst wäre das evtl. auch noch zu überlegen: https://ptvo.info/

(Firma: Funkenflug Industries)

Ich glaube, der ESP32 mag so viele gleichzeitige Verbindungen nicht besonders bzw. es käme darauf an, mit welcher Latenz man die Knoten aktualisieren möchte nachdem eine Taste gedrückt wurde. Evtl. könnte man man was über UDP Broadcasts machen.

Niklas M. schrieb:

Ich suche nach einer möglichst preiswerten und einfachen Möglichkeit (daher die Idee mit dem ESP32...), um mit einer Basisstation mit 8 bis 16 Knoten zu kommunizieren. ...

Niklas M. schrieb:

wenn an der Basiseinheit ein Knopf gedrückt wird, soll am entsprechenden Knoten eine LED leuchten bzw. die Farbe ändern

Willst du kommunizieren oder nur ein Kommando schicken, d.h. brauchst du eine bidirektionale Funkverbindung?

OP

Ich werde mir mal ESPnow ansehen - hat wer erfahrungen und Tipps dafür? Die ESP32 sind leider Neuland ür mich, das Projekt sollte auch ein erster einstieg sein. Ich nehme mal an, dass der ESP32-C2 ausreicht, sollte man die Espressif IDE verwenden oder doch bei der Arduino-IDE bleiben?

Versuch doch erst mal WiFi. Nimm einen beliebigen fertigen AP. Das Gerät mit den Buttons wäre dann auch als Knoten zu sehen. Der AP kann ja irgendwo stehen wo Strom vorhanden ist. Bzw gibt es auch ultrabillige mit USB Anschluss für den mobilen Einsatz.

Mit der Arduino IDE hast du einen One Stop Shop wo dir alles installiert wird, was du brauchst und das Internet ist voll von Beispielen. Innerhalb einer Stunde läuft damit Hello World auf deinem ESP. Die Einrichtung des IDF ist auch nicht übermäßig komplex aber wenn man sonst nie Software entwickelt, ist Arduino deutlich einfacher.

Wenn's nur um das "Fernsteuern" von LEDs innerhalb von 20m geht, und es möglichst billig sein soll:

Eine Tüte JDY-40 für die Empfänger, einmal über TTY parametriert und danach autark? Für den Sender ein JDY-40 an einem ESP/Arduino/RasPi/...? Bis zu 8 Tasten gingen auch ohne extra-µC pro Sender.

Angehängte Dateien:

Εrnst B. schrieb:

Wenn's nur um das "Fernsteuern" von LEDs innerhalb von 20m geht, und es möglichst billig sein soll:

Eine Tüte JDY-40 für die Empfänger, einmal über TTY parametriert und danach autark? Für den Sender ein JDY-40 an einem ESP/Arduino/RasPi/...? Bis zu 8 Tasten gingen auch ohne extra-µC pro Sender.

Ein JDY-41 ist noch etwas universeller einzusetzen. Man kann z.B. beim Empfänger die Ausgänge über TX Daten vom Sender setzen. Wenn keine großen Hindernisse zwischen Sender und Empfänger liegen, dürften die 20m machbar sein.

Angehängte Dateien:
(Firma: Funkenflug Industries)

Nö, das ist ja dank Salamitaktik schon wieder hinfällig, jetzt möchte er plötzlich eine Rückmeldung des Akkustands der LED-Einheiten und dafür ist zwingend ein kleiner Controller (der das misst und die Daten verschickt) sowie bidirektionale (und datentaugliche) Kommunikation erforderlich.

(Firma: Q3)

Etwas Aufmerksamkeit würde ich dem Stromverbauch schenken, wenn es darum geht, die Clients möglichst lange mit Baterie oder Akku zu betreiben. Ein Empfänger der ständig "lauscht", benötigt auch ständig Strom.

Wenn es nicht unbedingt auf eine quasi Sofort-Reaktion ankommt (und das ist bei modernen Mikrocontrollern ein weites Feld), würde ich das so machen:

  • im AP für jeden Client einen Speicherplatz bzw. "Joblist" anlegen. Ein Tastendruck bzw. Kommando für den jeweiligen Client wir dort hinterlegt

  • der Client fragt regelmäßig beim AP nach, ob Nachrichten für ihn vorliegen. Nachdem er reagiert hat (oder auch nicht, wenn keine Nachricht), legt er sich wieder für einige Zeit schlafen.

  • der AP könnte auch einfach zyklisch Telegramme aussenden, bis die darin "gemeinten" Clients irgend wann mal geantwortet haben. Das erspart den Clients die initiale Nachfrage

Niklas M. schrieb:

ESP32 als WLAN AP kann leider nur maximal 10 Verbindungen (anscheinend werden noch wendiger empfohlen)

Tcha, jetzt sollte man für so ein Projekt noch Wifi und Netzwerke im allgemeinen verstanden haben. Dann könnte das auch klappen. Aber aktuell muss jeder Gesichtsgünther mit Nothauptschulabschluss irgendwas mit ESP machen. Warum?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über ein Jahr alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.