Reference   Language | Libraries | Comparison | Changes

WiFi101 library

This library allows you to use the Arduino WiFi Shield 101 and the MKR1000 board. These are powerful IoT solutions with crypto-authentication, developed with ATMEL, that connects your Arduino or Genuino to the internet wirelessly. Connecting the board or the shield to a WiFi network is simple, no further configuration in addition to the SSID and the password are required. It can serve as either a server accepting incoming connections or a client making outgoing ones. The library supports WEP and WPA2 Personal encryption. Compared to the retired WiFi Shield and the related library, this product and library support all the same methods plus the connectSSL().

The board connected to the shield communicates with the WiFi shield 101 using the SPI bus. This is on digital pins 11, 12, and 13 on the Uno and pins 50, 51, and 52 on the Mega. On both boards, pin 10 is used as SS. On the Mega, the hardware SS pin, 53, is not used but it must be kept as an output or the SPI interface won't work. Digital pin 7 is used as a handshake pin between the WiFi shield 101 and the underlying board, and should not be used. The WiFi101 library is very similar to the Ethernet and the library WiFi, and many of the function calls are the same.

For additional information on the Arduino WiFi Shield 101, see the Getting Started page and the Arduino WiFi Shield 101 hardware page. For more information on MKR1000 see the product page.

Note

This library requires that your board or shield has a matching firmware installed. When the library is updated, also the firmware might be updated, but it is not mandatory. To avoid any issue and ensure that you have the most up to date setup, we suggest that you check your WiFi101 library with the Arduino Software (IDE) Library Manager. There is an option in the Preferences that enables the check for updates of any of the installed libraries at startup. If you haven't installed the WiFi101 library yet, you won't get notified about its updates. Anyway, you get the library status just writing its name in the search field on top of the Library Manager.

When the library version installed on your computer is the latest available, you may check the firmware version of the board or the shield. We have prepared a utility sketch to check the firmware version and its matching with the library. If the firmware needs an update, another utility sketch enables the process. Below the link to the relevant tutorials.

Utilities

  • CheckWiFi101FirmwareVersion : Reads the required firmware number required from library and matches with the one installed on the board or the shield.
  • FirmwareUpdater : The sketch that must be loaded to allow the firmware and certificates update process through the integrated plugin of Arduino Software (IDE) rel. 1.6.10 or later.

Examples

WiFi class

The WiFi class initializes the ethernet library and network settings.

IPAddress class

The IPAddress class provides information about the network configuration.

Server class

The Server class creates servers which can send data to and receive data from connected clients (programs running on other computers or devices).

Client class

The client class creates clients that can connect to servers and send and receive data.

UDP class

The UDP class enables UDP message to be sent and received.

Reference Home

Corrections, suggestions, and new documentation should be posted to the Forum.

The text of the Arduino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.

Share