kopia lustrzana https://github.com/mobilinkd/tnc3-firmware
				
				
				
			
		
			
				
	
	
		
			340 wiersze
		
	
	
		
			13 KiB
		
	
	
	
		
			Markdown
		
	
	
			
		
		
	
	
			340 wiersze
		
	
	
		
			13 KiB
		
	
	
	
		
			Markdown
		
	
	
# Firmware Update Process for TNC3 on Microsoft Windows 10
 | 
						|
 | 
						|
This document outlines the firmware update process for the Mobilinkd TNC3
 | 
						|
for Microsoft Window, focusing on Windows 10.  The update process should
 | 
						|
be similar enough for all Windows versions back to Windows 7.
 | 
						|
 | 
						|
Please note that the firmware update software is cross-platform, so the
 | 
						|
actual firmware update process is the same for Windows, Linux and MacOS.
 | 
						|
 | 
						|
The first part of this document outlines the download and installation
 | 
						|
process of the firmware programming software and the required device
 | 
						|
drivers.
 | 
						|
 | 
						|
The second part of this document outlines the firmware upgraded process
 | 
						|
using the STM32CubeProgrammer software.
 | 
						|
 | 
						|
The third part of this document outlines troubleshooting steps.
 | 
						|
 | 
						|
If you have already downloaded and installed the STM32CubeProgrammer
 | 
						|
