1
0
mirror of https://github.com/esp8266/Arduino.git synced 2025-12-24 11:21:24 +03:00

WiFi Shield examples: added the firmware version check

This commit is contained in:
Fede85
2014-02-06 18:40:48 +01:00
parent b415903b69
commit 5dfafe7847
13 changed files with 406 additions and 362 deletions

View File

@@ -1,38 +1,43 @@
/*
This example connects to an unencrypted Wifi network.
This example connects to an unencrypted Wifi network.
Then it prints the MAC address of the Wifi shield,
the IP address obtained, and other network details.
Circuit:
* WiFi shield attached
created 13 July 2010
by dlf (Metodo2 srl)
modified 31 May 2012
by Tom Igoe
*/
#include <WiFi.h>
#include <SPI.h>
#include <WiFi.h>
char ssid[] = "yourNetwork"; // the name of your network
int status = WL_IDLE_STATUS; // the Wifi radio's status
void setup() {
//Initialize serial and wait for port to open:
Serial.begin(9600);
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
// check for the presence of the shield:
if (WiFi.status() == WL_NO_SHIELD) {
Serial.println("WiFi shield not present");
Serial.println("WiFi shield not present");
// don't continue:
while(true);
}
// attempt to connect to Wifi network:
while ( status != WL_CONNECTED) {
while (true);
}
String fv = WiFi.firmwareVersion();
if ( fv != "1.1.0" )
Serial.println("Please upgrade the firmware");
// attempt to connect to Wifi network:
while ( status != WL_CONNECTED) {
Serial.print("Attempting to connect to open SSID: ");
Serial.println(ssid);
status = WiFi.begin(ssid);
@@ -40,7 +45,7 @@ void setup() {
// wait 10 seconds for connection:
delay(10000);
}
// you're connected now, so print out the data:
Serial.print("You're connected to the network");
printCurrentNet();
@@ -56,26 +61,26 @@ void loop() {
void printWifiData() {
// print your WiFi shield's IP address:
IPAddress ip = WiFi.localIP();
Serial.print("IP Address: ");
Serial.print("IP Address: ");
Serial.println(ip);
Serial.println(ip);
// print your MAC address:
byte mac[6];
byte mac[6];
WiFi.macAddress(mac);
Serial.print("MAC address: ");
Serial.print(mac[5],HEX);
Serial.print(mac[5], HEX);
Serial.print(":");
Serial.print(mac[4],HEX);
Serial.print(mac[4], HEX);
Serial.print(":");
Serial.print(mac[3],HEX);
Serial.print(mac[3], HEX);
Serial.print(":");
Serial.print(mac[2],HEX);
Serial.print(mac[2], HEX);
Serial.print(":");
Serial.print(mac[1],HEX);
Serial.print(mac[1], HEX);
Serial.print(":");
Serial.println(mac[0],HEX);
Serial.println(mac[0], HEX);
// print your subnet mask:
IPAddress subnet = WiFi.subnetMask();
Serial.print("NetMask: ");
@@ -94,19 +99,19 @@ void printCurrentNet() {
// print the MAC address of the router you're attached to:
byte bssid[6];
WiFi.BSSID(bssid);
WiFi.BSSID(bssid);
Serial.print("BSSID: ");
Serial.print(bssid[5],HEX);
Serial.print(bssid[5], HEX);
Serial.print(":");
Serial.print(bssid[4],HEX);
Serial.print(bssid[4], HEX);
Serial.print(":");
Serial.print(bssid[3],HEX);
Serial.print(bssid[3], HEX);
Serial.print(":");
Serial.print(bssid[2],HEX);
Serial.print(bssid[2], HEX);
Serial.print(":");
Serial.print(bssid[1],HEX);
Serial.print(bssid[1], HEX);
Serial.print(":");
Serial.println(bssid[0],HEX);
Serial.println(bssid[0], HEX);
// print the received signal strength:
long rssi = WiFi.RSSI();
@@ -116,6 +121,6 @@ void printCurrentNet() {
// print the encryption type:
byte encryption = WiFi.encryptionType();
Serial.print("Encryption Type:");
Serial.println(encryption,HEX);
Serial.println(encryption, HEX);
}