Difference between revisions of "Board Farm"

From eLinux.org
Jump to: navigation, search
(add link to control program)
(multi-function)
(46 intermediate revisions by 18 users not shown)
Line 23: Line 23:
 
* Mike Holmes - <mike.holmes (at) linaro.org>
 
* Mike Holmes - <mike.holmes (at) linaro.org>
 
* Matteo Vit - <matteo.vit (at) dev.starwaredesign.com>
 
* Matteo Vit - <matteo.vit (at) dev.starwaredesign.com>
* Attie Grande - <attie (at) argentum-systems.co.uk>
+
* Attie Grande - <attie.grande (at) argentum-systems.co.uk>
 
* Roland Hieber <r <dot> hieber <at> pengutronix <dot> de>
 
* Roland Hieber <r <dot> hieber <at> pengutronix <dot> de>
 
* Tim Orling <ticotimo (at) gmail (dot) com>
 
* Tim Orling <ticotimo (at) gmail (dot) com>
 
* Ryan Arnold <ryan <dot> arnold <at> linaro <dot> org>
 
* Ryan Arnold <ryan <dot> arnold <at> linaro <dot> org>
 +
* Behan Webster <behanw (at) converseincode (dot) com> *
 +
* Michal Simek <monstr (at) monstr (dot) eu>
 +
* Krzysztof Kozlowski <krzk (at) kernel (dot) org>
 +
* Jagan Teki <jagan (at) openedev (dot) com>
 +
* Heiko Schocher <hs (at) denx (dot) de>
 +
* Khiem Nguyen <khiem.nguyen.xt (at) renesas.com>
 +
* Amit Kucheria <amit.kucheria (at) verdurent.com>
  
 
  * = have seen this person on the e-mail list, or already subscribed.
 
  * = have seen this person on the e-mail list, or already subscribed.
Line 32: Line 39:
 
== Mailing list ==
 
== Mailing list ==
 
Discussions on this topic have started at on the "Automated Testing" mailing list of the Yocto Project
 
Discussions on this topic have started at on the "Automated Testing" mailing list of the Yocto Project
* See https://lists.yoctoproject.org/listinfo/automated-testing
+
* See https://lists.yoctoproject.org/g/automated-testing
 +
