MSP430F5529 Launchpad
Contents
What it is
Linux command-line flashing tools
Introduction
To program the device, one can use Energia, Code Composer Studio or some other integrated IDE. We would like to avoid using such IDEs, thus we need to make the flashing and compilation work from the command-line.
The following notes describe the process of building tools required for flashing on Ubuntu 13.10, x86_64 system. Readers discretion is advised.
First steps
To be able to flash the msp430f5529 present on the Launchpad, it is necessary to compile the mspdebug and the so called msp430.DLLv3 library (including hidapi).
The msp430.DLLv3 library provided by the TI is not only used to communicate with the programmer present on the board, but also to upgrade the firmware inside the programmer.
The first step is to install necessary libraries and compilers (for later use).
sudo apt-get install gcc-msp430 gdb-msp430 msp430-libc msp430mcu sudo apt-get install libboost-all-dev sudo apt-get install libusb-dev libreadline-dev libusb-1.0-0-dev libudev-dev
MSP430.DLLv3
MSP_Debug_Stack MSPDS_Open_Source_Package mspdebug.sourceforge.net/tilib.html
wget http://www-s.ti.com/sc/techzip/slac460.zip unzip slac460.zip cd MSPDebugStack_OS_Package/ # read README-BUILD.txt
Jump to the section describing hidapi compilation. Compile it, copy to the ThirdParty folder and continue ...
make
If there is an error saying "FILE" does not correspond to any known datatype, open the file causing the error and add line
#include <stdio.h>
Either copy the freshly compiled library to /usr/local/lib or always call export LD_LIBRARY_PATH= ... before running mspdebug
Hidapi
sudo apt-get install libudev-dev libusb-1.0-0-dev libfox-1.6-dev sudo apt-get install autotools-dev autoconf automake libtool git clone git://github.com/signal11/hidapi.git cd hidapi git checkout hidapi-0.7.0 #This particular version is required for 'MSP430.DLLv3.3.1.4 Open Source version -- Released 10/02/2013' cd linux
modify Makefile
diff --git a/linux/Makefile b/linux/Makefile index 338bbd3..f88344b 100644 --- a/linux/Makefile +++ b/linux/Makefile @@ -9,15 +9,15 @@ all: hidtest CC ?= gcc -CFLAGS ?= -Wall -g +CFLAGS ?= -Wall -g -fPIC CXX ?= g++ -CXXFLAGS ?= -Wall -g +CXXFLAGS ?= -Wall -g -fPIC COBJS = hid-libusb.o CPPOBJS = ../hidtest/hidtest.o OBJS = $(COBJS) $(CPPOBJS) -LIBS = `pkg-config libusb-1.0 libudev --libs` +LIBS = `pkg-config libusb-1.0 libudev --libs` -lpthread INCLUDES ?= -I../hidapi `pkg-config libusb-1.0 --cflags`
Continue ...
make copy hid-libusb.o to MSPDebugStack_OS_Package/Thirdparty/lib and hiapi.h to MSPDebugStack_OS_Package/Thirdparty/include
mspdebug
git clone git://git.code.sf.net/p/mspdebug/code mspdebug make make install
Using the mspdebug
vim /etc/group #Add user to dialout mspdebug tilib -d /dev/ttyACM0 --allow-fw-update # if there is no ttyACM, you can use something like mspdebug -U 0451:2046 tilib # Flash a binary to the MCU mspdebug tilib "prog main.elf"