Simplify and standardize testing of BeagleBoard.org designs
Clone or download
Latest commit b3c4095 Jan 24, 2019

README.md

beagle-tester

Buildroot images

Download the latest releases bundled in Buildroot at https://github.com/beagleboard/buildroot/releases

Supported boards

Supported scanners

EEPROM jumper wire

The step of connecting the EEPROM jumper wire is not mentioned in the steps below. The steps below may be followed by those who are not doing this in a production environment, but may instead simply be doing this to validate their hardware. Please connect the EEPROM jumper wire as needed for each board in production.

Software setup

For production, the boards should be flashed with an approved production image ahead of beginning this test. No additional software setup steps should be performed. For non-capes, the first 12 characters of the EEPROM should also be valid ahead of running this test, though the additional serial number characters need not and should not be programmed until this test is run.

If not already setup, on a recent BeagleBoard.org Debian image, perform:

apt-get update
DEBIAN_FRONTEND=noninteractive apt-get install -y roboticscape
cd /opt/source
git clone https://github.com/jadonk/beagle-tester
cd beagle-tester
make && make install

Serial number barcode format

Each board that has an on-board EEPROM should have an associated 16 digit serial number placed onto a barcode on the board.

The first 4 ASCII characters indicate the board type:

  • BeagleBone Black - 00C0
  • BeagleBone Black Wireless - BWA5
  • BeagleBone Blue - BLA2
  • PocketBeagle GamePup Cape - PC00
  • PocketBeagle TechLab Cape - PC01

The second 4 characters should:

  • For non-capes, indicate the manufacturing week in the format YYWW, where YY is currently 19 and WW is currently 03.
  • For capes, indicate the revision level, such as 00A3.

The next 4 characters should:

  • For capes, indicate the manufacturing week in the format YYWW, where YY is currently 19 and WW is currently 03. Capes have exclusive manufacturers, so the manufaturer-specific product code can be left off.
  • For non-capes, be a manufacturer-specific product code. If you are a new manufacturer, please choose something unique you can use to identify your boards.

Manuracturer-specific allocations include, but are not limited to:

  • BBGW for GHI manufactured BeagleBone Black Wireless
  • ELnn for Embest manufactured BeagleBone Blue

The final 4 characters should:

  • Be a sequential decimal number. If more than 10,000 boards are manufactured that week, roll over the top digit to an ASCII hex character.

BeagleBone Black

Required equipment

  • TV: HDMI TV capable of 1280x720p60 (720p) (HDMI monitor if no audio testing) with HDMI-to-microHDMI cable
  • Router: Ethernet router (configured to answer DHCP requests and answer pings on the provided gateway) with Ethernet cable
  • Host: BeagleBone Black or other computer (configured to make DHCP requests over USB RNDIS interface and answer pings)
  • Scanner: A supported barcode scanner (listed above) (along with a suitable 16 character barcode on the device under test)
  • Power: Approved 5V power brick
  • DUT: BeagleBone Black (device) under test

Test steps

  1. Connect microHDMI on DUT to TV
  2. Connect Ethernet on DUT to router
  3. Connect a wire from TP4 to ground to enable EEPROM writing of board revision and serial number
  4. Connect DUT to power
  5. Wait for the BeagleBoard.org desktop to show (should be under 2 minutes)
  6. Connect scanner
  7. Wait for the CISPR test animation and audio playback (should be under 15 seconds) CISPR image
  8. Connect USB client port on DUT to host
  9. Scan the 16 character barcode
  10. Pass or fail will be indicated by a respectively green or red box on the TV
  11. Disconnect scanner
  12. Disconnect host
  13. Disconnect power
  14. Disconnect remaining devices

BeagleBone Black Wireless

Required equipment

  • TV: HDMI TV capable of 1280x720p60 (720p) (HDMI monitor if no audio testing) with HDMI to microHDMI cable
  • AP: BeagleBone Black Wireless acting as a WiFi access point (should be default on production image) (SSID: BeagleBone-XXXX, PSK: BeagleBone)
  • Host: BeagleBone Black Wireless or other computer (configured to make DHCP requests over USB RNDIS interface and answer pings)
  • Scanner: Supported barcode scanner (listed above) (along with a suitable 16 character barcode on the device under test)
  • Power: Approved 5V power brick
  • DUT: BeagleBone Black Wireless (device) under test

Test steps

  1. Ensure AP is functioning nearby
  2. Connect microHDMI on DUT to TV
  3. Connect a wire from TP1 to ground to enable EEPROM writing of board revision and serial number
  4. Connect DUT to power
  5. Wait for the BeagleBoard.org desktop to show (should be under 2 minutes)
  6. Connect USB host on DUT to scanner
  7. Wait for the CISPR test animation and audio playback (should be under 15 seconds) CISPR image
  8. Connect USB client on DUT to host
  9. Scan the 16 character barcode
  10. Pass or fail will be indicated by a respectively green or red box on the TV
  11. Disconnect scanner
  12. Disconnect host
  13. Disconnect power
  14. Disconnect remaining devices

