Forum: Mikrocontroller und Digitale Elektronik NodeMCU-ESP8266-Board


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Florian S. (floke4)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich habe eine Frage für mein Maturaprojekt:
Ich baue eine Zeitmessanlage mit insgesamt 6 NodeMCU-ESP8266-Boards. Das 
Board 5 soll einen Hotspot erstellen und Board 1 bis 4 sollen in dieses 
Hotspot einsteigen. Wenn sich ein Board in das Netzwerk verbindet,
soll es eine Nachricht als Verbindungsbestätigung an das Gateway senden. 
Das funktioniert soweit. Das Board 6 soll ebenfalls in dieses Netzwerk 
einsteigen, und gleichzeitig selbst einen Hotspot für ein Tablet 
erstellen.
Das funktioniert auch. Jetzt will ich aber, dass auch das Board 6 eine 
Bestätigungsnachricht an das Gateway sendet, doch das funktioniert 
nicht.
Mein Befehl im Code mit dem ich die Nachricht senden probiere lautet 
Udp.beginPacket(gatewayIP(), 2390) Meine Frage:
Funktioniert hier dieser Befehl nicht, da ja das Board 6 eigentlich auch 
ein Gateway ist???
Ich habe auch schon mit den Definieren der IPs probiert, doch da kenne 
ich mich leider nicht aus. Ich füge auch den Code hinzu. Die Datei "40" 
entspricht dem Boaord 5 und die Datei "Ziel" dem Board 6.
Danke schon vorab für die Hilfe!!
LG Floke4

von c-hater (Gast)


Bewertung
-7 lesenswert
nicht lesenswert
Florian S. schrieb:

> Ich habe auch schon mit den Definieren der IPs probiert, doch da kenne
> ich mich leider nicht aus.

Dann lerne es einfach! Wenn man IP-Netze betreiben will, ist die 
Kenntnis der Grundlagen von IP absolut unverzichtbar.

Selbst für ArduiOpfer gilt das, denn das kann ihnen dieser 
Dummenfang-Mechanismus nicht abnehmen.

von ThomasW (Gast)


Bewertung
0 lesenswert
nicht lesenswert
c-hater schrieb:
> Selbst für ArduiOpfer gilt das, denn das kann ihnen dieser
> Dummenfang-Mechanismus nicht abnehmen.

Das hier hat gar nichts mit Arduino zu tun. Aber wenn man erstmal ein 
stabiles Feindbild hat, dann sind Fakten und Sozialkompetenz für dich 
wohl kein Thema?

Florian S. schrieb:
> Jetzt will ich aber, dass auch das Board 6 eine Bestätigungsnachricht an
> das Gateway sendet, doch das funktioniert nicht.

Board 6 ist also in zwei Netzen. Bist Du sicher, dass die Nachricht im 
richtigen Netz gesendet wird?

