Upgrading the Puffin's Firmware

New features and bug fixes can be accomplished by upgrading the Puffin's firmware to the latest version. Currently, version 1.03 is the shipping firmware version. Using the supplied allen key and USB cable, the Puffin can be updated via an internal micro USB header with either a Windows or Mac OS system. 


Windows Method:

Note: Skip step 2 for recurring firmware updates (i.e. you only do this step once).

  1. Download and unzip the latest Puffin firmware: Firmware V1.03

  2. Download and unzip puffin.zip from the website: http://www.parksaudiollc.com/puffin.zip
  3. Then unzip puffin.zip and run "STM32 ST-LINK Utility v4.2.0 setup". This installs the programming software in your program list and also loads the USB driver.

  4. Unscrew the four corner screws on the Puffin top plate. This requires a 5/64" Hex Driver or Allen Wrench (supplied with Puffin).
  5. Connect USB cable (supplied with Puffin) to Windows computer. Connect USB-Micro connector to Puffin board - connector has sticker marked L432KC. No power is needed as it is powered via USB.
  6. Run the STM32 ST-LINK Utility from your program list or Desktop shortcut (ie the program, not the installer again).
    1. Select Target>Erase Chip.
    2. Select Target>Program & Verify and choose "V103.hex" (located in Downloads folder or where unzipped).
    3. Select Start.
  7. The Puffin has been upgraded. It can now be disconnected and screwed back into the chassis.

macOS (10.11 & higher) Method:

Note: Skip steps 3 & 4 for recurring firmware updates (i.e. you only do these steps once).

  1. Download and unzip the latest Puffin firmware: Firmware V1.03

  2. Start the Terminal app using either of the following methods:
         a. Press Command+Space and type Terminal and press return key.
         or
         b. Finder>Applications>Utilities>Terminal. Double-click on Terminal.

  3. Cut-n-paste (Command+C then Command+V) the following highlighted text into the Terminal app:
    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    and press return key.
    If the screen prompts you to enter a password, please enter your Mac's user password to continue. When you type the password, it won't be displayed on screen, so just type your password and press return key. Then wait for the command to finish.
    This step installs Homebrew: a macOS installer package. This permits loading the update software and USB drivers in the next step.

  4. Cut-n-paste the following and run in the Terminal app:
    brew install stlink
  5. Unscrew the four corner screws on the Puffin top plate. This requires a 5/64" Hex Driver or Allen Wrench (supplied with Puffin).
  6. Connect USB cable (supplied with Puffin) to Mac. Connect USB-Micro connector to Puffin board - connector has sticker marked L432KC. No power is needed as it is powered via USB.
  7. Cut-n-paste the following text and run in the Terminal app (note: change the word Downloads to Documents or Desktop if you moved the hex file after downloading.:
    st-flash --format ihex write ~/Downloads/V103.hex

  8. The software should say "Flash written and verified! jolly good!" if the Puffin has been upgraded. It can now be disconnected and screwed back into the chassis.

Linux Method:

Same as macOS method, but replace steps 3 & 4 with st-link installation instructions located here: https://github.com/texane/stlink


Rev history:

V1.00
5/16/2018
Initial release. SP

V1.01
6/8/2018
Added flash saves at Set?>OFF, Set?>LOAD, Set?>SAVE, and main menu Gain change. Moved phase polarity to pre-DSP so we can get 2H cancellation. SP

V1.02
6/15/2018
Fixed Load setting bug where 200 ohms setting could be overwritten to 47k. SP

V1.03
8/25/2018
Screen refresh timer was active during standby sleep. Would cause faint flicker on LCD if Puffin turned off with main menu set to Set? or Signal Levels. SP