NEWBEE Q error: 'WiFi' was not declared in this scope

I understand this error means I dont have the wifi library installed, but I feel stupid after a massive search trying to find out where the wifi.h library zip file is (on internet) just so i can download it and add to my list of librarys. Is there something Im missing? thought this would have been pre installed? Sorry if Im lacking a basic something. thanks in adbance

I have: uno imac and wireless shield

Where did get the sketch that tries to use that library?

Im using a RN VX 171 module with wireless shield, but also have an xbee shield from sparkfun.
I thought ID start with this simple wifi scanning example to get thing going.... Ultimately I want to just read an analogue sensor wirelessly and post the reading to cosm through our wifi network.

You can see the #include <wifi.h> below

/*
This example prints the Wifi shield's MAC address, and
scans for available Wifi networks using the Wifi shield.
Every ten seconds, it scans again. It doesn't actually
connect to any network, so no encryption scheme is specified.
Circuit:

  • WiFi shield attached
    created 13 July 2010
    by dlf (Metodo2 srl)
    modified 22 April 2012
    by Tom Igoe
    /
    #include <SPI.h>
    #include <WiFi.h>
    void setup() {
    // initialize serial and wait for the port to open:
    Serial.begin(9600);
    // 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.print("MAC: ");
    Serial.print(mac[5],HEX);
    Serial.print(":");
    Serial.print(mac[4],HEX);
    Serial.print(":");
    Serial.print(mac[3],HEX);
    Serial.print(":");
    Serial.print(mac[2],HEX);
    Serial.print(":");
    Serial.print(mac[1],HEX);
    Serial.print(":");
    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.print("number of available networks:");
    Serial.println(numSsid);
    // print the network number and name for each network found:
    for (int thisNet = 0; thisNet<numSsid; thisNet++) {
    Serial.print(thisNet);
    Serial.print(") ");
    Serial.print(WiFi.SSID(thisNet));
    Serial.print("\tSignal: ");
    Serial.print(WiFi.RSSI(thisNet));
    Serial.print(" dBm");
    Serial.print("\tEncryption: ");
    Serial.println(WiFi.encryptionType(thisNet));
    }
    }

COSM_FEED_WIFI.ino (4.84 KB)

James you refer me to the wifly lib.

My question is regarding why i cant see the "wifi.h" lib on my mac? i have the latest version too.

Am I missing something obvious here? When referred to the arduino.cc lib reference there is no link to specifically download this wifi.h/cpp to my mac.

Sorry if this seems simple to most

ie Libraries - Arduino Reference

states there is a wifi lib but i dont see it in my mac lib list under sketch/ import/ lib

hope that makes sense

The SparkFun WiFi library is not a standard library included with the Arduino IDE.

You must download it. Put the contents in a folder (probably called "WiFi") in the folder ~/Documents/Arduino/libraries.

If you haven't installed any 3rd party libraries yet, you'll need to create the libraries folder first.

Are you sure this is a sparkfun lib when it's on the arduino site I stated above?

I linked to the Sparkfun WiFly library which works with the chip you are using.

The Arduino WiFi Library is downloaded from this page (http://arduino.cc/en/Main/ArduinoWiFiShield) and only works with the Arduino-branded WiFi Shield.

James I appreciate your help on this.

Are you saying that the wireless modules have there own libraries and shield has nothing to do with it?

So i can use the arduino wireless proto shield OR the spark xbee shield to work with the wifly lib you suggested.

Specific hardware has specific libraries to go with it.

It is generally based on the chip being used.

Ok that makes sense for sure...

Im still curious about the wifi.h library that I cant access/find. Im guessing now this is made solely for the Arduino wifi shield only?

Im hoping I can now use my Arduino wireless proto shield with the RN XV but now need to find a new cosm sketch with the wifly lib you refered me to.

Really appreciate your help on this. Thanks

Ok just seen you reply regarding wifi lib being specific to the arduino wifi sheild. Cheers