EmbeddedRelated.com
Forums

TI Launchpad (MSP-EXP430G2) board - possible use USB interface for PC/MSP messages?

Started by David Feldman November 29, 2010
I am interested in building a small application (basically a simple USB PC peripheral) directly with the MSP430 series launchpad module MSP-EXP430G2.

Is there anywhere I can find information that would help me use the USB interface in an application (that is, what it "looks like" from the PC end of things, and what it "looks like" from the MSP430 end of things? Linux (for the PC) would be ideal for this. I have no detail experience with SPY-BIWIRE interface except as an end user of the TI IDE normally used with the MSP-EXP430G2.

I'm sorry if this has been asked before (maybe FAQ?) but I'm not quite sure how to search for this information as I'm not quite sure how to describe it.

Thanks very much for any pointers,

Dave

Beginning Microcontrollers with the MSP430

On Mon, 29 Nov 2010 14:05:17 -0800 (PST), you wrote:

> I am interested in building a small application (basically a
> simple USB PC peripheral) directly with the MSP430 series
> launchpad module MSP-EXP430G2.

They probably don't want you doing that, but who cares? ;)

> Is there anywhere I can find information that would help me
> use the USB interface in an application (that is, what it
> "looks like" from the PC end of things, and what it "looks
> like" from the MSP430 end of things? Linux (for the PC)
> would be ideal for this. I have no detail experience with
> SPY-BIWIRE interface except as an end user of the TI IDE
> normally used with the MSP-EXP430G2.

They provide simple code for the MSP430 end. I barely
remember, but I think it was bit-banged RS-232 at a slowish
rate. The USB section listens to the MSP430 via a pair of
pins. I don't think they provide the source code for the
emulator section, though they might. You'd need a lot more
information, though, if you planned to modify that section
for your own use. I seem to recall some pages on that topic,
though.

From the PC side, it's also a virtual RS-232 port. (I think
they use or depend upon some standard HID USB approach.)

So, if I got that right, then you use standard code for
communicating with a virtual RS-232 on the PC end (they
probably emulate the 16550 registers, or something) and you
tinker around with the provided RS-232 emulation (bit-bang)
code for the MSP430 or else write your own.

The hardware emulator section that "listens" to the MSP430
may use a fixed rate (meaning you don't get to change it and
must, instead, use only the single slow rate they support) or
else they may have some means to recognize faster rates if
you can drive them. I don't know. But at least it should be
safe at the one rate the provided software uses. On the PC
side, I think the driver simply doesn't give a rip. If you
"set up" the 16550 registers for some fast rate or some slow
rate or whatever none of it really matters. Stuff just gets
transported, since there isn't any RS-232 in reality. The PC
emulation of the RS-232 probably just ignores the rate.

Jon
--- In m..., David Feldman wrote:
>
> I am interested in building a small application (basically a simple USB PC peripheral) directly with the MSP430 series launchpad module MSP-EXP430G2.

Hmmm, let me get this right.

You want to use the USB interface on the Launchpad for your own application on a Linux PC.

Two issues.

1) the USB device on this board is a TUSB3410VF.
See schematic on page 14 of: http://focus.ti.com/lit/ug/slau318/slau318.pdf

This chip is just a USB to serial bridge chip.
It talks to the programmer chip MSP430F16X.

The programmer chip talks to the target chip: MSP430G2

Is there a Linux driver for this USB bridge ?
Is there a Linux driver for any USB bridge ?

2) This is not a beginner project.

don
>
> Is there anywhere I can find information that would help me use the USB interface in an application (that is, what it "looks like" from the PC end of things, and what it "looks like" from the MSP430 end of things? Linux (for the PC) would be ideal for this. I have no detail experience with SPY-BIWIRE interface except as an end user of the TI IDE normally used with the MSP-EXP430G2.
>
> I'm sorry if this has been asked before (maybe FAQ?) but I'm not quite sure how to search for this information as I'm not quite sure how to describe it.
>
> Thanks very much for any pointers,
>
> Dave
>

The Launchpad board can be divided into two parts. The top part, marked "EMULATION", can provide the functions your want. But you have to treat it as a "black box" and just use it without knowing how it works.

The main function of this top part "EMULATION" is to provide an USB interface so that "Debuggers" in the PC can communicate with the JTAG pins of the MSP430G2 chip in the lower part (marked "MSP-EXP430G2"). But in addition to that, it also provide a virtual COM port in the PC to communicate to P1.1 (TXD) and P1.2 (RXD) pins of the MSP430G2 chip. TI calls this the "Application UART". The demo program that come with the kit actually use the TXD pin to send temperature reading to the PC. The RXD is not used in the demo, but it works too. The baud-rate is up to 9600 b/s. There is no modem-control or modem-status lines.

Read the document!

--- In m..., David Feldman wrote:
>
> I am interested in building a small application (basically a simple USB PC peripheral) directly with the MSP430 series launchpad module MSP-EXP430G2.
>
> Is there anywhere I can find information that would help me use the USB interface in an application (that is, what it "looks like" from the PC end of things, and what it "looks like" from the MSP430 end of things? Linux (for the PC) would be ideal for this. I have no detail experience with SPY-BIWIRE interface except as an end user of the TI IDE normally used with the MSP-EXP430G2.
>
> I'm sorry if this has been asked before (maybe FAQ?) but I'm not quite sure how to search for this information as I'm not quite sure how to describe it.
>
> Thanks very much for any pointers,
>
> Dave
>

Hi old_cow_yellow,

Are there Linux drivers available for the TUSB3410VF ?

Are there any debuggers available under Linux ?

Thanks,

don

I do not know. See Section 2.3 of
http://processors.wiki.ti.com/index.php/MSP430_LaunchPad_%28MSP-EXP430G2%29?DCMP=launchpad&HQS=Other+OT+launchpadwiki#Linux_Support

--- In m..., "Donald H" wrote:
>
> Hi old_cow_yellow,
>
> Are there Linux drivers available for the TUSB3410VF ?
>
> Are there any debuggers available under Linux ?
>
> Thanks,
>
> don
>

On Mon, Nov 29, 2010 at 6:41 PM, Donald H wrote:
>
'> Hmmm, let me get this right.
>
> You want to use the USB interface on the Launchpad for your own application on a Linux PC.
>
> Two issues.
>
> 1) the USB device on this board is a TUSB3410VF.
> See schematic on page 14 of: http://focus.ti.com/lit/ug/slau318/slau318.pdf
>
> This chip is just a USB to serial bridge chip.
> It talks to the programmer chip MSP430F16X.
>
> The programmer chip talks to the target chip: MSP430G2
>
> Is there a Linux driver for this USB bridge ?

Yes. The 3410 driver is built into any recent kernel. For the
side-channel serial port, see http://mspdebug.sourceforge.net/

> Is there a Linux driver for any USB bridge ?

Pretty much all of them. I've used adapters with FTDI, SiLabs, and
Prolific chips. All have worked out-of-the-box.

http://lxr.linux.no/linux+v2.6.36/drivers/usb/serial/

> 2) This is not a beginner project.
>

You will learn a lot, that's for sure.

Regards,
Mark
markrages@gmail
--
Mark Rages, Engineer
Midwest Telecine LLC
m...@midwesttelecine.com