Forum: Mikrocontroller und Digitale Elektronik NodeMCU-ESP8266-Board


von Florian S. (floke4)


Angehängte Dateien:

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)


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)


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)


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)


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)


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)


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)


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)


Lesenswert?

gleichzeitig Client und AP geht

Vielleicht ist das die Lösung:

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

von c-hater (Gast)


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)


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)


Lesenswert?

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

von Stefan F. (Gast)


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)


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. (Gast)


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.

von Florian S. (floke4)


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. (Gast)


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.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.