software, feel free to skip to the [Firmware Update Section](#firmware-update-process).
 | 
						|
 | 
						|
# Installing the Firmware Programmer and Device Drivers
 | 
						|
 | 
						|
The Mobilinkd TNC3 uses the STM32CubeProgrammer software from
 | 
						|
STMicroelectronics to perform firmware updates.  This is a comprehensive
 | 
						|
and cross-platform firmware update tool.
 | 
						|
 | 
						|
You will be performing the following steps:
 | 
						|
 | 
						|
 - Downloading the software
 | 
						|
 - Unzipping the software
 | 
						|
 - Running the installer
 | 
						|
 - Installing Java (if not already installed)
 | 
						|
 - Installing the firmware update software
 | 
						|
 - Installing the device drivers
 | 
						|
 
 | 
						|
## Download the Software
 | 
						|
 | 
						|
The firmware update tool is available from here:
 | 
						|
https://s3.amazonaws.com/mobilinkd/en.stm32cubeprog-1.4.0.zip
 | 
						|
 | 
						|
### Download the File
 | 
						|
 | 
						|

 | 
						|
 | 
						|
### Open the File
 | 
						|
 | 
						|

 | 
						|
 | 
						|
### Extract the Files
 | 
						|
 | 
						|
Double-click the executable file.  Windows will ask you to extract all
 | 
						|
files.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select "Extract all".
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Make sure that "Show extracted files when complete" is selected.  Once
 | 
						|
complete, you will be presented with a new file browser showing the
 | 
						|
extracted files.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
### Install Java
 | 
						|
 | 
						|
Double-click the SetupSTM32CubeProgrammer-1.4.0.exe to run the installer.
 | 
						|
 | 
						|
You may be presented with a warning screen.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select "Yes" to continue.
 | 
						|
 | 
						|
At this point you may be presented with a message saying that Jave is
 | 
						|
required.  This section will guide you through the installation
 | 
						|
process.  If this does not appear for you, please skip to the next
 | 
						|
section.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select "OK" to continue.  You will be presented with a browser window
 | 
						|
to download the Java Runtime Environment.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Windows may ask you to approve this software installation.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select "Yes" to continue.  You will see the Java installation window appear.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Once complete, you will need to go back to the File Browser showing the 
 | 
						|
STM32CubeProgrammer extracted files.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Double-click the SetupSTM32CubeProgrammer-1.4.0.exe to run the installer.
 | 
						|
 | 
						|
You may be presented with a warning screen.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select "Yes" to continue.
 | 
						|
 | 
						|
### Install STM32CubeProgrammer
 | 
						|
 | 
						|
Follow the installation screens, choosing the defaults.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select "Next".
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Skip the information... select "Next".
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Accept the terms of the software license agreement and press "Next".
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Unless you have a very good reason to change the location of the installed
 | 
						|
software, use the default path and select "Next.
 | 
						|
 | 
						|
You may be presented with a dialog informing you the location will be created.
 | 
						|
Select "OK".
 | 
						|
 | 
						|

 | 
						|
 | 
						|
The next screen asks which components should be installed.  You should just
 | 
						|
select the default components as these are all that is required for the
 | 
						|
firmware update process on the Mobilinkd TNC3.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
The installation process will begin...
 | 
						|
 | 
						|

 | 
						|
 | 
						|
After the software is installed, the installer will install the required
 | 
						|
device drivers.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select "Next" to proceed with the installation.  You may be asked to confirm
 | 
						|
the installation of the drivers.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select "Install" to proceed.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
When finished, you will see the following.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select "Finish" to proceed.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
When complete, select "Finish" to proceed. The installer will finalize the
 | 
						|
installation.  Accept the defaults for the next two screens.
 | 
						|
 | 
						|

 | 
						|
 | 
						|

 | 
						|
 | 
						|
The firmware update software is installed and an icon exists on the desktop.
 | 
						|
 | 
						|
# Firmware Update Process
 | 
						|
 | 
						|
This section will walk you through the firmware update process.  The
 | 
						|
STM32CubeProgrammer is fairly complex, and it is easy to unintentionally
 | 
						|
damage the TNC if the instructions are not carefully followed.
 | 
						|
 | 
						|
## Download the Firmware File
 | 
						|
 | 
						|
To start, download the latest firmware for the TNC3 from the [Mobilinkd
 | 
						|
Downloads page](http://www.mobilinkd.com/downloads/?dl_cat=6).  The file
 | 
						|
will have a ".elf" extension.
 | 
						|
 | 
						|
## Prepare the TNC
 | 
						|
 | 
						|
The Mobilinkd TNC3 includes a USB-based DFU (device firmware update) bootloader.
 | 
						|
 | 
						|
Before we begin, it is helpful to review the TNC3 physical features.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
The DFU button is used to put the TNC into firmware update mode.
 | 
						|
 | 
						|
To update the firmware you will need a USB cable with a micro-USB connector.
 | 
						|
You will also need a ball-point pen or something that can be inserted into
 | 
						|
the hole in the case where the DFU button is.
 | 
						|
 | 
						|
To enter the bootloader, follow these steps:
 | 
						|
 | 
						|
 - If you have connected any app to the TNC (APRSdroid, aprs.fi, etc)
 | 
						|
   ensure that those apps are disconnected from the TNC.  This is very
 | 
						|
   important as having one of these apps attempt to connect to the TNC
 | 
						|
   may interfere with the ability to enter the bootloader.
 | 
						|
 - Start with the TNC powered off and disconnected from radio and USB.
 | 
						|
 - Turn on the TNC.
 | 
						|
 - Plug USB cable into the computer.
 | 
						|
 - Plug the USB cable into the TNC.  The computer should add a new COM port.
 | 
						|
 - Turn the TNC off for a few seconds, then turn it back on.
 | 
						|
 - After the blue LED flashes at least once, use the tip of a ball-point
 | 
						|
   pen to gently press the DFU button.  You should see the red LED briefly
 | 
						|
   flash, and the blue LED will stop blinking.
 | 
						|
 | 
						|
The TNC is now ready to accept a firmware update.  If you wish to abandon
 | 
						|
this process, use the same pen to gently depress the reset button.
 | 
						|
 | 
						|
## Update the Firmware
 | 
						|
 | 
						|
In this section we are going to:
 | 
						|
 | 
						|
 - Start the STM32CubeProgrammer
 | 
						|
 - Connect to the TNC's bootloader
 | 
						|
 - Load the firmware file
 | 
						|
 - Write the firmware to the TNC
 | 
						|
 | 
						|
### Start the STM32CubeProgrammer
 | 
						|
 | 
						|
When the STM32CubeProgrammer was installed, it should have put an
 | 
						|
application shortcut on your desktop.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Find the shortcut and click it.  The firmware update software will start.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
### Connect to TNC
 | 
						|
 | 
						|
In the upper left, there is a blue and a yellow button.  Press the blue
 | 
						|
button to access the drop-down menu and select "USB".
 | 
						|
 | 
						|

 | 
						|
 | 
						|
You should see a device named "USB1" available.  If you do not see it, press
 | 
						|
the refresh button next to the port selection dropdown.
 | 
						|
 | 
						|
**If you still do not see a device labeled USB1, press the reset button and
 | 
						|
repeat the steps to enter the bootloader.  If you still do not see the
 | 
						|
device listed, go the the [Troubleshooting](#troubleshooting) section.**
 | 
						|
 | 
						|
Press the yellow "Connect" button to connect to the TNC.  The device's
 | 
						|
firmware will be downloaded from the TNC.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
### Load the Firmware File
 | 
						|
 | 
						|
Click on the "Erasing and Programming" icon on the left side of the
 | 
						|
programmer.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
This will bring up the firmware update screen.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Click on the "Browse" button.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Select the firmware file that was downloaded at the beginning of this process.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
Ensure that the options "Verify programming" and "Run after programming" are
 | 
						|
both enabled.
 | 
						|
 | 
						|
Press the "Start Programming" button.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
When it is complete, the TNC will restart and disconnect from the
 | 
						|
STM32CubeProgrammer application.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
This warning message is normal.
 | 
						|
 | 
						|
You can now close the STM32CubeProgrammer and launch the config app on either
 | 
						|
Android or iOS and verify that the firmware version is correct.
 | 
						|
 | 
						|
# Troubleshooting
 | 
						|
 | 
						|
This section is very brief for now.
 | 
						|
 | 
						|
## TNC is not available in programmer
 | 
						|
 | 
						|
There are a number of possible causes for the TNC not showing up in the programmer.
 | 
						|
 | 
						|
### Is Bootloader Active
 | 
						|
 | 
						|
The first thing to check is that the bootloader is active.  If the blue LED flashes or breathes,
 | 
						|
the bootloader is not active.  See [Cannot Enter Bootloader/DFU](#Cannot-Enter-Bootloader-DFU) below.
 | 
						|
 | 
						|
### Check Your USB Cable
 | 
						|
 | 
						|
The TNC has a USB serial port.  You should see a notification when the TNC is first attached via USB,
 | 
						|
before entering the bootloader, that a COM port is being added.  If you do not see this occur, verify
 | 
						|
that your USB cable is OK.  Try a different cable.  There are a number of "charge-only" cables being
 | 
						|
sold these days.  These will not work.  You will need a USB data cable.
 | 
						|
 | 
						|
### Old STM DFU Driver Installed
 | 
						|
 | 
						|
Open the device manager.
 | 
						|
 | 
						|
Check whether “STM Device in DFU Mode” appears under the “Universal Serial Bus Controllers”
 | 
						|
 | 
						|
If this device appears, right click the device, and select "Uninstall device".
 | 
						|
 | 
						|
Open a file browser and go to:
 | 
						|
 | 
						|
C:\Program Files (x86)\STMicroelectronics\STM32Cube\STM32CubeProgrammer\Drivers\DFU_Driver
 | 
						|
 | 
						|
Run the "STM32Bootloader.bat" file in there to re-install the DFU device drivers.
 | 
						|
 | 
						|
Refresh the device list in the STM32CubeProgrammer window.
 | 
						|
 | 
						|
## Cannot Enter Bootloader/DFU
 | 
						|
 | 
						|
Verify that the TNC's blue LED indicates that the TNC is disconnected by
 | 
						|
being in the "slow breathing" state.
 | 
						|
 | 
						|
If the TNC is connected to any device (blue LED indicating a double blip
 | 
						|
or triple blip), the TNC will not enter DFU mode.  Find the app that is
 | 
						|
connected and disconnect it.
 |