YourESP32 Sketch WIFI Scan

From ArduinoInfo
Jump to navigation Jump to search

<shtml hash="d92bdf1b5b6cf4a7ad39ad6c18302dbfacc22c7c0c5e10698865b7f3a121546c">

<font color="#95a5a6">/* YourESP32 Example: Sketch WIFI_SCAN</font>
<font color="#95a5a6">    SEE: </font><u><font color="#95a5a6">https://ESP32Info.Info</font></u><font color="#95a5a6"></font>
<font color="#95a5a6">  - WHAT IT DOES :demonstrates how to scan WiFi networks.</font>
<font color="#95a5a6">  - SEE the comments after "//" on each line below</font>
<font color="#95a5a6">  - CONNECTIONS:</font>
<font color="#95a5a6"></font>
<font color="#95a5a6">  - V1.00 10/02/2018</font>
<font color="#95a5a6">   Questions: terry@yourduino.com */</font>

<font color="#95a5a6">/*-----( Import needed libraries )-----*/</font>
<font color="#5e6d03">#include</font> <font color="#005c5f">"WiFi.h"</font>
<font color="#95a5a6">/*-----( Declare Constants and Pin Numbers )-----*/</font>
<font color="#95a5a6">/*-----( Declare objects )-----*/</font>
<font color="#95a5a6">/*-----( Declare Variables )-----*/</font>


<font color="#00979c">void</font> <font color="#5e6d03">setup</font><font color="#000000">(</font><font color="#000000">)</font>   <font color="#95a5a6">/****** SETUP: RUNS ONCE ******/</font>
<font color="#000000">{</font>
  <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">begin</font><font color="#000000">(</font><font color="#000000">115200</font><font color="#000000">)</font><font color="#000000">;</font>

  <font color="#434f54">// Set WiFi to station mode and disconnect from an AP if it was previously connected</font>
  <b><font color="#d35400">WiFi</font></b><font color="#434f54">.</font><font color="#d35400">mode</font><font color="#000000">(</font><font color="#00979c">WIFI_STA</font><font color="#000000">)</font><font color="#000000">;</font>
  <b><font color="#d35400">WiFi</font></b><font color="#434f54">.</font><font color="#d35400">disconnect</font><font color="#000000">(</font><font color="#000000">)</font><font color="#000000">;</font>

  <font color="#d35400">delay</font><font color="#000000">(</font><font color="#000000">100</font><font color="#000000">)</font><font color="#000000">;</font>
  <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">println</font><font color="#000000">(</font><font color="#005c5f">"Setup done"</font><font color="#000000">)</font><font color="#000000">;</font>

<font color="#000000">}</font><font color="#434f54">//--(end setup )---</font>


<font color="#00979c">void</font> <font color="#5e6d03">loop</font><font color="#000000">(</font><font color="#000000">)</font>   <font color="#95a5a6">/****** LOOP: RUNS CONSTANTLY ******/</font>
<font color="#000000">{</font>
  <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">println</font><font color="#000000">(</font><font color="#005c5f">"scan start"</font><font color="#000000">)</font><font color="#000000">;</font>

  <font color="#00979c">int</font> <font color="#000000">n</font> <font color="#434f54">=</font> <b><font color="#d35400">WiFi</font></b><font color="#434f54">.</font><font color="#d35400">scanNetworks</font><font color="#000000">(</font><font color="#000000">)</font><font color="#000000">;</font>  <font color="#434f54">// return the number of networks found</font>
  <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">println</font><font color="#000000">(</font><font color="#005c5f">"scan done"</font><font color="#000000">)</font><font color="#000000">;</font>
  <font color="#5e6d03">if</font> <font color="#000000">(</font><font color="#000000">n</font> <font color="#434f54">==</font> <font color="#000000">0</font><font color="#000000">)</font>
  <font color="#000000">{</font>
    <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">println</font><font color="#000000">(</font><font color="#005c5f">"no networks found"</font><font color="#000000">)</font><font color="#000000">;</font>
  <font color="#000000">}</font> <font color="#5e6d03">else</font>
  <font color="#000000">{</font>
    <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">print</font><font color="#000000">(</font><font color="#000000">n</font><font color="#000000">)</font><font color="#000000">;</font>
    <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">println</font><font color="#000000">(</font><font color="#005c5f">" networks found"</font><font color="#000000">)</font><font color="#000000">;</font>
    <font color="#5e6d03">for</font> <font color="#000000">(</font><font color="#00979c">int</font> <font color="#000000">i</font> <font color="#434f54">=</font> <font color="#000000">0</font><font color="#000000">;</font> <font color="#000000">i</font> <font color="#434f54"><</font> <font color="#000000">n</font><font color="#000000">;</font> <font color="#434f54">++</font><font color="#000000">i</font><font color="#000000">)</font>
    <font color="#000000">{</font>
      <font color="#434f54">// Print SSID and RSSI for each network found</font>
      <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">print</font><font color="#000000">(</font><font color="#000000">i</font> <font color="#434f54">+</font> <font color="#000000">1</font><font color="#000000">)</font><font color="#000000">;</font>
      <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">print</font><font color="#000000">(</font><font color="#005c5f">": "</font><font color="#000000">)</font><font color="#000000">;</font>
      <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">print</font><font color="#000000">(</font><b><font color="#d35400">WiFi</font></b><font color="#434f54">.</font><font color="#d35400">SSID</font><font color="#000000">(</font><font color="#000000">i</font><font color="#000000">)</font><font color="#000000">)</font><font color="#000000">;</font>
      <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">print</font><font color="#000000">(</font><font color="#005c5f">" ("</font><font color="#000000">)</font><font color="#000000">;</font>
      <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">print</font><font color="#000000">(</font><b><font color="#d35400">WiFi</font></b><font color="#434f54">.</font><font color="#d35400">RSSI</font><font color="#000000">(</font><font color="#000000">i</font><font color="#000000">)</font><font color="#000000">)</font><font color="#000000">;</font>
      <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">print</font><font color="#000000">(</font><font color="#005c5f">")"</font><font color="#000000">)</font><font color="#000000">;</font>
      <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">println</font><font color="#000000">(</font><font color="#000000">(</font><b><font color="#d35400">WiFi</font></b><font color="#434f54">.</font><font color="#d35400">encryptionType</font><font color="#000000">(</font><font color="#000000">i</font><font color="#000000">)</font> <font color="#434f54">==</font> <font color="#000000">WIFI_AUTH_OPEN</font><font color="#000000">)</font> <font color="#434f54">?</font> <font color="#005c5f">" "</font> <font color="#434f54">:</font> <font color="#005c5f">"*"</font><font color="#000000">)</font><font color="#000000">;</font>
      <font color="#d35400">delay</font><font color="#000000">(</font><font color="#000000">10</font><font color="#000000">)</font><font color="#000000">;</font>
    <font color="#000000">}</font>
  <font color="#000000">}</font>
  <b><font color="#d35400">Serial</font></b><font color="#434f54">.</font><font color="#d35400">println</font><font color="#000000">(</font><font color="#005c5f">""</font><font color="#000000">)</font><font color="#000000">;</font>

  <font color="#434f54">// Wait a bit before scanning again</font>
  <font color="#d35400">delay</font><font color="#000000">(</font><font color="#000000">5000</font><font color="#000000">)</font><font color="#000000">;</font>

<font color="#000000">}</font><font color="#434f54">//--(end main loop )---</font>

<font color="#95a5a6">/*-----( Declare User-written Functions )-----*/</font>
<font color="#434f54">//NONE yet</font>

<font color="#434f54">//*********( THE END )***********</font>

</shtml>