
WEP network passwords are hexadecimal strings known as keys. A WEP network can have 4
different keys; each key is assigned a "Key Index" value. For WEP encrypted networks, you need
the SSID, the key, and key number.
Scan for available networks
The sketch below is a good one to run the first time you use the board in a new area. This sketch will
not connect to a network, but it will show you what networks the shield can view. Your WiFi shield
will probably not see as many networks as a computer with a larger WiFi antenna. Once you have
downloaded the sketch to your Arduino, open the serial port to see available networks.
#include <SPI.h>
#include <WiFi.h>
void
setup
() {
// initialize serial and wait for the port to open:
Serial
.
begin
(9600);
while
(!
Serial
) ;
// attempt to connect using WEP encryption:
Serial
.
println
(
"Initializing Wifi..."
);
printMacAddress ();
// scan for existing networks:
Serial
.
println
(
"Scanning available networks..."
);
listNetworks();
}
void
loop
() {
delay
(10000 );
// scan for existing networks:
Serial
.
println
(
"Scanning available networks..."
);
listNetworks();
}
void
printMacAddress () {
// the MAC address of your Wifi shield
byte
mac[6];
// print your MAC address:
WiFi.
macAddress
(mac);
Serial
.
(
"MAC: "
);
Serial
.
(mac[5],
HEX
);
Serial
.
(
":"
);
Serial
.
(mac[4],
HEX
);
Serial
.
(
":"
);
Serial
.
(mac[3],
HEX
);
Serial
.
(
":"
);
Serial
.
(mac[2],
HEX
);
Serial
.
(
":"
);
Serial
.
(mac[1],
HEX
);
Serial
.
(
":"
);
Serial
.
println
(mac[0],
HEX
);
}
void
listNetworks() {
// scan for nearby networks:
Serial
.
println
(
"** Scan Networks **"
);
byte
numSsid = WiFi.
scanNetworks
();
// print the list of networks seen:
Serial
.
(
"number of available networks:"
);
Serial
.
println
(numSsid);
// print the network number and name for each network found:
for
(
int
thisNet = 0; thisNet<numSsid; +) {
Serial
.
(thisNet);
-
Summary of Contents for WiFI Shield
Page 4: ...Ports on the WiFi Shield ...