tty output of MSP430 garbled

Bug #943170 reported by Carson Reynolds
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
mspdebug (Ubuntu)
Opinion
Undecided
Unassigned

Bug Description

When connecting to the ttyACM associated with a MSP430 microcontroller development kit, all terminal emulation programs tried show incorrect and garbled text output. When the device is plugged in dmesg reports:

092987] usb 2-1.2: new full speed USB device number 5 using ehci_hcd
[ 2735.213655] cdc_acm 2-1.2:1.0: This device cannot do calls on its own. It is not a modem.
[ 2735.213669] cdc_acm 2-1.2:1.0: No union descriptor, testing for castrated device
[ 2735.213720] cdc_acm 2-1.2:1.0: ttyACM0: USB ACM device
[ 2745.241996] generic-usb 0003:0451:F432.0003: usb_submit_urb(ctrl) failed
[ 2745.242023] generic-usb 0003:0451:F432.0003: timeout initializing reports
[ 2745.242401] generic-usb 0003:0451:F432.0003: hiddev0,hidraw0: USB HID v1.01 Device [Texas Instruments Texas Instruments MSP-FET430UIF] on usb-0000:00:1d.0-1.2/input1

Following this a new /dev/ttyACM0 device appears. When we connect to it printed text appears but is not complete. For instance using the same hardware and PuTTY we observe:

rfcomm_send_internal cid 117 doesn't exist!
BTstack counter 26230
rfcomm_send_internal cid 117 doesn't exist!
BTstack counter 26231

Whereas the output observed CuteCom or minicom on Ubuntu is:

BTacn 002BTacn 0
BTcct 04BTtacoe 5BTacun

The particular development kit is TI's MSP430 microcontroller eZ430-RF2560. The bug was encountered testing code for the btstack project as can be seen on the following thread (http://groups.google.com/group/btstack-dev/browse_thread/thread/d9d2f8ca2baa04d7)

My current belief is that this is because the device is being detected by cdc_acm as a generic USB ACM device. Another thread (http://e2e.ti.com/support/low_power_rf/f/156/t/53610.aspx) about a similar microcontroller suggests that the device should use a specific usb serial driver. We've verified that the module is compiled on our system and did a "modprobe ti_usb_3410_5052" but this had no effect on cdc_acm.

The version signature is:

Ubuntu 3.0.0-14.23-generic-pae 3.0.9
---
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
ApportVersion: 1.23-0ubuntu4
Architecture: i386
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: PCH [HDA Intel PCH], device 0: CONEXANT Analog [CONEXANT Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: flokyo 1607 F.... pulseaudio
CRDA: Error: [Errno 2] No such file or directory
Card0.Amixer.info:
 Card hw:0 'PCH'/'HDA Intel PCH at 0xd2520000 irq 42'
   Mixer name : 'Intel CougarPoint HDMI'
   Components : 'HDA:14f1506e,17aa21da,00100000 HDA:80862805,80860101,00100000'
   Controls : 20
   Simple ctrls : 8
Card29.Amixer.info:
 Card hw:29 'ThinkPadEC'/'ThinkPad Console Audio Control at EC reg 0x30, fw unknown'
   Mixer name : 'ThinkPad EC (unknown)'
   Components : ''
   Controls : 1
   Simple ctrls : 1
Card29.Amixer.values:
 Simple mixer control 'Console',0
   Capabilities: pswitch pswitch-joined penum
   Playback channels: Mono
   Mono: Playback [off]
DistroRelease: Ubuntu 11.10
HibernationDevice: RESUME=UUID=a58920d4-9bf8-4c30-a36d-ffcb290af45c
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release i386 (20111012)
MachineType: LENOVO 4290RW4
Package: linux (not installed)
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.0.0-16-generic-pae root=UUID=24d60048-4cdc-45e6-91f2-4d3cce7ecef4 ro quiet splash vt.handoff=7
ProcVersionSignature: Ubuntu 3.0.0-16.28-generic-pae 3.0.17
RelatedPackageVersions:
 linux-restricted-modules-3.0.0-16-generic-pae N/A
 linux-backports-modules-3.0.0-16-generic-pae N/A
 linux-firmware 1.60
StagingDrivers: mei
Tags: oneiric running-unity staging
Uname: Linux 3.0.0-16-generic-pae i686
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm admin cdrom dialout lpadmin plugdev sambashare
dmi.bios.date: 03/28/2011
dmi.bios.vendor: LENOVO
dmi.bios.version: 8DET41WW (1.11 )
dmi.board.asset.tag: Not Available
dmi.board.name: 4290RW4
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvr8DET41WW(1.11):bd03/28/2011:svnLENOVO:pn4290RW4:pvrThinkPadX220:rvnLENOVO:rn4290RW4:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 4290RW4
dmi.product.version: ThinkPad X220
dmi.sys.vendor: LENOVO

Revision history for this message
Carson Reynolds (carson-k2) wrote :
Revision history for this message
Brad Figg (brad-figg) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 943170

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Carson Reynolds (carson-k2) wrote : AcpiTables.txt

apport information

tags: added: apport-collected oneiric running-unity staging
description: updated
Revision history for this message
Carson Reynolds (carson-k2) wrote : AlsaDevices.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : AplayDevices.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : BootDmesg.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : Card0.Amixer.values.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : Card0.Codecs.codec.0.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : Card0.Codecs.codec.3.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : IwConfig.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : Lspci.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : Lsusb.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : PciMultimedia.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : ProcEnviron.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : ProcModules.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : PulseSinks.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : PulseSources.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : RfKill.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : UdevDb.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : UdevLog.txt

apport information

Revision history for this message
Carson Reynolds (carson-k2) wrote : WifiSyslog.txt

apport information

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Carson Reynolds (carson-k2) wrote :

After many experiments we discovered that this "garbling" is due to interference between the program accessing the serial port and mspdebug, which is used to load programs. During the programming process of the msp430 we can see a warning message from mspdebug indicating:

"Warning: rf2500: warning: can't detach kernel driver: No data available"

After seeing this message, the output of the msp430 is garbled and subsequent programming will be corrupted until there is a reboot. Perhaps mspdebug should exit when it can't detach the kernel driver?

affects: linux (Ubuntu) → mspdebug (Ubuntu)
Revision history for this message
Carson Reynolds (carson-k2) wrote :

Correction: the problem resolves once any contention on the serial port from other programs is resolved.

Revision history for this message
Carson Reynolds (carson-k2) wrote :

Further testing revealed that the binary files programmed were not properly formatted. These files behave correctly in the presence of the warning and so I think this bug may be a symptom of a missing msp430-objcopy in the build process and not any problem with mspdebug.

Changed in mspdebug (Ubuntu):
status: Confirmed → Invalid
Changed in mspdebug (Ubuntu):
status: Invalid → Opinion
Revision history for this message
Carson Reynolds (carson-k2) wrote :

Garbling re-appeared with code which was properly hex formatted. Probably related to warning reported earlier.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.