- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 7 von 7

Thema: Signalstärke von verbundenem Client rausfinden?

  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    55
    Beiträge
    2.198

    Signalstärke von verbundenem Client rausfinden?

    Anzeige

    Praxistest und DIY Projekte
    Hallöle.
    Ich wurstele auch mit den NodeMCU's rum, seit neuestem-die Teile haben was!

    Grad bastele ich an einer Fernsteuerung (die läuft schon), und zwar macht der NodeMCU einen Zugangspunkt auf.
    Dort kann sich ein Client (mein Handy, aus verschiedenen Gründen _will_ ich das per App machen) einklinken, und den NodeMCU veranlassen, Dinge zu tun.
    Soweit funktioniert das auch, nur möchte ich das Ganze bidirektional haben: ein bisschen Telemetrie.
    Wie ich Daten an die App so sende, dass ich die dann dort vernünftig anzeigen kann, krieg ich wohl noch raus, aber als erstes hätte ich gerne die Signalstärke der Verbindung angezeigt.
    Und genau das klappt nicht.
    Hängt man das Teil an nen Router, ist es ja kein Problem:

    long rssi = WiFi.RSSI();
    Serial.print("RSSI:");
    Serial.println(rssi);
    Das funktioniert auch.
    Nur nicht, wenn der NodeMCU als Zugangspunkt arbeitet.Eigentlich sollt es doch trotzdem möglich sein, da eine Aussage machen zu können-funktechnisch ist es doch Wurst..?Hat jemand eine Idee?
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.645
    Guten Morgen Rabenauge,

    Du lässt ein nodeMCU (#1) mit dem Router verbinden und WiFi.RSSI(); funktioniert.
    Jetzt konfigurierst Du dieses nodeMCU (#1) als Server (Zuganspunkt) und WiFi.RSSI(); funktioniert auf diesem nodeMCU nicht.

    Nimm mal ein zweites nodeMCU (#2) und verbinde mit #1. Schau, ob dann WiFi.RSSI(); auf #2 funktioniert.

    Soll #1 seine eigene Signalstärke detektieren?

    MfG

    PS: Schade, dass die Teile nur einen ADC-Eingang haben.
    https://www.arduino.cc/en/Reference/WiFiRSSI -> Description
    vergleiche mit Beispielcode: https://github.com/tttapa/Projects/b...Fi-Quality.ino
    Geändert von Moppi (17.12.2018 um 05:27 Uhr)

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    55
    Beiträge
    2.198
    Nö- die vom verbundenen Handy hätt ich gerne.
    Ich will das nutzen wie bei Drohnen: um rechtzeitig zu sehen, wann die Reichweitengrenze erreicht ist.
    Später vielleicht dann, um bei Bedarf einen Satelliten (Wifi-Repeater) abzusetzen.

    Die Beispiele, die ich gefunden habe (auch deines, auch die Doku)beziehen sich _immer_ nur auf den Station-Mode.
    Da funktioniert das auch...
    Wenn ich das aber, wie oben, im AP-Mode benutze, kommt immer "31" heraus, auch dann, wenn ich die externe Antenne abnehme, und das Handy hinter ne Stahlbetonwand lege(wo es, laut einer Wifi-Anzeige-App nur noch -57 dbm hat).

    Wenn ich dem Baustein das hier zum nachdenken gebe:

    Serial.begin(115200);

    int numberOfNetworks = WiFi.scanNetworks();

    for(int i =0; i<numberOfNetworks; i++){

    Serial.print("Network name: ");
    Serial.println(WiFi.SSID(i));
    Serial.print("Signal strength: ");
    Serial.println(WiFi.RSSI(i));
    Serial.println("-----------------------");


    bekomme ich ne glaubwürdige Ausgabe:
    -----------------------
    Network name: FRITZ!Box 7430 BJ
    Signal strength: -84
    -----------------------
    Geändert von Rabenauge (17.12.2018 um 09:14 Uhr)
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.645
    WiFi.RSSI zeigt die Signalstärke des Zugangspunktes, wo sich das nodeMCU angemeldet hat.
    Baue einen Zugangspunkt mit dem Handy und melde das nodeMCU dort an, dann denke ich, wird WiFi.RSSI funktionieren.
    Umgekehrt müsste das Handy die Signalstärke vom Zugangspunkt (was ja dann Dein nodeMCU ist) zeigen.

    Ich glaube, ich verstehe Dich noch nicht so ganz - wirst auch schon gemerkt haben.

    MfG


    PS: bist Du nicht Ski fahren, bei dem Schnee? Liegt doch schon ordentlich.
    Geändert von Moppi (17.12.2018 um 09:32 Uhr)

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.03.2011
    Beiträge
    1.899
    Das ist möglicherweise nicht so einfach. An einem AP können sich viele Clients anmelden. Die haben natürlich alle eine unterschiedliche Feldstärke. Selbst wenn im Moment des Aufrufs der RSSI-Funktion nur einer angemeldet ist, kann sich jederzeit ein weiterer anmelden. Ohne einen Parameter für die RSSI-Funktion, das den Client angibt, kann es kein brauchbares Ergebniss geben.

    - - - Aktualisiert - - -

    Zitat Zitat von Rabenauge Beitrag anzeigen
    Soweit funktioniert das auch, nur möchte ich das Ganze bidirektional haben: ein bisschen Telemetrie.
    Wie ich Daten an die App so sende, dass ich die dann dort vernünftig anzeigen kann, krieg ich wohl noch raus, aber als erstes hätte ich gerne die Signalstärke der Verbindung angezeigt.
    Machs umgekehrt, sende als erste Telemetriedaten die Feldstärke.

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    55
    Beiträge
    2.198
    Du meinst sicher, die Verbindungsstärke direkt im Handy auslesen, oder?
    Uff- mal gucken ob ich _das_ irgendwie hinkrieg.
    Ich hätt die gerne deshalb vom NodeMCU ermittelt, weil der zweifellos die bessere Antenne hat (ne externe)- der kann das Handy sicher noch ne ganze Weile erreichen, wenn das Handy schon längst nicht mehr hin kommt.

    Das Problem ist wohl tatsächlich, dass ich nicht weiss, was i hier ist:
    WiFi.SSID(i)
    wenn das Ding im AP-Modus läuft.Kann man die irgendwie ermitteln? Bekannt sein muss die dem AP ja...Moppi: eigentlich ist es so einfach, wie ich es ganz oben beschrieben hatte: es soll eine Fernsteuerung für nen kleinen (naja, klein..) Roboter werden.
    Ich will das Ding per Handy losschicken, und natürlich auch steuern. Da er aber auch draussen unterwegs sein soll, kann es ja leicht passieren, dass er ausser Reichweite gerät- und _das_ wüsst ich gerne _vorher_ , um darauf ggf. angemessen reagieren zu können (eben umdrehen, oder aber nen Repeater absetzen).
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.645
    Ich hatte oben schon Links gepostet, da findet man das so: WiFi.RSSI(wifiAccessPoint);
    damit wäre i=wifiAccessPoint.

    Würde ich so sagen.

    Ich habe noch was dazu gefunden: https://www.researchgate.net/publica...RSSI_technique
    Und hier direkt zum nodeMCU eine Doku: https://nodemcu.readthedocs.io/en/ma.../modules/wifi/

    Wenn das mit dem Handy nicht klappt, kann man ja ein Reichweitenmeßgerät mit einem zweiten nodeMCU bauen, dass dann mit RSSI die Qualtät/Signalstärke von dem Access Point des nodeMCU betimmt, an dem Du dich mit dem Handy anmeldest.


    Das Problem ist, dass mit WiFi.RSSI(); die Signalstärke bestimmt wird, wenn Du zuvor mit dem nodeMCU in einem Netz drin bist. So habe ich das jedenfalls verstanden.

    Ich beziehe mich mal auf: https://github.com/esp8266/Arduino/b...n/WiFiScan.ino

    Zuerst wird nach Netzwerken gesucht mit: WiFi.scanNetworks(); - hier wird die Anzahl der Netzwerke zurückgegeben, die gefunden wurde.
    Dann kann man mit: WiFi.SSID(i) und WiFi.RSSI(i) die Netzwerk-ID und Signalstärke anzeigen lassen. Wobei >>i<< eine Nummer von 0 bis zu der zuvor ermittelten Anzahl an Netzwerken ist.
    Man kann über >>i<< als Index per WiFi.SSID(i) die SSID des Netzwerks suchen, für das man die Signalstärke wissen möchte und fragt diese dann mit WiFi.RSSI(i) ab.

    Also das wäre meine Idee dazu.

    MfG
    Geändert von Moppi (17.12.2018 um 13:46 Uhr)

Ähnliche Themen

  1. Signalstärke
    Von Andri im Forum Arduino -Plattform
    Antworten: 8
    Letzter Beitrag: 24.11.2013, 18:37
  2. Messon von IR-Signalstärke?
    Von Manu_91 im Forum Sensoren / Sensorik
    Antworten: 24
    Letzter Beitrag: 08.12.2008, 17:43
  3. RN-Mega128Funk Signalstärke messen
    Von Chris272 im Forum Bauanleitungen, Schaltungen & Software nach RoboterNetz-Standard
    Antworten: 4
    Letzter Beitrag: 25.11.2008, 10:59
  4. Signalstärke messen?
    Von sulu im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 02.01.2006, 11:21
  5. Freien RAM rausfinden
    Von Thorsten im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 20.12.2004, 14:58

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress