My favorites | Sign in
Logo
             
Search
for
Updated Oct 06, 2009 by beagleboard.jason
BeagleboardRevCValidation  
Beagle Board Diagnostic Tools and Procedure

Validating Beagle Board (Rev C and Rev B) with Tests / Diagnostics

Setup

Prepare MMC/SD card for Validation

Copy the following files on to MMC in the following order:

  1. MLO as MLO
  2. u-boot as u-boot.bin
  3. u-boot for flash as u-boot-f.bin
  4. ramdisk image as ramdisk.gz
  5. Kernel (uImage) as uImage.bin
  6. reset.scr as boot.scr
  7. x-loader image as x-load.bin.ift
  8. Regular script file as normal.scr

NOTE: If you don't want to flash the bootloader on NAND then copy Regular script file as boot.scr

Sources for board testing can be found at

Board Setup for Validating

  1. Make sure Beagle power is in OFF state
  2. Connect UART cable to a UART port of Window/Linux/Mac machine
  3. Have terminal program, such as TeraTerm, HyperTerminal, or Minicom, running on the host machine.
  4. Configure the terminal program for (BAUD RATE - 115200, DATA - 8 bit, PARITY- none, STOP - 1bit, FLOW CONTROL - none)
  5. Insert the MMC/SD card (that is prepared as described above) into MMC/SD slot on Beagle Board.
  6. Connect a LCD Monitor to DVI/HDMI port on Beagle Board.
  7. Connect an externally powered speaker to audio out jack on Beagle Board.
  8. Connect a Line-in cable from PC or any player to Audio In jack on Beagle Board.
  9. Connect a TV (NTSC-M) to S-video port.
  10. Power ON LCD, TV and audio speakers.
  11. Connect one end of USB mini B to USB A cable to Beagle Board. Do NOT connect the USB A side to the host machine yet.
  12. If you have Windows PC as a host machine then copy the Linux.inf RNDIS driver configuration file to the host machine. Generally Windows will have the driver.
  13. Also for Windows PCs, copy the Gserial.inf USB serial port driver configuration to the host machine. Generally Windows will have the driver.

Beagle validation

Press the "User" switch/button on the Beagle Board. While it’s still pressed, give power to (turn ON) the Beagle Board, by inserting the USB A connector side of the USB cable to HOST machine, then release the switch.

This should bring up u-boot and the following Board Diagnostic tests will be performed:

Other tests will continue after Kernel booting, If uImage.bin and ramdisk.gz are on MMC card then kernel will boot as shown below ....