von c-hater (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ThomasW schrieb:

> Das hier hat gar nichts mit Arduino zu tun.

Ich denke schon, das es was damit zu tun hat...

von ThomasW (Gast)


Bewertung
0 lesenswert
nicht lesenswert
c-hater schrieb:
> ThomasW schrieb:
>
>> Das hier hat gar nichts mit Arduino zu tun.
>
> Ich denke schon, das es was damit zu tun hat...

Na dann hattest Du ja gar keine andere Möglichkeit als ihn zu 
beleidigen. Verstehe!

von Florian S. (floke4)


Bewertung
0 lesenswert
nicht lesenswert
Danke für die schnelle Antwort!
Ja genau, Board 6 steigt in ein Netzwerk ein und erstellt selber eines. 
Ich habe bereits mit meinem Handy und einer "UDP - Receive and Transmit" 
App einmal überprüft oder der Sender wirklich die Nachricht sendet. Und 
ja er sendet sie auch wirklich.
Dann habe ich überprüft ob auch das Empfangen funktioniert und das 
klappt ebenfalls.
Es funktionieren nur irgendwie beide Boards miteinander nicht.
Danke und lg

von ThomasW (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Florian S. schrieb:
> Es funktionieren nur irgendwie beide Boards miteinander nicht

Um miteinander zu kommunizieren muss sich doch Board 6 als Client bei 
Board 5 (dem AP) anmelden - dabei aber AP für das Tablet sein. Ist das 
überhaupt gleichzeitig möglich?

von Florian S. (floke4)


Bewertung
0 lesenswert
nicht lesenswert
Ja das ist gleichzeitig möglich, dass ein ESP gleichzeitig ein Client 
als auch ein AP ist. Ich schaffe es ja, dass Board 6 sich als Client in 
den AP von Board 6 verbindet. Nur der Nachrichtverkehr funktioniert 
nicht.

von Heinz R. (heijz)


Bewertung
0 lesenswert
nicht lesenswert
gleichzeitig Client und AP geht

Vielleicht ist das die Lösung:

https://www.esp8266.com/viewtopic.php?p=65666

von c-hater (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
ThomasW schrieb:

> Na dann hattest Du ja gar keine andere Möglichkeit als ihn zu
> beleidigen.

Beleidigen? Wo genau?

Eher trifft es dieser Ausdruck: "bemitleiden". Halt reingefallen. Aber 
das Mitleid hält sich natürlich auch in Grenzen. IP ist wirklich einfach 
zu verstehen. Das kann man sich in einem halben Tag anlesen. Wenn man es 
denn will...

Hat man das drauf, versteht man auch die (durchaus vorhandene und 
zutreffende) Arduino-Doku gleich viel besser. Und nicht nur die, sondern 
auch die zu jedem anderen System, was irgendwie mit IP hantiert...

von Florian S. (floke4)


Bewertung
0 lesenswert
nicht lesenswert
Danke für den Tipp, aber diesen Befehl der dort vorgeschlagen ist, den 
habe ich schon im Code.

Was ich vielleicht vergessen habe zu sagen ist, dass ich das nicht mit 
einem Webserver mache, sondern nur ein lokales Netzwerk.

von Marco S. (masterof)


Bewertung
0 lesenswert
nicht lesenswert
Kann der ESP Mr 5 überhaupt mit so viele Clients zur selbenzeit im WLAN 
arbeiten?

von Stefan ⛄ F. (stefanus)


Bewertung
4 lesenswert
nicht lesenswert
Die Firmware des ESP enthält keine Router Funktion. Stationen, die am 
SoftAP hängen, können mit dem SoftAP kommunizieren, aber nicht 
miteinander und auch nicht mit dem Netz auf der "anderen" Seite hinter 
dem SoftAP.

> WiFi.mode(WIFI_STA);
> WiFi.softAPConfig(router, router, subnet);

Der Modus für gleichzeitigen Betrieb von STA und SoftAP heisst 
WIFI_AP_STA.

von Florian S. (floke4)


Bewertung
0 lesenswert
nicht lesenswert
Danke für die Antwort, ich werde es ausprobieren.

Aber mein Board 5 ist ja nur ein softAP. Warum brauche ich dann STA und 
AP?
Mein Board 5 ist der Code mit "40". und mein Board 6 hat den Code "Ziel"

Danke und lg

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
> WiFi.mode(WIFI_STA);
> WiFi.softAPConfig(router, router, subnet);

Florian S. schrieb:
> Warum brauche ich dann STA und AP?

Weil es sinnlos ist, den SoftAP zu konfigurieren und im gleichen 
Atmehzug zu deaktivieren.

> Aber mein Board 5 ist ja nur ein softAP.

Für softAP lautet der Modus WIFI_AP.

: Bearbeitet durch User
von Florian S. (floke4)


Bewertung
0 lesenswert
nicht lesenswert
Ich weiß ja nicht was ich falsch habe, deshalb bin ich ja hier.
Aber ich weiß, dass mein Board 5 nur ein softAP ist.

Ich habe schon immer geschrieben, dass mein Problem nicht beim Verbinden 
ist, das funktioniert ja. Sondern mein Problem ist, dass ich keine 
Verbindung aufbauen kann, aber keine Nachricht senden kann.

: Bearbeitet durch User
von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Deine Ausführungen sind so chaotisch, wie den Quelltext.

Schlafe erst mal eine Nacht und morgen erstellst du eine Zeichnung, die 
deine Netzwerk-Struktur wiedergibt. Gebe dort auch an, auf welchem gerät 
welche Firmare laufen wird.

Überlege dir genau, welche Knoten AP und welcher STA ist. Und dann 
konfigurierst du sie dementsprechend.

Melde dich dann nochmal wieder mit der Zeichnung und den korrigierten 
Quelltexten.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.