# Difference between revisions of "Firmware Upgrade"

This page details how to upgrade the Fluke and Scribbler and Scribbler2 robots to use the latest Myro firmware, over Bluetooth.

# Calico

1. Start Calico
2. Switch to the Shell, using the Python language
3. Import upgrade and use it:
  python> from firmwareupgrade import upgrade


There are other, more advanced, functions for upgrading from a file, etc. See the code in Calico/languages/Python/modules/upgradefirmware/ folder.

This section details the upgrade.py program for upgrading the Fluke and Scribbler and Scribbler2 robots. The program starts up a graphical user interface by default (if available), but it can also be used as a command line program (see below for options).

This program requires that you have a version of regular Python installed on your system (Calico Python won't work) ([video: installing Python on Windows Machine]). You also need to have pySerial installed ([video: installing pyserial on windows machine]).

1. Download Media:pyserial.zip and place the pyserial\pyserial-2.6\serial folder in the C:\Python*\Lib\ folder.
3. Double-click on the file (or use the Command Line Option, below) [video: installing and using the Firmware upgrade tool under windows]

NOTE: you may have to kill the upgrade program via the Task Manager to get it to release the serial port. Otherwise, Myro won't be able to connect onto the serial port.

If you have a Fluke purchased before September 2011, you will need to upgrade the Fluke first:

1. Select the Fluke option
2. On Windows, enter the com port (eg, COM8); on Mac/Linux enter the device path (eg, /dev/tty.scribbler or /dev/rfcomm0)
3. Click on the Upgrade button

1. Select the Scribbler option
2. On Windows, enter the com port (eg, COM8); on Mac/Linux enter the device path (eg, /dev/tty.scribbler or /dev/rfcomm0)
3. Click on the Upgrade button

# Troubleshooting Problems

• Windows:
• Problem: When I double click on the upgrade.py file, I see a black window flash open and then close and nothing happens.
• Path to a solution: From the start menu, choose run, and then type cmd and say OK. The black window will open. Now you need to navigate to the folder that has your upgrade.py file in it. Suppose you're in C:\Documents and Settings and your upgrade.py is in D:\foo\bar\ First, type d: (and hit enter) in the black window to change to your d drive. Then using the cd (change directory command) change to the folder where your upgrade.py is e.g. cd \foo\bar and hit enter. Now, typing upgrade.py (and enter) will let you see the error message. Hopefully when you see the error message you can figure out what you need to do!

# Graphical User Interface

To use the upgrader, indicate what you want to upgrade (Fluke or Scribbler) by selecting the appropriate radio button. (Default: Scribbler).

Then, type in the name of your bluetooth serial port, such as "COM4" or "/dev/tty.scribbler" (without quotes).

Make sure you are connected to the Internet so that the tool can download the latest firmware.

# Command Line Options

1. Open a console/terminal window.
2. cd to the known location
3. Enter at the console prompt:
Fluke and Scribbler/Scribbler2 Upgrade Program
----------------------------------------------
Usage:
python upgrade.py --gui=VALUE --url=URL --port=PORT WHAT

VALUE - is True OR False
URL - is an internat address to use
PORT - is the serial port address to use
WHAT - is scribbler OR fluke

Options with examples:
--gui=False                      (optional)
--port=COM8                      (optional)
--url=http://myurl.com/fluke.bin (optional)
--help

Full Examples: