Installing the compiled code
With the secure bootloader initial installation of the firmware is slightly different. Upgrades are easier and don't require to connect hardware wallet to the computer.
Flashing initial firmware
Note If you don't want to use binaries from the releases check out the bootloader documentation that explains how to compile and configure it to use your public keys instead of ours.
- If you are upgrading from versions below
1.4.0
or uploading the firmware for the first time, use theinitial_firmware_<version>.bin
from the releases page.- Verify the signature of the
sha256.signed.txt
file against Stepan's PGP key - Verify the hash of the
initial_firmware_<version>.bin
against the hash stored in thesha256.signed.txt
- Verify the signature of the
- If you are upgrading from an empty bootloader or you see the bootloader error message that firmware is not valid, check out the next section - Flashing signed Specter firmware.
- Make sure the power jumper of your discovery board is at STLK position
- Connect the discovery board to your computer via the miniUSB cable on the top of the board.
- The board should appear as a removable disk named
DIS_F469NI
.
- The board should appear as a removable disk named
- Copy the
initial_firmware_<version>.bin
file into the root of theDIS_F469NI
filesystem. - When the board is done flashing the firmware the board will reset itself and reboot to the bootloader. Bootloader will check the firmware and boot into the main firmware. If see an error message that no firmware is found - follow the update instructions and upload firmware via SD card.
- Now you can switch the power jumper where you like it and power the board from the powerbank or battery.
Flashing initial firmware via copy-paste of the
.bin
file sometimes fails - often because of the cable, or if you connect the device through a USB hub. In this case you can try a few more times (normally works in 2-3 attempts).If it fails all the time you can use stlink open-source tool. Install it and type in your terminal:
st-flash write <path/to/initial_firmare.bin> 0x8000000
. It usually works much more reliable.
Upgrading firmware
- Download the
specter_upgrade_<version>.bin
from the releases. - Copy this binary to the root of the SD card (FAT-formatted, 32 GB max)
- Make sure only one
specter_upgrade***.bin
file is in the root directory
- Make sure only one
- Insert SD card to the SD slot of the discovery board and power on the board
- Bootloader will flash the firmware and will notify you when it's done.
- Reboot the board - you will see Specter-DIY interface now, it will suggest you to select your PIN code
Whenever a new release is out just download the specter_upgrade_<version>.bin
from the releases, drop it to the SD card and upgrade the device just like in the previous step. Bootloader will make sure only signed firmware can be loaded to the board.
How to find out firmware version
Go to the Device settings
menu - it will show the version number under the title of the screen.