Board Farm Survey

Here is information about different peoples farms:

= Tim Bird's Board Farm =
 * For notes about minnowboard test provisioning, see Tims minnowboard test provisioning

beaglebone black

 * power provided by USB, mediated by Sony Debug Board
 * network via an Ethernet hub, and also via USB networking to host,
 * USB connection to host (providing network and mass storage device from the beaglebone to the host) and host providing power.
 * serial console mediated by Sony Debug Board (Sony_Debug_Assist_board)

The Sony Debug board controls the USB connection (can toggle it on and off), which also controls the power, and converts serial UART to USB serial. The Sony Debug board is connected to the host by its own USB cable, and by another cable which acts as the pass-through USB from the beaglebone to the host.


 * The firmware is uboot.
 * storage: firmware, kernel and root filesystem are on sdcard.

Control of the Sony Debug Board is via another interface over the SDB control USB cable, using character sequences to issue commands, and reading the interface as a character device to examine status (power draw, USB connection status, button connection status, etc.)

minnowboard

 * power control via digital loggers Web Power Switch (https://www.digital-loggers.com/lpc.html)
 * network via local Ethernet hub
 * USB connection - not connected to anything
 * serial console - not used. If it was used, it would be via dedicated FTDI serial to USB serial cable.


 * firmware: The firmware is some Intel uefi thing, with grub as the bootloader
 * storage: grub, kernel and root filesystem are on sdcard.

I have my own custom python program for managing power ports on the web power switch called: powerswitch-set. To configure what board is connected to what port, I add the name to the powerswitch-set command, and also modify the ttc configuration which drives that command.

renesas RCar

 * power via digital loggers Web Power Switch
 * network via an Ethernet hub
 * USB not connected to host
 * serial console via on-board UART to USB-serial converter, then to host via USB
 * button control via Sony Debug Board (USB with character-based SDB control interface)


 * firmware: The firmware is Uboot, on flash (I think)
 * storage:
 * firmware on flash
 * kernel loaded via tftp
 * root filesystem via nfsroot fs

raspberry pi 3

 * power provided by USB, mediated by Sony Debug Board
 * network via onboard wifi
 * USB not connected to host (used for peripherals)
 * serial console through Sony Debug Board
 * The firmware is uboot.
 * storage: firmware, kernel and root filesystem are on sdcard.

Tim's board control software

 * ttc (with mini-scripts built into the ttc config for performing Sony Debug Board operations)
 * powerswitch-set, powerswitch-cycle
 * minicom
 * ssh, ssh_exec (a custom ssh wrapper), scp

I used to use the following:
 * adb
 * fastboot
 * telnet_exec
 * switch-target-fs (custom program to swap nfsrootfs for different users)
 * wrclient.py (custom python program to control a web relay)

= Geert Uytterhoeven's Board Farm =

Power

 * 450W PC power supply with Haswell C6/C7 Zero Load Support:
 * 5V standby power for board farm controller,
 * 5V and 12V for target boards,
 * Custom power distribution box (incl. fuses).

Board Farm Control
The whole farm is controlled by a single BeagleBone Black, using:
 * 10-port USB hub (BBB supports only 8 USB devices!), for:
 * USB consoles,
 * 4-port USB-serial adapter, for boards with DE-9/DB-25 RS232 consoles,
 * Webcam, to keep an eye on the display of the Armadillo-800 EVA,
 * BayLibre ACME, for target board power control and measurement,
 * 3 Optoboards, for:
 * Main power control,
 * Target board control (reset, wake-up, soft power-on, ...),
 * 16-port Gigabit Ethernet Switch,
 * Custom scripts accessing GPIO and IIO through sysfs,
 * Simple PERL web server,
 * DHCP, TFTP and NFS root are handled separately.

Target Boards
Eight target boards, incl.:
 * Atmark Techno Armadillo-800 EVA,
 * Kyoto Microcomputer Co. KZM-A9-GT,
 * Renesas R-Car H3 and M3-W Salvator-X,
 * Renesas R-Car H3 ES2.0 Salvator-XS,
 * Renesas R-Mobile APE6-EVM.