My favorites | Sign in
Logo
             
Search
for
Updated Jul 29, 2008 by sm.khasim
Labels: Featured
BeagleBoardDiagnostics  
Beagle Board Diagnostic Tools and Procedure

Validating Beagle Board with Tests / Diagnostics

Setup

Prepare MMC/SD card for Validation

Copy the following files on to MMC

  1. x-load.bin.ift for NAND as x-load.bin.ift
  2. MLO as MLO
  3. u-boot to flash onto NAND as flash-uboot.bin
  4. u-boot.bin for MMC boot as u-boot.bin
  5. ramdisk Image as rd-ext2.bin
  6. Kernel (uImage) as uImage
  7. Sample Video File as HARRY.YUV

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 Host machine yet.
  12. If you have Windows PC as a host machine then copy the Linux.inf RNDIS driver configuration file to Host machine. Generally windows will have one.

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:

Generally when board is in production bootcmd is empty.
  • The terminal screen should look like
  • 40T
    
    Texas Instruments X-Loader 1.41
    Starting on with MMC
    Reading boot sector
    
    717372 Bytes Read from MMC
    Starting OS Bootloader from MMC...
    
    
    U-Boot 1.3.3 (Jul 10 2008 - 16:30:47)
    
    OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
    OMAP3 Beagle Board + LPDDR/NAND
    DRAM:  128 MB
    NAND:  256 MiB
    *** Warning - bad CRC or NAND, using default environment
    
    In:    serial
    Out:   serial
    Err:   serial
    Audio Tone on Speakers  ... complete
    Hit any key to stop autoboot:  0
  • If NAND was flashed additional lines will be displayed as
  • reading x-load.bin.ift
    
    9808 bytes read
    device 0 whole chip
    nand_unlock: start: 00000000, length: 268435456!
    NAND flash successfully unlocked
    
    NAND erase: device 0 offset 0x0, size 0x80000
    Erasing at 0x60000 -- 100% complete.
    OK
    
    NAND write: device 0 offset 0x0, size 0x80000
    
    Writing data at 0x7f800 -- 100% complete.
     524288 bytes written: OK
    reading flash-uboot.bin
    
    717116 bytes read
    device 0 whole chip
    nand_unlock: start: 00000000, length: 268435456!
    NAND flash successfully unlocked
    
    NAND erase: device 0 offset 0x80000, size 0x160000
    Erasing at 0x1c0000 -- 100% complete.
    OK
    
    NAND write: device 0 offset 0x80000, size 0x160000
    
    Writing data at 0x1df800 -- 100% complete.
     1441792 bytes written: OK
    OMAP3 beagleboard.org #

