Jump to content
JWoodrell

programming a MSP430G2955?

Recommended Posts

Just programmed jazz' file using mspdebug with a small patch to enable MSP430G2955. It works just fine. Unfortunately, the forum software won't allow me to attach the patch. Patch attached.

 

Are you the maintainer of the eclipse plugin http://xpg.dk/projects/msp430/msp430-eclipse/ ? Couldn't find your source code anywhere so that I could add MSP430G2955 to the list of selectable micros in eclipse.

Share this post


Link to post
Share on other sites

Are you the maintainer of the eclipse plugin http://xpg.dk/projects/msp430/msp430-eclipse/ ? Couldn't find your source code anywhere so that I could add MSP430G2955 to the list of selectable micros in eclipse.

Yes, I am. The source code is at https://gitorious.org/msp430eclipse. However, the list of selectable MCUs is extracted from the toolchain. I have made a binary toolchain available for Linux 64-bit, which supports the new value lines MCUs (http://xpg.dk/files/File/msp430/msp430-toolchain-linux-amd64-3.0.tar.bz2). However, I am have great difficulties with compiling binutils on Windows, so no support for the new value lines there, yet.

Share this post


Link to post
Share on other sites

Yes, I am. The source code is at https://gitorious.org/msp430eclipse. However, the list of selectable MCUs is extracted from the toolchain. I have made a binary toolchain available for Linux 64-bit, which supports the new value lines MCUs (http://xpg.dk/files/File/msp430/msp430-toolchain-linux-amd64-3.0.tar.bz2). However, I am have great difficulties with compiling binutils on Windows, so no support for the new value lines there, yet.

 

Dang it. Didn't reload eclipse. Compiled mspdebug myself (linux) and couldn't fathom why the 2955 wasn't making the list. Thanks.

Share this post


Link to post
Share on other sites

All MSP430 flash tools are based on defined table with all target devices description, something like (from Replicator source "Devices430.c"):

//                      TestPin      DataQuick      EnhVerify     SpyBiWire        RamEnd
//                Id       |    CpuX     |  FastFlash  |    JTAG     |    RamStart    |   MainStart
//                 |       |      |      |      |      |     |       |        |       |       |
/* F20xx */     { 0xF201, TRUE,  FALSE, TRUE , TRUE,  FALSE, TRUE , TRUE  , 0x0200, 0x027F, 0xF800 },
/*F21x1/2*/     { 0xF213, TRUE,  FALSE, TRUE , TRUE,  FALSE, TRUE , FALSE , 0x0200, 0x02FF, 0xE000 },
/*F22x2/4*/     { 0xF227, TRUE,  FALSE, TRUE , TRUE,  TRUE,  TRUE , TRUE  , 0x0200, 0x05FF, 0x8000 },
/* F23x0 */     { 0xF237, TRUE,  FALSE, TRUE , TRUE,  TRUE,  TRUE , FALSE , 0x0200, 0x09FF, 0x8000 },
...

With every new device, new line to description is added, and support is done. Let say, 10 minutes job.

 

Unfortunately, for TI lunchpad is completed board with integrated debugger/programmer and on board target chip. They don't see it as universal/separate tool for all MSP430G2xx devices, and don't won't to update it (now). With new MSP430G2955 launchpad it will come updated debugger/programmer.

 

Don't know if it is possible to force it to see MSP430G2955 as generic MSP430G2xx device, and flash it.

 

FYI- @@JWoodrell sent me one of his adapter boards (rather clever way to do it!) that plug directly into the LaunchPad.  I have been using a hacked version of the latest mspdebug code to support the F5172, and I decided to just pull the current GIT version of mspdebug and build that on my Mac (since Daniel Beer told me he put the F5172-supporting patch into the latest GIT anyhow; basically it's using the Olimex DB, which had F5172 ID codes included a while back)

 

This GIT version has the G2955's ID codes included.

 

With my v1.5 LaunchPad and JWoodrell's adapter board, mspdebug sees it right out of the box:

Trying to open interface 1 on 006
Initializing FET...
FET protocol version is 30394216
Set Vcc: 3000 mV
Configured for Spy-Bi-Wire
Device ID: 0x2955
  Code start address: 0x2100
  Code size         : 57088 byte = 55 kb
  RAM  start address: 0x1100
  RAM  end   address: 0x20ff
  RAM  size         : 4096 byte = 4 kb
Device: MSP430G2955
Number of breakpoints: 2
fet: FET returned NAK
warning: device does not support power profiling
Chip ID data: 29 55

Programmed OK:

(mspdebug) prog main.elf
Erasing...
Programming...
Writing 2598 bytes at 2100 [section: .text]...
Writing  907 bytes at 2b28 [section: .rodata]...
Writing   12 bytes at 2eb4 [section: .data]...
Writing   32 bytes at ffe0 [section: .vectors]...
Done, 3549 bytes total
(mspdebug) run

The app didn't seem to work, but it uses serial I/O and I'm not sure how everything's mapped on it at the moment.  Going to try a quick blinky test...

#include <msp430.h>
#include <stdint.h>


int main()
{
	WDTCTL = WDTPW | WDTHOLD;
	DCOCTL = CALDCO_16MHZ;
	BCSCTL1 = CALBC1_16MHZ;

	P1DIR |= BIT0;
	P1OUT &= ~BIT0;

	while(1) {
		P1OUT ^= BIT0;
		__delay_cycles(800000);
	}
}

Dallas, we have blinkenlight.

post-15991-0-00817800-1372695870_thumb.jpg

 

Yep, v1.5 LP has no "hardware" or "firmware" glitches preventing it from programming the G2955.  I trust the other G2xx4 and G2xx5 chips are similar.  MSPDebug just needs the new ID codes and details (or you need to build the current GIT version -- see http://mspdebug.sourceforge.net/download.html ) or else it flips out and ignores your chip.

 

 

edit: Looks like G2955 is the only one in there, the G2xx4's don't seem to be present.  Might ask Daniel if he needs any help with that and get a breakout board set going since I have a G2744 TSSOP sample too...

Share this post


Link to post
Share on other sites

All the pins are broken out, 3.4/3.5 are on the left a few pins up, they are labled. You can just wire to those pads (pull the sw/hw jumpers on the launchpad and female pin them in, or jumper over to the main launchpad pins ( knowing you are connecting two pins together)

 

Thatd so cool that the launchpad is actually capable of programming it, now I have a reason to build out those adapter boards :) they do work

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×