* (was https://lists.yoctoproject.org/listinfo/automated-testing)
  
 
== Next meeting ==
 
== Next meeting ==
To be determined - probably at [http://events.linuxfoundation.org/events/embedded-linux-conference ELC 2018]
+
To be determined.
 +
 
 +
Maybe at Plumbers 2018, Connect, or ELCE 2018
 +
 
 +
See [[Automated Testing Summit]]
  
 
= Actions =
 
= Actions =
Line 47: Line 59:
 
** r4d
 
** r4d
 
* survey of existing tools, hardware, practices
 
* survey of existing tools, hardware, practices
 +
* create a definition for an "automated testing" stack - see [[Automated Testing Stack]]
 +
** start with definitions from SLAV?
 +
** identify different areas of test automation operation
  
 
= Presentations =
 
= Presentations =
Line 59: Line 74:
 
* Introduction to kernelCI.org
 
* Introduction to kernelCI.org
 
** [http://baylibre.com/intro-kernelci/ Blog Article] and [https://youtu.be/kSe5GMJvqOI Video]
 
** [http://baylibre.com/intro-kernelci/ Blog Article] and [https://youtu.be/kSe5GMJvqOI Video]
 +
* Piece of cake - testing remote embedded devices made easy with MuxPi by Paweł Wieczorek at FOSDEM 2018
 +
** [https://fosdem.org/2018/schedule/event/remote_embedded_testing/attachments/slides/2149/export/events/attachments/remote_embedded_testing/slides/2149/Piece_of_cake.pdf Slides] and [https://fosdem.org/2018/schedule/event/remote_embedded_testing Details]
  
 
= Best Practices =
 
= Best Practices =
Line 69: Line 86:
 
= Hardware =
 
= Hardware =
 
== SD muxers ==
 
== SD muxers ==
* [http://www.pengutronix.de/en/2017-10-23-usb-sd-mux-automated-sd-card-juggler.html USB-SD-Mux] by Pengutronix
+
* [http://www.pengutronix.de/en/2017-10-23-usb-sd-mux-automated-sd-card-juggler.html USB-SD-Mux] by Pengutronix, now [https://linux-automation.com/en/blog/2019-10-25-launch.html available]
* [https://wiki.tizen.org/SD_MUX SD-MUX] by Tizen
+
* [https://wiki.tizen.org/SD_MUX SD-MUX] by Tizen (deprecated - see MuxPi)
* [https://wiki.tizen.org/MuxPi MuxPi] by Tizen
+
* [https://wiki.tizen.org/MuxPi MuxPi] by Tizen (MuxPi is the successor to SD-MUX)
 +
* [https://www.timesys.com/open-source-embedded/board-farm/ IO-CX] by Timesys
  
 
Kevin Hilman mentioned (at ELCE 2017) wifi SDCards as a way to handle the SD mux problem.
 
Kevin Hilman mentioned (at ELCE 2017) wifi SDCards as a way to handle the SD mux problem.
Was he referring to something like these? http://techpp.com/2015/04/28/wifi-sd-cards-camera/
+
Was he referring to something like these? http://techpp.com/2015/04/28/wifi-sd-cards-camera/
  
 
== power control ==
 
== power control ==
Line 82: Line 100:
 
** control program by Tim Bird: [[File:Powerswitch-set.sh]]
 
** control program by Tim Bird: [[File:Powerswitch-set.sh]]
 
* [https://energenie4u.co.uk/catalogue/product/ENER011 Energenie Power Management System (USB controlled 4-way power switch +2 always on) (UK)]
 
* [https://energenie4u.co.uk/catalogue/product/ENER011 Energenie Power Management System (USB controlled 4-way power switch +2 always on) (UK)]
 +
* [https://github.com/mvp/uhubctl uhubctl] USB hub per-port power control
  
 
== relays/buttons ==
 
== relays/buttons ==
 
* [https://github.com/geertu/Optoboard 8-Channel Opto-Isolator Board for Board Farm Control]
 
* [https://github.com/geertu/Optoboard 8-Channel Opto-Isolator Board for Board Farm Control]
 +
* [https://www.digital-loggers.com/din.html DIN Relay IV by Digital Loggers]
 +
** This uses the same control protocol as the Web Power Switch mentioned above
 +
* [https://www.kmtronic.com/lan-ethernet-ip-8-channels-web-relay-board.html KMTronic 8-channel IP relay controller]
 +
* [https://www.waveshare.com/rpi-relay-board.htm Raspberry Pi relay board]
 +
* [https://robot-electronics.co.uk/products/relay-modules/ethernet-relay/eth008-8-x-16a-ethernet-relay.html Relays over ethernet]
  
 
== multi-function ==
 
== multi-function ==
 
* [http://baylibre.com/acme/ BayLibre ACME cape] - power and temperature measurement with different probes (USB, Jack power cable, HE10)
 
* [http://baylibre.com/acme/ BayLibre ACME cape] - power and temperature measurement with different probes (USB, Jack power cable, HE10)
 +
** See https://gitlab.com/baylibre-acme/acme-hardware-docs for design docs
 
* [[Sony_Debug_Assist_board]] - Open Hardware design by Sony for multi-function DUT controller (USB, serial, power, buttons)
 
* [[Sony_Debug_Assist_board]] - Open Hardware design by Sony for multi-function DUT controller (USB, serial, power, buttons)
 +
** connection to host = USB serial
 +
** elinux page about v2 of the board (how to use) is here: [[Sony_Debug_Assist_board]]
 +
** github page with source code, schematics, gerber files, etc. is at: https://github.com/sonyxperiadev/CDB-Assist
 +
** schematics here: https://github.com/sonyxperiadev/CDB-Assist/blob/master/Hardware/CDBAssist-v3.1-Schematics.pdf
 +
* [https://wiki.tizen.org/MuxPi MuxPi] by Tizen Open Hardware design by Samsung for multi-function DUT controller (serial, power, buttons, network?)
 +
** connection to host = network
 +
* [https://3mdeb.com/rte/ Remote Testing Environment] - Open Hardware design by 3mdeb for multi-function DUT controller (power, programmer, serial)
 +
** connection to host = network
 +
** [https://github.com/3mdeb/rte-schematics github page] for RTE schematics (rev 1.0.0)
 +
** [https://github.com/3mdeb/meta-rte github page] with meta-rte layer based on Yocto Project
 +
** [https://github.com/3mdeb/RteCtrl github page] for RTE REST API controller (beta)
 +
* [[BCU/2 board]] - Open Hardware design by Geert Uytterhoeven for multi-function DUT controller(serial, power, buttons, gpio, i2c, etc.)
 +
** uses a teensy board
 +
** It's a small board to control and monitor the operation of two development boards.
 +
** hardware files: https://github.com/geertu/pcb-bcu2
 +
** software files: https://github.com/geertu/teensy3-bcu2
 +
** connection to host = USB
 +
* [https://www.timesys.com/open-source-embedded/board-farm/ IO-CX] by Timesys (Multi-function DUT control: SD-MUX, USB-MUX, GPIO, I2C)
  
 
== USB mega-ports ==
 
== USB mega-ports ==
 
A few people are using these:
 
A few people are using these:
 
* [https://www.amazon.com/Manhattan-Port-USB-Hub-161718/dp/B0074024XU Manhattan Mondohub 28-port USB hub]
 
* [https://www.amazon.com/Manhattan-Port-USB-Hub-161718/dp/B0074024XU Manhattan Mondohub 28-port USB hub]
 +
 +
* [https://cambrionix.com/products/powerpad15s-industrial-strength-managed-hub/ PowerPad15S USB hub used by Lava]
 +
 +
== USB switchers ==
 +
* [https://lava.coreboot.org/static/docs/v1/lmp_test_guide.html LAVA-LMP USB] - allows switching USB connections to a DUT
 +
* [https://www.extron.com/product/swusbseries Extron USB Switcher]
 +
* [https://mcci.com/usb/dev-tools/2101-usb-connection-exerciser/ 2101 USB Connection Exerciser]
 +
 +
== gpio controllers ==
 +
 +
== HDMI testing ==
 +
* [https://www.blackmagicdesign.com/products/decklink/techspecs/W-DLK-33 SDI/HDMI grabber]
 +
 +
== unsorted LAVA hardware helpers ==
 +
See  https://lava.coreboot.org/static/docs/v1/lmp_test_guide.html
 +
*
 +
 +
Possibly https://github.com/GlasgowEmbedded/glasgow to control various buses (via FPGA).
  
 
= Software =
 
= Software =
Line 101: Line 162:
 
* Jenkins plugin  : https://github.com/ci-rt/libvirt-slave-plugin
 
* Jenkins plugin  : https://github.com/ci-rt/libvirt-slave-plugin
 
* ttc      : https://github.com/tbird20d/ttc - documentation at: [[Ttc_Program_Usage_Guide]]
 
* ttc      : https://github.com/tbird20d/ttc - documentation at: [[Ttc_Program_Usage_Guide]]
 +
* tbot    : https://github.com/hsdenx/tbot - http://www.tbot.tools/main.html
 +
* SLAV stack : ??? (Pawel's thing - see [[Media:Piece_of_cake.pdf]]
 +
 +
= Services =
 +
* TimeSys Board Farm Cloud: See https://www.timesys.com/pdf/Timesys-On-Premises-Board-Farm-Cloud.pdf
 +
* [https://www.gooddevicelabs.co.uk/canaryqa/ Good Device Labs - CanaryQA]
  
 
= Notes =
 
= Notes =

Revision as of 11:08, 2 April 2021

Here is some information about board farms.

Community

At the Embedded Linux Conference Europe 2017 Andrew Murray held a BoF session titled Farming Together. The purpose of this BoF was to bring together people that are actively working on board farms to create a community, to knowledge share and to start a collaborative effort.

Add your name and contact information if you would like to be notified when an e-mail list is created, or are generally interested in this topic:

  • Andrew Murray - <amurray (at) witekio.com> *
  • Tim Bird - <tim.bird (at) sony.com> *
  • Robert Schwebel <r.schwebel (at) pengutronix.de> *
  • Arnout Vandecappelle - <arnout at mind dot be> -- doesn't have a board farm but is interested
  • Mirza Krak - <mirza.krak (at) endian.se> *
  • Alan Bennett - <alan (at) opensourcefoundries.com>
  • Geert Uytterhoeven - <geert (at) linux-m68k.org> *
  • Andrea Scian - <andrea.scian (at) dave.eu>
  • Kieran Bingham - <kbingham (at) kernel.org> *
  • Jan Lübbe - <j.luebbe (at) pengutronix.de> *
  • Marco Cavallini - <m.cavallini (at) koansoftware.com>
  • Kevin Hilman - <khilman (at) baylibre.com>
  • Bill Mills - <wmills (at) ti.com>
  • Tom Gall - <tom.gall (at) linaro.org>
  • Stephano Cetola - <stephano.cetola (at) linux.intel.com>
  • Mike Holmes - <mike.holmes (at) linaro.org>
  • Matteo Vit - <matteo.vit (at) dev.starwaredesign.com>
  • Attie Grande - <attie.grande (at) argentum-systems.co.uk>
  • Roland Hieber <r <dot> hieber <at> pengutronix <dot> de>
  • Tim Orling <ticotimo (at) gmail (dot) com>
  • Ryan Arnold <ryan <dot> arnold <at> linaro <dot> org>
  • Behan Webster <behanw (at) converseincode (dot) com> *
  • Michal Simek <monstr (at) monstr (dot) eu>
  • Krzysztof Kozlowski <krzk (at) kernel (dot) org>
  • Jagan Teki <jagan (at) openedev (dot) com>
  • Heiko Schocher <hs (at) denx (dot) de>
  • Khiem Nguyen <khiem.nguyen.xt (at) renesas.com>
  • Amit Kucheria <amit.kucheria (at) verdurent.com>
* = have seen this person on the e-mail list, or already subscribed.

Mailing list

Discussions on this topic have started at on the "Automated Testing" mailing list of the Yocto Project

Next meeting

To be determined.

Maybe at Plumbers 2018, Connect, or ELCE 2018

See Automated Testing Summit

Actions

Presentations

If you know of a presentation on this topic, please add it below:

  • "Test Standards - Can Fuego, Lava and others agree?" by Tim Bird at Linaro Connect SFO 2017
    • description: Tim proposes several areas of standardization collaboration between different Linux test initiatives
    • Slides and Video
  • "Herd Your Boards, Become a Farmer" by Geert Uytterhoeven at ELCE2016
  • "Automation beyond Testing and Embedded System Validation" by Jan Luebbe (Pengutronix) at ELCE2017
  • Introduction to kernelCI.org
  • Piece of cake - testing remote embedded devices made easy with MuxPi by Paweł Wieczorek at FOSDEM 2018

Best Practices

Issues/Requirements

Misc / Tools

Hardware

SD muxers

Kevin Hilman mentioned (at ELCE 2017) wifi SDCards as a way to handle the SD mux problem. Was he referring to something like these? http://techpp.com/2015/04/28/wifi-sd-cards-camera/

power control

relays/buttons

multi-function

USB mega-ports

A few people are using these:

USB switchers

gpio controllers

HDMI testing

unsorted LAVA hardware helpers

See https://lava.coreboot.org/static/docs/v1/lmp_test_guide.html

Possibly https://github.com/GlasgowEmbedded/glasgow to control various buses (via FPGA).

Software

Services

Notes

  • spend money on USB serial adapter cables - cheap adapters sometimes drop connections and are a pain to debug
    • FTDI cables seem to work well.

Farm Survey

Tim Bird is conducting a survey of Farm hardware (DUT controllers). See this page: Board Farm Survey