Controlling FlashAir with Arduino

Latest update: October 2014

The FlashAir card contains a fully featured WiFi device, meaning that your Arduino project can toggle wireless LAN, switch to AP or STA mode, and communicate via HTTP.


iSDIO (intelligent SDIO) is an SD Association standard used to control advanced SD memory cards, such as FlashAir.

Specifically, iSDIO is a process for passing commands back and forth between SD cards and host devices, based on specifications provided by "Addendums".

For example, FlashAir is compliant with the "Wireless LAN Addendum".

A simplified version of the iSDIO specification is available for download from the SD Association .


An Arduino is a microcomputer board famous for its use for product prototyping. Arduino is Open Source, meaning that its architecture and circuit diagrams are freely available - making it easy to create clones or other Arduino-compatible boards.

For more information, see the official website .


1. Get all the components and set up the Development Environment

This tutorial describes how to write and execute a program on the Arduino, then check the log and wireless LAN condition. To develop, you will need to the following device.

This tutorial explains how to write and execute an Arduino program that checks the wireless LAN status on a FlashAir.

There are many different Arduino models available, with varied specifications, but for this tutorial we'll just be using the main board - the Arduino Uno R3 .

Unfortunately the R3 does not come with an SD card slot by default, so you will need to use an extension board. Because of the FlashAir's power requirements it's a good idea to use a board with a power circuit separate from the main board - such as the Seeed Studio SD Card Shield v4 .

We will also need a USB cable. The Arduino uses a standard "B" size connector, micro and mini B connectors (used for many smartphones and tablets) will be too small.

You're also going to need a FlashAir card, you can pick one up at an appliance store or order it online.

Finally, download the Arduino IDE 1.0.5 . We'll be using it to write, compile, and run our application. It's available for Windows, OSX, and Linux; however in this tutorial we'll be using the Windows edition. See the IDE documentation for details on running it elsewhere.

The final ingrediants list is:

2. Get familiar with your FlashAir

It's useful to know how to check the FlashAir's WiFi status (since this is an easy way to tell if it's powered and online).

If your card is in AP mode, it's SSID should show up on your computers Wireless LAN config screen.

In STA mode it won't, but you should be able to check if it's active by checking your router or by pinging it's IP address.

Prior Knowledge Required

Arduino terms

Arduino has some unique terms.

Means program.
Means optional board.

SD card standard

Your FlashAir will be controlled by iSDIO, and prior knowledge of the SD card standard and the SPI signal standard will be helpful.