| Bluetooth Low Energy scripts

BlueNRG-MS_firmware_update.py File Reference

## Detailed Description

You need to specificy the variable fw_filename to point to the wanted firmware image.

- The script is implemented using the BlueNRG GUI language scripts based on the BLE ACI APIs names. The BlueNRG GUI with script engine is delivered within BlueNRG GUI SW package.
- The script can also be run using the script launcher standalone utility available within BlueNRG GUI SW package. A PC running Windows Vista/7 operating systems (64 and 32 bit version) or Windows XP operating systems (32 bit edition), with available USB ports is required for installing the BlueNRG GUI SW package.

# How it works ?

The script will check firmware version on BlueNRG-MS and if needed it will update it according to the settings defined by user. The user needs to define the wanted firmware image file (fw_filename), the associated firmware version (fw_version) and the wanted ifr data (ifr_filename) The script will check whether the firmware inside the device is matching, if yes, it will only update the IFR, otherwise it will update both firmware and IFR. The memory map of BlueNRG-MS is as follow:

BlueNRG-MS Memory map | Address range
--- | ---
IFR data (192B) | 0x10020740 - 0x100207FF
IFR unused sector (2K - 192) | 0x10020000 - 0x1002073F
Fw image (64K) | 0x10010000 - 0x1001FFFF

Note
  BlueFlag is a 32 bit word at address 0x100108C0 and indicate whether a good firmware is present or not. It is manipulated by ACI_HAL_UPDATER_ERASE_BLUE_FLAG (make invalid) and ACI_HAL_UPDATER_RESET_BLUE_FLAG() (set valid).