Joel Crisp wrote:
- A Linux x86 host(s) with a number of JTAG and USB ports available (via
expansion boards if needed, but USB hubs and USB->JTAG adapters should be possible)
We (CodeSourcery) have got a lot of experience with remote board labs -- all of our engineers are distributed around the world, but most of our boards live in an unattended data center.
There tend to be a fair number of headaches for JTAG debug:
* Drivers for various JTAG devices only run on Windows, and Windows machines are somewhat more difficult to access remotely.
* Whether on Windows or Linux, connecting a bunch of devices via USB sometimes leads to conflicts; for example, drivers may only expect *one* instance of a given JTAG device.
* Many new boards are powered over USB, but power-cycling via USB is not always reliable -- and you definitely need to be able to power-cycle them when they get wedged.
It's much easier, however, if you're not too concerned with kernel development. In that case, you probably don't need JTAG. Then, you just connect the boards via ethernet, and as long as you can remotely power-cycle them (which is not bad assuming that they are not USB-powered, but are powered from an AC circuit), you can do that reasonably easily. As long as you're not intent on working with lots of peripherals (display hardware, audio hardware, etc.), it's pretty easy to use boards in this way.