Jump to content
43oh

Recommended Posts

I'm developping some codes with Energia or TI CCS for the TI LaunchPad MSP-EXP430G2, v1.4 and v1.5, with G2553 and G2452 chips. I organize DIY workshops.

 

I'm playing with various computers, I enumarate them: 1x W7Pro32, 1x W7Starter, 1x W8.1x64, 1x TP-Link TL-MR3020+OpenWrt, 1x TP-Link WR710N+OpenWrt.

 

Nothing is going right with serial, only my old W7Pro32 can read/write thru the USB serial ! Even my 2 OpenWrt TP-Link can't communicate !

 

If I play with some Arduino in place of TI LaunchPad, all USB serial is working fine (except the known reset problem of Arduino USB serial).

 

Yesterday evening, I played a lot with a TI LaunchPad and my W8.1x64. I discovered that sometimes, the serial USB could communicate ! That's after a lot of stress of the serial settings. I used PuTTY to receive something. The G2553 program was continualy sending 1 character every second. After changing the "Flow control" in PuTTY/Settings/Connection/Serial a lot of times, changing from XON/XOFF to RTS/CTS to /DTR/DSR, in any order, and typing a lot of ^S,^Q,... sentences, the TI Launchpad would finally communicate ! As soon as the USB serial communicates, I can deselect the "Flow control" (can be any) to "none". But never unplug the USB else...

 

What is wrong in the firmware ?

Link to post
Share on other sites

1) The USB<->UART bridge built in the Launchpad G2 does only support up to 9600 Bdps.

2) The rev 1.4 and 1.5 have different behaviour of their jumpers, refer to the schematics if you want to know more.

 

You can use a separate (FTDI for example) cable to link the UART for higher speeds, or you'll have to settle with 9600 Bdps. This is a serious bug in the firmware of the Launchpad (not the MSP430G2xx, but the large QFP chip), which would be less serious if it was clearly documented...

Link to post
Share on other sites

I've not messed with the G2 launchpad much in windows, but in linux there happens to be a stupid bug where the USB-UART bridge hangs up hard if the G2553 sends data before an application "opens" the serial connection.

 

No flow control should be necessary.  Moreover, try structuring your firmware so it doesn't attempt to send ANYTHING over the UART until some start condition is detected--like pressing the P1.3 button, or maybe have the G2553 sit and wait to receive a valid string from the PC before it tries sending anything out.  See if that helps stabilize it?

 

I agree the G2 LaunchPad's UART sucks.  Hardcore.  I hate it.  I do more of my MSP430 development now with TI's new F5529 LaunchPad because its UART is so much nicer.  I was actually going to design an FTDI BoosterPack to help resolve this issue (and I did, but had some errors in its design), but I don't think it's worthwhile now with the F5529LP being available.

Link to post
Share on other sites

Many thanks to spirilis,

 

I confirm the "do not send any characters before open the driver". I can add it's the same to close the driver.

My configuration is LaunchPad msp430g2 connected to TL-MR3020 freshly flashed with OpenWrt attitude, and associative packages.

I've used picocom to connect to /dev/ttyACM0 and do checks. The msp430 program sends a character every seconds.

 

So I've connected like that:

 

1/ Maintain pressed the Reset button of msp430 LaunchPad.

2/ Connect the LaunchPad to USB while maintaining Reset.

3/ Start picocom /dev/ttyACM0

4/ Observe that the message "Terminal ready" comes immediatly, else the driver is in error.

5/ Release the Reset button of LaunchPad, the program starts.

 

To close picocom and disconnect the LaunchPad from usb, it's alos important to do the same actions in another order:

 

1/ Maintain pressed the Reset button of msp430 LaunchPad.

2/ Close picocom (^a^x) while maintaining Reset.

3/ Observe the quick exit of picocom, else the driver is in error.

4/ Disconnect the LaunchPad from usb.

5/ Release the Reset button.

 

You can do same actions by removing the 2 RX/TX jumpers before connect/disconnect from usb/open/close/driver.

 

2014-01-14: The OpenWrt Embedded Linux is unsafe! After a couple of minutes at 9600Bps, the driver hangs...

 

jmP

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...