Arduino Uno Wi-Fi Shield Setup and Testing

2017-06-28 03:28:59 by


Using the Adafruit Wi-Fi shield with Uno for basic Wi-Fi Connectivity

Setup guide online at


You will need to solder on the connector pins to the Wi-Fi shield following the steps below.

Start with some connector pins and place them in the Wi-Fi shield to setup for soldering:

Once you have them soldered you should be able to connect your Arduino to your host PC and run some example code:


The CC3000 is (electrically) fairly simple to use. The module requires an SPI connection, including a clock (CLK), data in from a microcontroller (MOSI) and data out to the microcontroller (MISO). It also uses a chip-select line (CS) for SPI to indicate when a data transfer as started

Along with the SPI interface, there is a power-enable type pin called VBAT_EN which we use to start the module properly and also an IRQ pin, which is the interrupt from the CC3000. The IRQ pin is required to communicate and must be tied to an interrupt-in pin on the Arduino. On the Mega/UNO, we suggest #2 or #3

On the CC3000 shield, we use the following pin connections

  • SCK – #13
  • MISO #12
  • MOSI #11
  • CS for CC3000 #10
  • VBAT_EN #5
  • CS for SD Card #4
  • IRQ #3

From <>

Make sure your Arduino is powered by a 1 amp or higher rated external power supply when using with the CC3000! Powering an Arduino + CC3000 from a computer/laptop USB port will lead to unstable behavior and lockups because the USB port can’t supply enough power!

From <>


Download the Library

We will start by downloading the Adafruit CC3000 Library, available from our GitHub repository.

From <>


Quick guide to installing third party libraries:

Should now see Sketch examples from Adafruit CC3000 library in Arduino IDE:



Next run build test to make sure Wi-Fi is working properly:



The buildtest sketch does a full test of core WiFi connectivity:

It’s a good idea to run this sketch when first setting up the module. It will let you know that everything is working correctly.

Before you run the sketch, edit it to replace the dummy SSID and password with your own:

  1. #define WLAN_SSID       “yourNetwork”        // cannot be longer than 32 characters!
  2. #define WLAN_PASS       “yourPassword”

If you’re using WEP, the password should look like this:

const char WLAN_PASS[] = {0x1A, 0x2B, 0x3C, 0x4D, 0x5E, 0x00};

Since it’s a collection of bytes not ‘passphrase’ style key

Also, make sure that the right wireless security scheme is selected (unsecured, WEP, WPA, or WPA2)


From <>


Should get results like below: (edited to remove Wi-Fi network info)


Note: make sure your baud rate in serial monitor window is set to same baud rate specified in sketch or else you won’t see the right data




Hello, CC3000!


RX Buffer : 131 bytes

TX Buffer : 131 bytes

Free RAM: 1165


Initialising the CC3000 …

Firmware V. : 1.24

MAC Address : 0x08 0x00 0x28 0x57 0xAD 0xA4

Networks found: 1


SSID Name    : Test

RSSI         : 65

Security Mode: 3



Deleting old connection profiles


Attempting to connect to Test


Request DHCP



IP Addr:




DNSserv: ->


Pinging…5 replies

Ping successful!



Closing the connection




You can continue testing the rest of the sketch examples provided by Adafruit.




Read Comments