Continue Board Validation

  1. To Test USB OTG as Peripheral (USB Ethernet Gadget with Windows HOST machine)
  2. To Test DVI and S-Video Interfaces by streaming a Video File
  3.  [root@beagleboard mmc]# svideo
    [root@beagleboard mmc]# mplayer /sample_video.avi
    
    NOTE: The Video sample has been downloaded from 
    https://garage.maemo.org/tracker/download.php/54/269/2380/258/bug.avi
    
    Should display a cartoon video on DVI and S-Video, Audio will be on audio-out (speakers)
  4. Mount the MMC/SD Card
  5. [root@beagleboard /]# mount -t vfat /dev/mmcblk0p1 /mnt
    [root@beagleboard /]# cd /mnt
  6. To Test Audio-In Interface
  7. Make Sure your player is running and Audio Line in is connected to board.
    [root@beagleboard mmc]# arecord -t wav -c 2 -r 44100 -f S16_LE -v k
    Following output is expected on Console
    Recording WAVE 'k' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
    Plug PCM: Hardware PCM card 0 'TWL4030' device 0 subdevice 0
    Its setup is:
      stream       : CAPTURE
      access       : RW_INTERLEAVED
      format       : S16_LE
      subformat    : STD
      channels     : 2
      rate         : 44100
      exact rate   : 44100 (44100/1)
      msbits       : 16
      buffer_size  : 32768
      period_size  : 2048
      period_time  : 46439
      tick_time    : 7812
      tstamp_mode  : NONE
      period_step  : 1
      sleep_min    : 0
      avail_min    : 2048
      xfer_align   : 2048
      start_threshold  : 1
      stop_threshold   : 32768
      silence_threshold: 0
      silence_size : 0
      boundary     : 1073741824
    When ever you think you want to stop just press CONTRL+C
  8. To Test Audio-Out Interface, Playback the recorded Audio
  9. [root@beagleboard mmc]# aplay -t wav -c 2 -r 44100 -f S16_LE -v k
    Audio should be heard on Speakers, Following output is expected on console
    Playing WAVE 'k' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
    Plug PCM: Hardware PCM card 0 'TWL4030' device 0 subdevice 0
    Its setup is:
      stream       : PLAYBACK
      access       : RW_INTERLEAVED
      format       : S16_LE
      subformat    : STD
      channels     : 2
      rate         : 44100
      exact rate   : 44100 (44100/1)
      msbits       : 16
      buffer_size  : 32768
      period_size  : 2048
      period_time  : 46439
      tick_time    : 7812
      tstamp_mode  : NONE
      period_step  : 1
      sleep_min    : 0
      avail_min    : 2048
      xfer_align   : 2048
      start_threshold  : 32768
      stop_threshold   : 32768
      silence_threshold: 0
      silence_size : 0
      boundary     : 1073741824
  10. umount the SD/MMC card
  11. This tests validates read/write to MMC/SD card as the audio data is being written and read from MMC.
    
             [root@beagleboard mmc]# cd /
             [root@beagleboard mmc]# umount /mnt
  12. To test USB HOST Port
    1. To Test USB HOST using a USB Keyboard
    2. [root@beagleboard mmc]# evtest /dev/input/event2
      Press a Key on USB KeyBoard, 
      
      Example if "a" is pressed the following output is seen on Console:
      
      Event: time 1657.754638, type 1 (Key), code 30 (A), value 1
      Event: time 1657.754638, -------------- Report Sync ------------
      Event: time 1657.964599, type 1 (Key), code 30 (A), value 0
      Event: time 1657.964599, -------------- Report Sync ------------
      Press CONTROL+C to come out of this test
    3. To Test USB HOST using a USB Mouse
    4. [root@beagleboard mmc]# evtest /dev/input/event4
      Press the Mouse button and observe the screen,
      
      Example if Left button is pressed and released the following lines should get displayed on console
      
      Event: time 1871.724792, -------------- Report Sync ------------
      Event: time 1873.804687, type 1 (Key), code 272 (LeftBtn), value 1
      Event: time 1873.804687, -------------- Report Sync ------------
      Event: time 1873.964660, type 1 (Key), code 272 (LeftBtn), value 0
      Event: time 1873.964660, -------------- Report Sync ------------
      Moving the Mouse also results in Console messages
      Event: time 1959.120635, -------------- Report Sync ------------
      Event: time 1959.130676, type 2 (Relative), code 0 (X), value -21
      Event: time 1959.130676, -------------- Report Sync ------------
      Event: time 1959.140625, type 2 (Relative), code 0 (X), value -16
      Press CONTROL+C to come out of this test
  13. To Test USB OTG as HOST
    1. To Test USB OTG as HOST using a USB Keyboard
    2. [root@beagleboard mmc]# evtest /dev/input/event2
      Press a Key on USB KeyBoard, 
      
      Example if "a" is pressed the following output is seen on Console:
      
      Event: time 1657.754638, type 1 (Key), code 30 (A), value 1
      Event: time 1657.754638, -------------- Report Sync ------------
      Event: time 1657.964599, type 1 (Key), code 30 (A), value 0
      Event: time 1657.964599, -------------- Report Sync ------------
      Press CONTROL+C to come out of this test
    3. To Test USB OTG as HOST using a USB Mouse
    4. [root@beagleboard mmc]# evtest /dev/input/event4
      Press the Mouse button and observe the screen,
      
      Example if Left button is pressed and released the following lines should get displayed on console
      
      Event: time 1871.724792, -------------- Report Sync ------------
      Event: time 1873.804687, type 1 (Key), code 272 (LeftBtn), value 1
      Event: time 1873.804687, -------------- Report Sync ------------
      Event: time 1873.964660, type 1 (Key), code 272 (LeftBtn), value 0
      Event: time 1873.964660, -------------- Report Sync ------------
      Moving the Mouse also results in Console messages
      Event: time 1959.120635, -------------- Report Sync ------------
      Event: time 1959.130676, type 2 (Relative), code 0 (X), value -21
      Event: time 1959.130676, -------------- Report Sync ------------
      Event: time 1959.140625, type 2 (Relative), code 0 (X), value -16
      Press CONTROL+C to come out of this test
    5. To Test USB OTG as HOST using a USB Ethernet Dongle
    6. [root@beagleboard mmc]# ifconfig eth0 <ipaddress>
      Example:
      [root@beagleboard mmc]# ifconfig eth0 172.24.191.49 up
      <6>eth0: link up, 10Mbps, half-duplex, lpa 0x0020
      eth0: link up, 10Mbps, half-duplex, lpa 0x0020
      
      [root@beagleboard mmc]# ping 172.24.191.1
      PING 172.24.191.1 (172.24.191.1): 56 data bytes
      64 bytes from 172.24.191.1: seq=0 ttl=64 time=2.136 ms
      64 bytes from 172.24.191.1: seq=1 ttl=64 time=1.068 ms
      64 bytes from 172.24.191.1: seq=2 ttl=64 time=1.038 ms

Other Tests


Comment by beagleboard.jason, Jan 27, 2009

These bootargs worked for my HDTV with this kernel and file system: console=ttyS2,115200 console=tty0 root=/dev/ram0 rw ramdisk=32768 initrd=0x81600000,32M video=omapfb.video_mode=1280x720M-24@60

Comment by beagleboard.jason, Jan 27, 2009

The video is black-and-white for me.

Comment by f-wal...@ti.com, Feb 05, 2009

Here are my bootargs: console=ttyS2,115200n8 omapfb.video_mode=1280x720MR-24@60 omapfb.debug=y root=/dev/ram0 rw ramdisk_size=32768 initrd=0x81600000,32M

I had major issues getting the DVI to work... The debug stuff can be removed now I believe.

Comment by tfischer83702, Feb 20, 2009

Being a Linux guy, I used steps similar to http://code.google.com/p/beagleboard/wiki/LinuxBootDiskFormat to make the SD card. When I powered the board from a Linux USB port, I got the error "Unknown command 'T+GCAP' - try 'help'", even though I was using a serial cable. This is due to u-boot supporting USB CDC ACM protocol and NetworkManager? probing for an attached modem by sending the AT command "AT+GCAP", which interrupts the boot process. I ignored the problem (after failing to figure out how to get NetworkManager? from probing) and just entered 'boot' at the u-boot prompt.

Comment by beagleboard.jason, Feb 21, 2009

I get overrun errors when recording.

Comment by beagleboard.jason, Feb 21, 2009

To test the user button: root@beagleboard:~# evtest /dev/input/event1

Comment by beagleboard.jason, Feb 21, 2009

The EDID commands still don't work for me.

Comment by beagleboard.jason, Mar 13, 2009

We need to eliminate the need to do "save as..." and change the name. A single utility is required as well.

Comment by chu...@yahoo.com, Mar 20, 2009

got error when trying to get u-boot code (x-load and kernel are working fine):

git clone http://git.gitorious.org/beagleboard/mainline.git/

...

walk 7309612797ed5e6b3b20027e28bca970b4f6b8fd

walk 0b666f81da14bf46cada222856762f7fd6641c26

warning: remote HEAD refers to nonexistent ref, unable to checkout.

is "git clone http://git.gitorious.org/beagleboard/mainline.git/" the right way?

Comment by priyank.vineet, Mar 25, 2009

Can I do all these procedure on Rev B5 Board?

Comment by ikevin, Mar 29, 2009

I got the following errors on rev B6, any ideas how to fix this? Thanks.


uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 0 Buffer I/O error on device mtdblock0, logical block 0 uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 8 Buffer I/O error on device mtdblock0, logical block 1 uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 16 Buffer I/O error on device mtdblock0, logical block 2 uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 24 Buffer I/O error on device mtdblock0, logical block 3 uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 0 Buffer I/O error on device mtdblock0, logical block 0

Comment by zencow, Apr 07, 2009

On my RevC board, I thought I would attempt to update u-boot, but nand unlock returns a Usage message:

OMAP3 beagleboard.org # nand unlock
Usage: nand - NAND sub-system

version info from console during power-on:

Texas Instruments X-Loader 1.4.2 (Feb 19 2009 - 12:01:24)
U-Boot 2009.01-dirty (Feb 19 2009 - 12:22:31)
OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz OMAP3
Beagle board + LPDDR/NAND Board revision C
Comment by zencow, Apr 07, 2009

Also, on my RevC board, I've never been able to get Windows to correctly install the needed drivers for "U-Boot 2009.01-dirty". I keep getting "new hardware found" (and it is ignoring the linux.inf and gserial.inf as valid drivers), except once during validation (with User button held during power-on) when it identified as "OMAP3530". The last several times I've tried to install drivers (choosing the file manually thru the "have disk" dialog, I've been prompted for the location of usbser.sys. I've starting using an external power source instead of the USB port, as I don't really need the network routing thru my desktop.

Is anyone else seeing similar or do I have issues with my Windows USB drivers?

Comment by rrmutt, Apr 07, 2009

WARNING! Don't use this filesystem for anything but validation. Opkg is not configured and you will be dead in the water. Go here: http://beagleboard.org/demo/angstrom/

(from the mavens on irc://freenode/beagle)

Comment by AutumnCowboy, Apr 23, 2009

Link for "Recommended HP USB Disk Storage Format Tool 2.0.6" is dead. Here is another one.

http://downloads.pcworld.com/pub/new/utilities/peripherals/SP27608.exe

Comment by bitb...@gmail.com, Apr 26, 2009

On my RevC BB with u-boot: U-Boot 2009.01-dirty (Feb 19 2009 - 12:23:21) I cannot validate the EDID as per instructions above.

The "ibus 2 0x64" command issues a warning as it does NOT take two arguments - it only expects the "2" not the 0x64.

If I attempt to issue the commands: ibus 2 and imd 0x50 0 100 I get timeout/read errors.

It appears that the EDID instructions above are NOT valid for the RevC BB.

Comment by josephhaule, May 14, 2009

My terminal screen does not display any information below "Press CTRL-A Z for help on special keys." I am using a minicom 2.3-rc1

In fact, it displays "Offline" at the bottom of the window. Yes, the monitor screen for the beagle board does display the beagle board logo.

Has anyone had this issue?

Comment by swolpert, Jun 11, 2009

I spent a very long time playing with the NAND flash and u-boot to try to get my SD card to properly auto-boot.

If you plan to use u-boot from NAND, you must remove u-boot.bin from the SD card.

The u-boot load priority should likely be included in the documentation someplace.

Comment by beagleboard.jason, Jul 02, 2009

http://selfdestruct.net/misc/usbboot/SP27213.exe link is broken. There are some other Windows formatting utilities that work. Need to share a good one.

Comment by amitshah.utd, Jul 20, 2009

How to configure and check if wi-fi is working using wireless usb adapter (i.e. dongle)

Comment by bmcg...@ti.com, Jul 22, 2009

I was able to resolve the arecord overrun errors (reported by jason on 2/21/09) by changing the destination source file to media/ram/k. I executed the command from the /mnt directory.

arecord -t wav -c 2 -r 44100 -f S16_LE -v ../media/ram/k 
aplay -t wav -c 2 -r 44100 -f S16_LE -v ../media/ram/k 

I could also copy the file back to SD card and playback fine. Just seems like record can't keep up with writing to SD card.

Comment by bmcg...@ti.com, Jul 27, 2009

I posted additional comments/notes/feedback to the newsgroup. Please see post at: http://groups.google.com/group/beagleboard/browse_thread/thread/9c8750e67dbf398a/6d8268322f3d7530#6d8268322f3d7530

Comment by beagleintern, Oct 16, 2009

I followed the instructions given here and I have been able to successfully been able to restore my NAND flash on a rev C3 beagleboard. However, I am seeing the following output at the end of the restore step which says that it could not read normal.scr. I also noticed that it does not appear to be writing the uImage or ramdisk images from the SD card and placing them into NAND.

Begin Output

OMAP3 beagleboard.org # 40V Texas Instruments X-Loader 1.4.2 (Feb 19 2009 - 12:01:24) Reading boot sector Loading u-boot.bin from mmc U-Boot 2009.01-dirty (Feb 19 2009 - 12:23:21) I2C: ready OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz OMAP3 Beagle board + LPDDR/NAND DRAM: 256 MB NAND: 256 MiB Using default environment MUSB: using high speed In: serial usbtty Out: serial usbtty Err: serial usbtty Board revision C Serial #5ac400030000000004013f8901001001 Hit any key to stop autoboot: 0 reading boot.scr 679 bytes read Running bootscript from mmc ... ## Executing script at 80200000 reading x-load.bin.ift 20392 bytes read Replacing x-load Usage: nand - NAND sub-system HW ECC selected NAND erase: device 0 offset 0x0, size 0x80000 Erasing at 0x60000 -- 100% complete. OK NAND write: device 0 offset 0x0, size 0x20000

  1. 1072 bytes written: OK
NAND write: device 0 offset 0x20000, size 0x20000
  1. 1072 bytes written: OK
NAND write: device 0 offset 0x40000, size 0x20000
  1. 1072 bytes written: OK
NAND write: device 0 offset 0x60000, size 0x20000
  1. 1072 bytes written: OK
reading u-boot-f.bin 275928 bytes read Replacing u-boot Usage: nand - NAND sub-system SW ECC selected NAND erase: device 0 offset 0x80000, size 0x160000 Erasing at 0x1c0000 -- 100% complete. OK NAND write: device 0 offset 0x80000, size 0x160000
  1. 41792 bytes written: OK
Erasing environment settings Usage: nand - NAND sub-system NAND erase: device 0 offset 0x160000, size 0x20000 Erasing at 0x160000 -- 100% complete. OK reading normal.scr Invalid FAT entry Unable to read "normal.scr" from mmc 0:1

End Output

I also noticed that after the process was done the kernel did not boot as mentioned. My environment was left as:

OMAP3 beagleboard.org # printenv bootdelay=10 baudrate=115200 loadaddr=0x80200000 rdaddr=0x81600000 console=ttyS2,115200n8 optargs= mmcargs=setenv bootargs console=${console} ${optargs} root=/dev/mmcblk0p2 rw rot ramargs=setenv bootargs console=${console} ${optargs} root=/dev/ram0 rw ramdiskM ubifsargs=setenv bootargs console=${console} ${optargs} root=ubi0:beagleroot ubs jffs2args=setenv bootargs console=${console} ${optargs} root=/dev/mtdblock4 rw 2 loadbootscript=fatload mmc 0 ${loadaddr} boot.scr bootscript=echo Running bootscript from mmc ...; autoscr ${loadaddr} loaduimage=fatload mmc 0 ${loadaddr} uImage.bin loadramdisk=fatload mmc 0 ${rdaddr} ramdisk.gz ramboot=echo Booting from ramdisk.gz ...; run ramargs; bootm ${loadaddr} mmcboot=echo Booting from mmc ...; run mmcargs; bootm ${loadaddr} nandboot=echo Booting from nand ...; run jffs2args; nand read ${loadaddr} 28000} usbtty=cdc_acm stdout=serial,usbtty stdin=serial,usbtty stderr=serial,usbtty serial=5ac400030000000004013f8901001001 bootargs=console=ttyS2,115200n8 console=tty0 root=/dev/mmcblk0p2 rootwait rootf0 filesize=435D8 bootcmd=mmcinit; fatload mmc 0 0x80300000 uImage; bootm 0x80300000

I am able to save new environment variables to the NAND and the board will boot into u-boot, but I am wondering why my kernel image and file system were not written into NAND. Any help would be appreciatI also noticed that after the process was done the kernel did not boot as mentioned. My environment was left as:

OMAP3 beagleboard.org # printenv bootdelay=10 baudrate=115200 loadaddr=0x80200000 rdaddr=0x81600000 console=ttyS2,115200n8 optargs= mmcargs=setenv bootargs console=${console} ${optargs} root=/dev/mmcblk0p2 rw rot ramargs=setenv bootargs console=${console} ${optargs} root=/dev/ram0 rw ramdiskM ubifsargs=setenv bootargs console=${console} ${optargs} root=ubi0:beagleroot ubs jffs2args=setenv bootargs console=${console} ${optargs} root=/dev/mtdblock4 rw 2 loadbootscript=fatload mmc 0 ${loadaddr} boot.scr bootscript=echo Running bootscript from mmc ...; autoscr ${loadaddr} loaduimage=fatload mmc 0 ${loadaddr} uImage.bin loadramdisk=fatload mmc 0 ${rdaddr} ramdisk.gz ramboot=echo Booting from ramdisk.gz ...; run ramargs; bootm ${loadaddr} mmcboot=echo Booting from mmc ...; run mmcargs; bootm ${loadaddr} nandboot=echo Booting from nand ...; run jffs2args; nand read ${loadaddr} 28000} usbtty=cdc_acm stdout=serial,usbtty stdin=serial,usbtty stderr=serial,usbtty serial=5ac400030000000004013f8901001001 bootargs=console=ttyS2,115200n8 console=tty0 root=/dev/mmcblk0p2 rootwait rootf0 filesize=435D8 bootcmd=mmcinit; fatload mmc 0 0x80300000 uImage; bootm 0x80300000

I am able to save new environment variables to the NAND and the board will boot into u-boot, but I am wondering why my kernel image and file system were not written into NAND. Any help would be appreciated

Comment by fawad.email, Oct 22, 2009

I got these major errors. does any one know any solution about this

hwclock: can't open /dev/misc/rtc no such file or directory buffer i/o error on device mtdblock1, logical block 21 uncorrectable error dev mtdblock1, sector 168


Sign in to add a comment
Hosted by Google Code