Other tests will continue after Kernel booting, follow the below procedure to continue...

  • Set the boot arguments for kernel
  • OMAP3 beagleboard.org # setenv bootargs console=ttyS2,115200n8 ramdisk_size=8192 root=/dev/ram0 rw rootfstype=ext2 initrd=0x81600000,8M nohz=0ff
  • Set boot command as
  • OMAP3 beagleboard.org # setenv bootcmd 'mmcinit;fatload mmc 0 0x80300000 uImage;fatload mmc 0 0x81600000 rd-ext2.bin;bootm 0x80300000';
  • Execute the boot command
  • OMAP3 beagleboard.org # run bootcmd
    Following status will be displayed
    reading uImage
    
    1856680 bytes read
    reading rd-ext2.bin
    
    3394477 bytes read
  • Kernel boots
  • ## Booting kernel from Legacy Image at 80300000 ...
       Image Name:   Linux-2.6.22.18-omap3
       Image Type:   ARM Linux Kernel Image (uncompressed)
       Data Size:    1856616 Bytes =  1.8 MB
       Load Address: 80008000
       Entry Point:  80008000
       Verifying Checksum ... OK
       Loading Kernel Image ... OK
    OK
    
    Starting kernel ...
    
    Uncompressing Linux.............................................................
    ............................................................. done, booting the
    kernel.
    <5>Linux version 2.6.22.18-omap3 (root@fedoraserver) (gcc version 4.2.1 (CodeSou
    rcery Sourcery G++ Lite 2007q3-51)) #1 Thu Jul 24 15:29:36 IST 2008
    CPU: ARMv7 Processor [411fc082] revision 2 (ARMv7), cr=00c5387f
    Machine: OMAP3 Beagle board
    < followed by other messages till it reaches console ...>
    System initialization complete.
    
    Please press Enter to activate this console.
    <hit a ENTER Key>
  1. To Test USB OTG as Peripheral (USB Ethernet Gadget with Windows HOST machine)
    • If you have not done the setup required for Window RNDIS configuration then Host machine will prompt for USB new hardware found screen, go through the steps below (courtesy Steve K) to do the same , other wise continue by skipping this step
    • 1. Select the Linux.inf as the driver, if you don't find it automatically, 
      then you can copy one from Linux Kernel Source folder (2.6_kernel_revb-v2.tar.gz), 
      from the path "2.6_kernel/Documentation/usb/linux.inf"
      2. On the Windows PC, bring up Network Connections 
      and look for the Device Name: Linux USB Ethernet/RNDIS Gadget. 
      Right-mouse click for Properties. Scroll down to Internet Protocol (TCP/IP), select it, and press the Properties button.
      3. Select an IP address close to the one selected for the Beagle Board. This example uses an IP address of 192.168.1.5 and a Subnet mask of 255.255.255.0.
      4. Configure a static IP address for Beagle Board with the ifconfig command. The example below configures an IP address of 192.168.1.1 with a subnet mask of 255.255.255.0.
      [root@beagleboard mmc]# ifconfig usb0 192.168.1.1 netmask 255.255.255.0
      5. On the terminal emulator connected to the Beagle Board use ping to test the connection. Press the Ctrl-C buttons to terminate ping.
      [root@beagleboard mmc]# ping 192.168.1.5
      PING 192.168.1.5 (192.168.1.5): 56 data bytes
      64 bytes from 192.168.1.5: seq=0 ttl=128 time=0.885 ms
      64 bytes from 192.168.1.5: seq=1 ttl=128 time=0.977 ms
      64 bytes from 192.168.1.5: seq=2 ttl=128 time=0.977 ms
      do a 
      [root@beagleboard mmc]#ifconfig usb0 down
  2. Mount the MMC/SD Card
  3. [root@beagleboard /]# mount -t vfat /dev/mmcblk0p1 /mnt/mmc/
    [root@beagleboard /]# cd /mnt/mmc/
  4. To Test DVI Interface by streaming a Video
  5. [root@beagleboard mmc]# stream_video
    Should display a 320x240 video of Stephane Edberg playing Tennis on DVI screen
  6. To Test S-Video Interface by streaming a Video
  7. [root@beagleboard mmc]# echo 'tv' > /sys/class/display_control/omap_disp_control
    /video1
    [root@beagleboard mmc]# stream_video
    Should display a 320x240 video of Stephane Edberg playing Tennis on TV
  8. To Test Audio-In Interface
  9. 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
  10. To Test Audio-Out Interface, Playback the recorded Audio
  11. [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
  12. Reboot the board to test USB HOST and to double check if NAND was flashed
    1. umount the SD/MMC card
    2.          [root@beagleboard mmc]# cd /
               [root@beagleboard mmc]# umount /mnt/mmc
    3. Remove the SD/MMC card from the slot
    4. Remove the existing Cable
    5. Connect a mini A to USB A converter to USB OTG port of Beagle Board
    6. Connect a HUB to USB A connector.
    7. Connect USB peripherals (as needed for validation)like Keyboad, Mouse, Ethernet to USB HUB
    8. Power On the Beagle board using Power Adapter and Do NOT press any switch
    9. This should boot u-boot from NAND
    10.        Texas Instruments X-Loader 1.41
             Starting OS Bootloader...
      
      
             U-Boot 1.3.3 (Jul 10 2008 - 16:33:09)
      
             OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
             OMAP3 Beagle Board + LPDDR/NAND
             DRAM:  128 MB
             NAND:  256 MiB
             *** Warning - bad CRC or NAND, using default environment
      
             In:    serial
             Out:   serial
             Err:   serial
             Audio Tone on Speakers  ... complete
             Hit any key to stop autoboot:  0
             OMAP3 beagleboard.org #
             NOTE : Make Sure there is no such line "Starting on with MMC" in boot messages
    11. Re-Insert the MMC Card
    12. Again Boot the Kernel by following below steps
      • Set the boot arguments for kernel
      • OMAP3 beagleboard.org # setenv bootargs console=ttyS2,115200n8 ramdisk_size=8192 root=/dev/ram0 rw rootfstype=ext2 initrd=0x81600000,8M nohz=0ff
      • Set boot command as
      • OMAP3 beagleboard.org # setenv bootcmd 'mmcinit;fatload mmc 0 0x80300000 uImage;fatload mmc 0 0x81600000 rd-ext2.bin;bootm 0x80300000';
      • Execute the boot command
      • OMAP3 beagleboard.org # run bootcmd
        Following status will be displayed
        reading uImage
        
        1856680 bytes read
        reading rd-ext2.bin
        
        3394477 bytes read
      • Kernel boots
  13. To Test USB OTG as HOST using a USB Keyboard
  14. [root@beagleboard mmc]# evtest /dev/input/event1
    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
  15. To Test USB OTG as HOST using a USB Mouse
  16. [root@beagleboard mmc]# evtest /dev/input/event0
    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
  17. To Test USB OTG as HOST using a USB Ethernet Dongle
  18. [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 jkridner, Aug 25, 2008

You must copy MLO onto the MMC/SD card first. This needs to be reflected in the instructions.

Comment by jkridner, Aug 25, 2008

To do this on an initialized board, is/when-is/why-is it necessary to 'nand unlock;nand erase'?

Comment by specialcomp, Sep 05, 2008

I use a later version of the HP USB Disk Storage Format Tool for my Windows Embedded work, but is there a reason you recommend 2.0.6 for Linux?

http://h50178.www5.hp.com/local_drivers/17550/SP27608.exe

TITLE: Windows-based Format Utility for HP Drive Key or DiskOnKey? USB Device

VERSION: 2.1.8 Rev. A DESCRIPTION: This SoftPaq? contains a Windows-based format utility for the HP Drive Key or DiskOnKey? USB 2.0 device.

PURPOSE: Routine SOFTPAQ NUMBER: SP27608 EFFECTIVE DATE: May 17, 2004 CATEGORY: Driver - Storage SSM SUPPORTED: No

ENHANCEMENTS: New Windows-based interface. (For DOS-based interface, download SoftPaq? SP27214.)

FIXES: - Allows creation of a FAT32 volume larger than 32 GB. - Fixes installation issue where installation process stopped after the earlier version of software was uninstalled and the new software was not automatically installed. The installation process now restarts automatically to install the new software after uninstalling the older version.

PREREQUISITES: - Requires an HP Drive Key or DiskOnKey? device plugged into a USB 2.0 port.

HOW TO USE: 1. Plug the HP Drive Key device into an available USB 2.0 port.

2. Download the SoftPaq? .EXE file to a directory on your hard drive.

3. Execute the downloaded file and follow the on-screen instructions. If prompted to overwrite any files, answer Yes to all to continue installation.

Copyright (c) 2004 Hewlett-Packard Development Company, L.P.

Comment by ron...@peoplepc.com, Sep 20, 2008

I'm trying to boot the kernel from mmc/sd, following the above directions.

It stops with:

<6>cpuidle: using governor menu cpuidle: using governor menu <5>RAMDISK: Compressed image found at block 0 RAMDISK: Compressed image found at block 0 <3>invalid compressed format (err=2) invalid compressed format (err=2) VFS: Mounted root (ext2 filesystem). VFS: Mounted root (ext2 filesystem). <6>Freeing init memory: 132K Freeing init memory: 132K <2>EXT2-fs error (device ram0): ext2_check_page: EXT2-fs error (device ram0): ext2_check_page: bad entry in directory #369: rec_len is smaller than minimal - offset=0, inode=0, rec_len=0, name_len=0bad entry in directory #369: rec_len is smaller than minimal - off set=0, inode=0, rec_len=0, name_len=0

<0>Kernel panic - not syncing: No init found. Try passing init= option to kernel. Kernel panic - not syncing: No init found. Try passing init= option to kernel.

The sd was written on a windows machine.

Do I need a linux machine to set up the sd?

Comment by match.head, Oct 30, 2008

Two comments: The linux.inf driver does not work for both Windows XP and Vista 64; it say 'No device information found' or some such nonsense. There is no directory /sys/class/display_control for use with the S-video test. WTF?

Comment by beagleboard.jason, Nov 02, 2008

Sources can be found at BeagleSourceCode.

Comment by blurgs, Nov 03, 2008

How to boot from an SD Card, more info:

With HP utility v2.1.8, the described method doesn't work with some of my SD cards. I noticed, that the following steps always work regardless of the SD card I use under WinXP:

1) Format the SD Card under WinXP. 2) Make the SD Card bootable using Roadkil's sector editor or another utility by: 2.1) Download the editor:http://www.roadkil.net/program.php?ProgramID=24 2.2) Open your SD card physical sector 2.3) Write 0x80 at offset 0x1BE (1st partition entry) 2.4) Save sector 2.5) Exit Sector Editor application 3) Copy ONLY the MLO file to your SD card so that it gets copied at the start of the memory 4) Copy the rest of the files onto the SD Card and follow the nornal steps.

