I have been getting junk/corrupting/incorrect characters on my serial line after I rebuilt Angstrom with OpenEmbedded. Here is an example:
.---O---.
| | .-. o o
| | |-----.-----.-----.| | .----..-----.-----.
| | | __ | ---'| '--.| .-'| | |
| | | | | |--- || --'| | | ' | | | |
'---'---'--'--'--. |-----''----''--' '-----'-'-'-'
-' |
'---'
The Angstrom Distribution beagleboard ttyS2
Angstrom 2011.03 beagleboard ttyS2
beagleboard login: ¹root
Ðass÷ïòdº
I managed to track it down to “UART wakeup and timeout options” as described here [1] and here [2]. The first character I type is rubbish, because of the wakeup and everything after that becomes corrupted. I noticed [3] has a solution which is outdated locations, once I found the new locations of these settings disabling the wakeup option of the ttyS2 uart fixed the problem.
echo disabled > /sys/devices/platform/serial8250.2/power/wakeup
Fixed:
.---O---.
| | .-. o o
| | |-----.-----.-----.| | .----..-----.-----.
| | | __ | ---'| '--.| .-'| | |
| | | | | |--- || --'| | | ' | | | |
'---'---'--'--'--. |-----''----''--' '-----'-'-'-'
-' |
'---'
The Angstrom Distribution beagleboard ttyS2
Angstrom 2011.03 beagleboard ttyS2
beagleboard login: root
root@beagleboard:~#
You could also increase the timeout so that the UART doesn’t go to sleep but this isn’t very useful if you leave it running in the background!
root@beagleboard:~# tail /sys/devices/platform/serial8250.2/sleep_timeout
5
Update: 2011-07-10
Unfortunately I’ve still had a few issues with reliability on the serial port to the BeagleBoard. Appears to be some sort of grounding issue (combined with the timeout issue). I found it all clears up if I do the above and ground the BeagleBoard USB otg port to one of my laptop’s USB ports.
[1] http://groups.google.com/group/beagleboard/browse_thread/thread/718af8f541a8eed2/d803c87e452092f9?lnk=gst&q=serial+characters#d803c87e452092f9
[2] http://groups.google.com/group/beagleboard/browse_thread/thread/a794ca286fbea94f
[3] http://elinux.org/OMAP_Power_Management#UART_wakeup_and_timeout_options