How to flash NT Modules: Difference between revisions

From STorM32-BGC Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
This page is for instruction on how to flash NT modules with a NT firmware. Proprietary NT modules may require special procedures and/or firmware, please see the producer's documentation.
This page is for instructions on how to flash NT modules with a NT firmware.  
 
Proprietary NT modules (such as those from [https://www.ensys.lt/ ensys]) may require different procedures and/or firmware, please see the vendor's documentation.


== Updating NT Firmware ==
== Updating NT Firmware ==
Line 7: Line 9:


== First-Time Flashing ==
== First-Time Flashing ==
If your NT module has not yet been flashed with a NT firmware, or runs a different firmware because e.g. you're modding some piece of hardware to work as NT module, then one needs to resort to grass roots flashing methods for flashing the NT firmware (first-time flashing). For details see here:  
If your NT module has not yet been flashed with a NT firmware, or runs a different firmware because e.g. you're modding some piece of hardware to become a NT module, then one needs to resort to grass roots flashing methods for flashing the NT firmware (first-time flashing). For details see here:  


* [[Flashing OlliW's NT Modules|OlliW's NT Modules]]
* [[Flashing the Mini CC3D Atom|Mini CC3D Atom]]
* [[Flashing the Mini CC3D Atom|Mini CC3D Atom]]
* [[Flashing the CC3D Atom|CC3D Atom]]
* [[Flashing the CC3D Atom|CC3D Atom]]
* [[Flashing OlliW's NT Modules|OlliW's NT Modules]]


==== General Comments on the First-Time Flashing Process ====
==== General Comments on the First-Time Flashing Process ====


In general the firmware can be flashed in three different ways into the STM32 micro-controllers used in the NT modules (and STorM32 main board):
In general, the STM32 micro-controllers which are used in the NT modules (and STorM32 boards) provide two different built-in methods for flashing firmware:  


# via the serial (system) bootloader using a USB-TTL adapter
# via the serial system bootloader using the STorM32 board (or a USB-TTL adapter)
# via SWD using a ST-Link programmer
# via SWD using a ST-Link programmer
# via a preflashed, user-written bootloader using e.g. USB
Not all methods are available for every NT module. All "OlliW" NT modules can be flashed by method (1), the "bigger" ones also by method (2). When a non-NT piece of hardware, such as the CC3D Atom, is modded the situation becomes very depending on the particular piece of hardware used.


Method (1) is most convenient in the sense that only a USB-TTL adapter is needed as additional hardware, which likely is already available (e.g. for flashing the STorM32 main board). However, the grain of salt, one needs access to the BOOT0 pin, as it needs to be (temporarily) shortened to GND for method (1) to work, but this pin is not always available. This is so for instance for the Mini CC3D Atom.
Not all methods are available for every NT module. All "OlliW" NT modules can be flashed by method 1, some of them also by method 2. When a non-"OlliW" piece of hardware such as the CC3D Atom is modded, then the situation becomes very depending on the particular piece of hardware used.


Method (2) requires a dedicated ST-Link programmer as additional hardware. It is cheaply available, but nevertheless it is an additional piece of hardware. Also, the module must offer access to the SWD pins, which are not available on every board.  
Method 1 is most convenient, only the STorM32 board (or a USB-TTL adapter) is needed. However, the grain of salt, one needs access to the BOOT0 pin on the NT module, as it needs to be (temporarily) shortened to GND for method 1 to work, but this pin is not always available. This is so for instance for the Mini CC3D Atom.


Method (3) is of relevance only for the CC3D Atom, especially the Mini CC3D, but it is daunting and should thus be considered only by those who know what to do when reading, e.g., the respective posts in the STorM32 NT thread at rcgroups.
Method 2 requires a dedicated ST-Link programmer as additional hardware. It is cheaply available, but nevertheless it is an additional piece of hardware. Also, the NT module must offer access to the SWD pins, which are not available on every board.

Latest revision as of 08:07, 27 October 2018

This page is for instructions on how to flash NT modules with a NT firmware.

Proprietary NT modules (such as those from ensys) may require different procedures and/or firmware, please see the vendor's documentation.

Updating NT Firmware

If your NT module runs already a NT firmware, this is the canonical procedure for upgrading:

First-Time Flashing

If your NT module has not yet been flashed with a NT firmware, or runs a different firmware because e.g. you're modding some piece of hardware to become a NT module, then one needs to resort to grass roots flashing methods for flashing the NT firmware (first-time flashing). For details see here:

General Comments on the First-Time Flashing Process

In general, the STM32 micro-controllers which are used in the NT modules (and STorM32 boards) provide two different built-in methods for flashing firmware:

  1. via the serial system bootloader using the STorM32 board (or a USB-TTL adapter)
  2. via SWD using a ST-Link programmer

Not all methods are available for every NT module. All "OlliW" NT modules can be flashed by method 1, some of them also by method 2. When a non-"OlliW" piece of hardware such as the CC3D Atom is modded, then the situation becomes very depending on the particular piece of hardware used.

Method 1 is most convenient, only the STorM32 board (or a USB-TTL adapter) is needed. However, the grain of salt, one needs access to the BOOT0 pin on the NT module, as it needs to be (temporarily) shortened to GND for method 1 to work, but this pin is not always available. This is so for instance for the Mini CC3D Atom.

Method 2 requires a dedicated ST-Link programmer as additional hardware. It is cheaply available, but nevertheless it is an additional piece of hardware. Also, the NT module must offer access to the SWD pins, which are not available on every board.