Comment by beagleboard.jason, Nov 04, 2008

Yes, 2.0.6 works, but 2.1.8 does not.

Comment by winyvermabaroda, Mar 19, 2009

The "To Test USB OTG as HOST using a USB Ethernet Dongle" test listed in this article is not working for me. I am using B5 rev of Beagle board. My ethernet dongle is listed as "usb0" and I have tried to enable it accordingly, yet I am not able to configure it. Any help would be appreciated

Comment by allenfairchild, Mar 21, 2009

This may have been discussed but for rndis to work with Vista 64 (maybe XP 64 also) you can modify this template: http://msdn.microsoft.com/en-us/library/bb500930.aspx and replace 'USB\VID_xxxx&PID_yyyy' with 'USB\VID_0525&PID_a4a2'. It worked for me and I can now successfully ping the beagle from PC and visa versa. Hope this helps

Comment by saradhi.ananth, Sep 21, 2009

files not found!! I was trying to download the files for booting the BB from SD/MMC card, whose links are available on this page. That was when I encountered the file not found error for all of them.

Can somebody help me find alternate locations for downloading these files?

many thanks in advance.

ananth saradhi.ananth@gmail.com

Comment by tugalsan, Oct 30, 2009

i do not have hdmi, and i cannot switch my beagleboard to svideo. how can i do that, any ideas?

Comment by tugalsan, Oct 30, 2009

ubuntu@beagleboard:/$ cd /

ubuntu@beagleboard:/$ echo 'tv' > /sys/class/display_control/omap_disp_control

-bash: /sys/class/display_control/omap_disp_control: No such file or directory

ubuntu@beagleboard:/$ stream_video

-bash: stream_video: command not found

ubuntu@beagleboard:/$ cd /sys/class/

ubuntu@beagleboard:/sys/class$ ls

bdi hwmon mem scsi_device thermal vc

block i2c-adapter misc scsi_disk tty vtconsole

bluetooth i2c-dev mmc_host scsi_generic ubi

display ieee80211 mtd scsi_host usb_device

firmware input net sound usb_endpoint

gpio leds regulator spidev usb_host

graphics mdio_bus rtc spi_master usbmon

ubuntu@beagleboard:/sys/class$

help neede :(


Sign in to add a comment
Hosted by Google Code