Here is a page describing how I upgraded my WiFI Shield a Uno R3 board with Arduino 1.0.5r2 Software, a Windows 8.1 machine and WiFi Shield Model R3. I hope it works for you too. This upgrades the AT32UC3 and the HDG104 modules firmware.
-
Download and install Flip from here. http://www.atmel.com/tools/FLIP.aspx You don't need to use or run the Flip program. There is a sub-program in the download you will need to use later. You will get to this sub-program (batchslip.exe) using a DOS command prompt. There is also a driver for the chip on the WiFi Shield (AT32UC3A or AT32UC3A DFU) that you will need in the Flip Download.
-
If you recently installed a version of Arduino onto your computer, both Firmware Update software sets you need to update the WiFi Shield are in the Arduino directory structure. I know this to be true for me when I recently installed Arduino Version 1.0.5. (You might need to install a current version).
-
Connect your WiFI Shield to the Uno board. Put the jumper across both pins on 'DFU Programming Jumper'. Shown on 4th picture of the WiFi Shield on this page: ? http://arduino.cc/en/Main/ArduinoWiFiShield
To find the picture of the jumper, look for the words and arrow pointing down on to the board “ DFU programming jumper (only used for updating shield firmware, leave unconnected for typical use)”. -
Connect power to your Arduino. Then connect a mini USB to the WiFi shield (not a micro-USB) and then to your computer.
-
Hopefully your Windows 'Device Manager' will show AT32UC3A DFU under “Other Devices”. You may have to play with plugging/ unplugging power to Arduino and also the WiFI Shield's USB port connected to your computer. One time I had luck by not powering the Arduino and only plugging in the USB mini between computer and the WiFi Shield.
-
Right-Click on the device in 'Device Manager' and select “Update Driver” . I chose to install from my computer(instead of Internet) and directed the Device Installer application to Install from... C:\Program Files (x86)\Atmel\Flip 3.4.7 . I had an option to click “Include Subdirectories'. Sorry, I am not certain what sub-folder the driver might actually be in. When this step is complete, The AT32UC3A DFU should be properly listed in Device Manager under “Atmel USB Devices”.
-
Open a command prompt and navigate to the directory where “batchslip.exe” was installed by Flip. For me it was C:\Program Files (x86)\Atmel\Flip 3.4.7\bin ...but it depends where the Atmel software is installed and what version you download.
-
Once you are in the directory ( C:\Program Files (x86)\Atmel\Flip 3.4.7\bin) , you will need to run two commands. You will need to determine where you initially installed your Arduino software. I installed mine in C:\Arduino instead of the recommended lengthy folder suggested ( * something like C:\Arduino 1.0.5.\ * ) .. Therefore you might need to adjust the directory structure in the two commands I have listed below. I suggest cut and paste the first command from below, then make it match your * Arduino* folder name. You may have to dump the following command in to a notepad or something to make sure there are no line breaks.
“
c:\Program Fils (x86)\Atmel\Flip 3.4.7\bin>batchisp.exe -device AT32UC3A1256 -hardware usb -operation erase f memory flash blankcheck loadbuffer c:\Arduino\hardware\arduino\firmwares\wifishield\binary\wifi_dnld.elf program verify start reset 0
“
Here is what you should see on the command line..........
Running batchisp 1.2.5 on Sat May 10 21:16:01 2014
AT32UC3A1256 - USB - USB/DFU
Device selection....................... PASS
Hardware selection..................... PASS
Opening port........................... PASS
Reading Bootloader version............. PASS 1.0.2
Erasing................................ PASS
Selecting FLASH........................ PASS
Blank checking......................... PASS 0x00000 0x3ffff
Parsing ELF file....................... PASS c:\Arduino\hardware\arduino\firmwares\wifishield\binary\wifi_dnld.elf
WARNING: The user program and the bootloader overlap!
Programming memory..................... PASS 0x00000 0x2902b
Verifying memory....................... PASS 0x00000 0x2902b
Starting Application................... PASS RESET 0
Summary: Total 11 Passed 11 Failed 0
c:\Program Files (x86)\Atmel\Flip 3.4.7\bin>
- Now to update the second piece
Cut and paste the command from below. You may have to dump it in to a notepad or something to make sure there are no line breaks.
“
c:\Program Files (x86)\Atmel\Flip 3.4.7\bin>batchisp.exe -device AT32UC3A1256 -hardware usb -operation erase f memory flash blankcheck loadbuffer c:\Arduino\hardware\arduino\firmwares\wifishield\binary\wifiHD.elf program verify start reset 0
“
Press Enter
Here is what will happen on your screen..
Running batchisp 1.2.5 on Sat May 10 21:34:04 2014
AT32UC3A1256 - USB - USB/DFU
Device selection....................... PASS
Hardware selection..................... PASS
Opening port........................... PASS
Reading Bootloader version............. PASS 1.0.2
Erasing................................ PASS
Selecting FLASH........................ PASS
Blank checking......................... PASS 0x00000 0x3ffff
Parsing ELF file....................... PASS c:\Arduino\hardware\arduino\firmwares\wifishield\binary\wifiHD.elf
WARNING: The user program and the bootloader overlap!
Programming memory..................... PASS 0x00000 0x3fe2b
Verifying memory....................... PASS 0x00000 0x3fe2b
Starting Application................... PASS RESET 0
Summary: Total 11 Passed 11 Failed 0
c:\Program Files (x86)\Atmel\Flip 3.4.7\bin>
-
Remove the Jumper from the WiFi Card. Remove the Min USB.
-
To Verify your version, here is a Sketch
==================================
#include <WiFi.h>
#include <WiFiClient.h>
#include <WiFiServer.h>
#include <WiFiUdp.h>
// This mini program checks your WiFi Shield for the current version.
// Assembled by Mark Matthias May 10 2014
void setup(){
Serial.begin(9600);
Serial.print("Current Firmware Version: ");
Serial.println( WiFi.firmwareVersion());
}
void loop(void)
{
}
=================
After uploading, Open Serial Monitor. I updated mine and the print out on Serial Monitor is:
“Current Firmware Version: 1.1.0”
It used to be 1.0.0 .
Not sure if these steps work with anything else. I used a Uno R3 board with Arduino 1.0.5r2 Software, a Windows 8.1 machine and WiFi Shield Model R3.
Good Luck.