BeagleBone Blue

Required equipment

  • AP: BeagleBone Blue acting as a WiFi access point (use beagle-tester-host-setup.sh script) (SSID: BeagleBone-XXXX, PSK: BeagleBone)
  • Host: BeagleBone Blue or other computer (configured to make DHCP requests over USB RNDIS interface and answer pings, use beagle-tester-host-setup.sh script)
  • Scanner: Supported barcode scanner (listed above) (along with a suitable 16 character barcode on the device under test)
  • Power: Approved 12V power brick
  • DUT: BeagleBone Blue (device) under test

Test steps

  1. Ensure AP is functioning nearby
  2. Connect a wire from WP to GND to enable EEPROM writing of board revision and serial number
  3. Connect DUT to power
  4. Connect USB host on DUT to scanner
  5. Wait for the G and R LEDs to be lit
  6. Connect USB client on DUT to host
  7. Scan the 16 character barcode
  8. Pass or fail will be indicated by respectively G or R led flashing exclusively (blue LEDs 0-3 will flash indicating the test number executing and if blue LEDs 0-3 stop flashing before G or R begin flashing, then the board hung and failed)
  9. Disconnect scanner
  10. Disconnect host
  11. Disconnect power

BeagleBoard-xM

Required equipment

  • TV: DVI-D/HDMI TV capable of 1280x1024 with HDMI cable
  • Router: Ethernet router (configured to answer DHCP requests and answer pings on the provided gateway)
  • Host: BeagleBone Black or other computer (configured to make DHCP requests over USB RNDIS interface and answer pings)
  • Scanner: Supported barcode scanner (listed above) (along with a suitable 16 character barcode on the device under test)
  • Flashdrives: Three (3) USB 2.0 HS capable flash drives
  • Speaker: Speaker with 1/8" audio patch cable
  • Power: Approved 5V power brick
  • DUT: BeagleBoard-xM (device) under test

Test steps

  1. Connect HDMI on DUT to TV
  2. Connect Ethernet on DUT to router
  3. Connect 3x USB host on DUT to flashdrives
  4. Connect audio output on DUT to speaker
  5. Connect DUT to power
  6. Wait for the BeagleBoard.org desktop to show (should be under 2 minutes)
  7. Connect USB host on DUT to scanner
  8. Wait for the CISPR test animation and audio playback (should be under 15 seconds) CISPR image
  9. Connect USB client on DUT to host
  10. Scan a barcode to begin the test
  11. Pass or fail will be indicated by a respectively green or red box on the TV xM pass image
  12. Disconnect scanner
  13. Disconnect host
  14. Disconnect power
  15. Disconnect remaining devices

GamePup

Required equipment

  • Host: PocketBeagle used to execute the test with programmed microSD inserted
  • Scanner: A supported barcode scanner (listed above) (along with a suitable 16 character barcode on the device under test)
  • Power: Approved 5V power brick with microUSB cable
  • DUT: GapePup Cape (device) under test

Test steps

  1. Connect host and DUT
  2. Connect power to host
  3. Wait for the LCD on DUT to turn on (should be under 30 seconds)
  4. Connect scanner to DUT
  5. Wait for the CISPR test animation and audio playback (should be under 5 seconds) CISPR image
  6. Scan barcode to begin the test
  7. Observe tone played from DUT
  8. Pass or fail will be indicated by a respectively green or red box on the LCD on DUT
  9. Observe 2 red LEDs on DUT lit steadily
  10. Disconnect scanner
  11. Press buttons to observe key presses sent to the console (needs updates for quality testing)
  12. Disconnect power
  13. Disconnect host

Buttons

  • Select: 5
  • Start: 1
  • Left-Up: up arrow, ^[[A
  • Left-Down: down arrow, ^[[B
  • Left-Right: right arrow, ^[[C
  • Left-Left: left arrow, ^[[D
  • Right-Up: ESC
  • Right-Right: TAB
  • Right-Left: p
  • Right-Down: ENTER

TechLab

Required equipment

  • Host: PocketBeagle used to execute the test with programmed microSD inserted
  • Scanner: A supported barcode scanner (listed above) (along with a suitable 16 character barcode on the device under test)
  • Power: Approved 5V power brick with microUSB cable
  • DUT: TechLab Cape (device) under test

Test steps

  1. Connect host and DUT
  2. Connect power to host
  3. Wait for "heartbeat" on host LED USR0
  4. Connect scanner to DUT
  5. Wait for all host USRx LEDs to be on solid
  6. Scan barcode to begin the test
  7. Observe all 14 seven segment LEDs to turn on
  8. Observe tone played from DUT
  9. Observe RGB LED cycle through red-green-blue
  10. Observe all host USRx LEDs to be on solid again
  11. Observe RGB LED to be flashing green (not red)
  12. Press the L button to observe the left seven segment display to turn off
  13. Press the R button to observe the right seven segment display to turn off
  14. Disconnect scanner
  15. Disconnect power
  16. Disconnect host