SLAU358Q
September 2011 – October 2019
Read This First
If You Need Assistance
Trademarks
Related Documentation From Texas Instruments
FCC and CE Compliance
1
Introduction
1.1
Software Installation
1.2
Driver Installation
1.3
Hardware Installation
2
Operation
2.1
Programming MSP Flash Devices Using the MSP Gang Programmer
2.1.1
Programming Using Interactive Mode
2.1.1.1
GO
2.1.1.2
Erase
2.1.1.3
Blank Check
2.1.1.4
Program
2.1.1.5
Verify
2.1.1.6
Read
2.1.2
Programming From Image
2.1.3
Programming From Script
2.1.3.1
Script Limitations
2.1.3.2
Command Syntax
2.1.3.3
Instructions
2.1.4
Programming in Standalone Mode
2.1.5
Memory Setup for GO, Erase, Program, Verify, and Read
2.1.5.1
Writing and Reading BSL Flash Sectors in the MSP430F5xx and MSP430F6xx MCUs
2.1.6
Secure Device Setup and Memory Protection
2.1.7
Programming MCU With IP Encapsulated Segment
2.1.8
Serialization
2.1.9
Creating and Using Images
2.1.10
Programming From Image File
2.1.11
Programming From SD Card
2.1.12
File Extensions
2.1.13
Checksum Calculation
2.1.14
Commands Combined With the Executable File
2.2
Data Viewers
2.3
Status Messages
2.4
Self Test
2.5
Label
2.6
Preferences
2.6.1
USB ID Number
2.6.2
COM Port
2.6.3
LCD Contrast
2.6.4
Checksum – Gang430 Standard
2.7
Benchmarks
2.7.1
Benchmarks for MSP430F5xx
2.7.2
Benchmarks for MSP430FR5xx
2.7.3
Benchmarks for MSP430F2xx
2.7.4
Benchmarks for MSP432P401R
3
Firmware
3.1
Commands
3.2
Firmware Interface Protocol
3.3
Synchronization Sequence
3.4
Command Messages
3.4.1
Frame Structure
3.4.2
Checksum
3.5
Detailed Description of Commands
3.5.1
General
3.5.2
Commands Supported by the BOOT Loader
3.5.2.1
"Hello" Command
3.5.2.2
Boot Commands Disable
3.5.2.3
Boot Commands Enable
3.5.2.4
Get Diagnostic Command
3.5.2.5
Select Baud Rate Command
3.5.2.6
Erase Firmware Command
3.5.2.7
Load Firmware Command
3.5.2.8
Exit from Firmware Update Command
3.5.2.9
Get Label Command
3.5.2.10
Get Progress Status
3.5.3
Commands Supported by Application Firmware
3.5.3.1
Select Image Command
3.5.3.2
Main Process Command
3.5.3.3
Set Temporary Configuration in MSP-GANG Command
3.5.3.4
Get Selected Status Command
3.5.3.5
Read From Gang Data Buffer Command
3.5.3.6
Write to Gang Data Buffer Command
3.5.4
API Firmware Commands That Should Not be Used
3.5.4.1
Interactive Process Command
3.5.4.2
Erase Image Command
3.5.4.3
Read Info Memory From MSP-GANG Command
3.5.4.4
Write to MSP-GANG Info Memory Command
3.5.4.5
Verify Access Key Command
3.5.4.6
Write to Image Block Command
3.5.4.7
Verify Image Check Sum Command
3.5.4.8
Read Image Header Command
3.5.4.9
Disable API Interrupts Command
3.5.4.10
Display Message on LCD Display Command
3.5.4.11
Set IO State Command
4
Dynamic Link Library for MSP-GANG Programmer
4.1
Gang430.dll Wrapper Description
4.2
MSP-GANG.dll Description
4.2.1
MSPGANG_GetDataBuffers_ptr
4.2.2
MSPGANG_SetGangBuffer, MSPGANG_GetGangBuffer
4.2.3
MSPGANG_GetDevice
4.2.4
MSPGANG_LoadFirmware
4.2.5
MSPGANG_InitCom
4.2.6
MSPGANG_ReleaseCom
4.2.7
MSPGANG_GetErrorString
4.2.8
MSPGANG_SelectBaudrate
4.2.9
MSPGANG_GetDiagnostic
4.2.10
MSPGANG_MainProcess
4.2.11
MSPGANG_InteractiveProcess
4.2.12
MSPGANG_Interactive_Open_Target_Device
4.2.13
MSPGANG_Interactive_Close_Target_Device
4.2.14
MSPGANG_Interactive_DefReadTargets
4.2.15
MSPGANG_Interactive_ReadTargets
4.2.16
MSPGANG_Interactive_ReadBytes
4.2.17
MSPGANG_Interactive_WriteWord_to_RAM
4.2.18
MSPGANG_Interactive_WriteByte_to_RAM
4.2.19
MSPGANG_Interactive_WriteBytes_to_RAM
4.2.20
MSPGANG_Interactive_WriteBytes_to_FLASH
4.2.21
MSPGANG_Interactive_Copy_Gang_Buffer_to_RAM
4.2.22
MSPGANG_Interactive_Copy_Gang_Buffer_to_FLASH
4.2.23
MSPGANG_Interactive_EraseSectors
4.2.24
MSPGANG_Interactive_BlankCheck
4.2.25
MSPGANG_Interactive_DCO_Test
4.2.26
MSPGANG_SelectImage
4.2.27
MSPGANG_EraseImage
4.2.28
MSPGANG_CreateGangImage
4.2.29
MSPGANG_LoadImageBlock
4.2.30
MSPGANG_VerifyPSAImageBlock
4.2.31
MSPGANG_ReadImageBlock
4.2.32
MSPGANG_Read_Code_File
4.2.33
MSPGANG_Save_Config, MSPGANG_Load_Config, MSPGANG_Default_Config
4.2.34
MSPGANG_SetConfig, MSPGANG_GetConfig
4.2.35
MSPGANG_GetNameConfig, MSPGANG_SetNameConfig
4.2.36
MSPGANG_SetTmpGANG_Config
4.2.37
MSPGANG_GetLabel
4.2.38
MSPGANG_GetInfoMemory, MSPGANG_SetInfoMemory
4.2.39
MSPGANG_Get_qty_MCU_Type, MSPGANG_Set_MCU_Type, MSPGANG_Get_MCU_TypeName, MSPGANG_Get_qty_MCU_Family, MSPGANG_Get_MCU_FamilyName, MSPGANG_Get_MCU_Name
4.2.40
MSPGANG_Set_MCU_Name
4.2.41
MSPGANG_HW_devices
4.2.42
MSPGANG_GetProgressStatus
4.2.43
MSPGANG_GetAPIStatus
4.2.44
MSPGANG_Set_IO_State
4.2.45
MSPGANG_Convert_Address
4.2.46
MSPGANG_Memory_Header_text
4.2.47
MSPGANG_Interactive_ClrLockedDevice
4.2.48
MSPGANG_Get_Code_Info
4.2.49
MSPGANG_MakeSound
4.2.50
MSPGANG_CallBack_ProgressBar
4.2.51
MSPGANG_GetPCHardwareFingerprint
4.2.52
MSPGANG_Flash_valid_addr
5
Schematics
5.1
Schematics
6
Frequently Asked Questions
6.1
Question: Why does device init, connect, or programming fail?
6.2
Question: Can I use single wires for connection between MSP-GANG and target device?
6.3
Question: How to serialize parts?
6.4
Question: How to have parts run after programming?
6.5
Question: What are possible reasons for the part to fail Verify step?
Revision History
3.5.4
API Firmware Commands That Should Not be Used