Arduino WiFi Shield 101

The Arduino WiFi Shield 101 is a powerful IoT shield with crypto-authentication which allows you to wirelessly connect your Arduino or Genuino with ease. This shield is perfect for your IoT projects!

Note: This page refers to a product that is retired.

The Arduino WiFi Shield 101
The Arduino WiFi Shield 101

Arduino WiFi Shield 101 is a powerful IoT shield with crypto-authentication, developed with ATMEL, that connects your Arduino or Genuino board to the internet wirelessly. Connecting it to a WiFi network is simple, no further configuration in addition to the SSID and the password are required. The WiFi 101 Shield comes with an easy-to-use library that allows to connect your Arduino or Genuino board to the internet with few instructions. As always, every element of the platform – hardware, software and documentation – are freely available and open-source. This means that you can learn exactly how it's made and use its design as the starting point for your own projects.

  • Operating voltage both 3.3V and 5V (supplied from the host board)
  • Connection via: IEEE 802.11 b/g/n for up to 72 Mbps networks
  • Encryption types: WEP and WPA2 Personal
  • Support TLS 1.1 (SHA256)
  • Connection with Arduino or Genuino on SPI port
  • Onboard CryptoAuthentication by ATMEL

You can find here your board warranty information.

The WiFi Shield 101 needs certificates to ensure SSL connection. To upload new certificates and update the firmware, please refer to the Utilities section in the WiFi101 Library reference.

Getting Started

You can find in the Getting Started section all the information you need to configure your board, use the Arduino Software (IDE), and start tinker with coding and electronics.

Need Help?


OSH: Schematics

The Arduino WiFi Shield 101 is open-source hardware! You can build your own board using the following files:



The Arduino WiFi Shield 101 allows an Arduino or Genuino board to connect to the internet using the IEEE 802.11 wireless specifications (WiFi). It is based on the Atmel SmartConnect-WINC1500 module, compliant with the IEEE 802.11 b/g/n standard. The WINC1500 module provided is a network controller capable of both TCP and UDP protocols. Use the WiFI library to write sketches which connect to the internet using the shield. The WiFI shield connects to an Arduino or Genuino board using long wire-wrap headers which extend through the shield. This keeps the pin layout intact and allows another shield to be stacked on top.

The WiFi Shield 101 also features an hardware encryption/decryption security protocol provided by the ATECC508A CryptoAuthentication chip that is an ultra secure method to provide key agreement for encryption/decryption, specifically designed for the IoT market.

Digital pin 7 is used as a handshake pin between the WiFi 101 Shield and the board, and should not be used.

Digital pin 5 is used as RESET pin between the WiFi 101 Shield and the board, and should not be used.

Usage with Arduino/Genuino UNO board

Please note that Uno + WiFi Shield 101 is not compatible with the Software Serial library.

The WiFi Shield 101 carries a library that is very complex and occupies more than 60% of the available memory, leaving little room for sketches.

Please keep in mind even if that basic usage is supported for the Uno, for complex projects we strongly recommend to use the WiFi Shield 101 with a Arduino/Genuino Zero, 101 or Mega 2560.

Example MQTT (complex)Example WiFi Web Server (easy)
MEGA 256011%10%

(Reference: MQTT sketch, Wifi Web server example from WiFiShield101 library)

For a better understanding, the table above shows the memory usage (in %) of two different sketches (Example MQTT and WiFi Web Server) on a Uno, Mega 2560, Zero and 101 board.

On-board Indicators

The shield contains a number of signalling LEDs:

  • ON (green): indicates that the shield is properly powered
  • WIFI (green): indicates a connection to a network
  • ERROR (red): indicates when there is a communication error
  • NETWORK (yellow): indicates that data is received/transmitted

Contribute to Arduino

Join the community and suggest improvements to this article via GitHub. Make sure to read out contribution policy before making your pull request.

Missing something?

Check out our store and get what you need to follow this tutorial.

Suggest Changes

The content on is facilitated through a public GitHub repository. You can read more on how to contribute in the contribution policy.
The Arduino documentation is licensed under the Creative Commons Attribution-Share Alike 4.0 license.