Skip to main content

The Bamboo Feeder – Automating Continuous ARM Image Tests

To minimize the need for manual image testing of our ARM images, the canonical QA team invited me to their team sprint this week in the Lexington test lab to help with setting up a fully automated infrastructure on a bunch of pandaboards.

If you know the pandaboard you might also know that it can boot from its mini USB port as well as from an SD card. As long as the SD is empty it will listen on USB for the first stage bootloader file (which then pulls u-boot via the USB connection).

The central design idea was to have a single machine with USB hub serving as an initial bootloader dispenser for all the other pandas (indeed we could have taken any kind of machine but there were some discontinued panda models around that we don’t use anymore so we picked one of these as the central server).

Once the bootloader is completely recieved and executed on the client pandas they default to do PXE booting and pull their kernel and initrd from a tftp machine over the network.

For this initrd i developed a small initramfs script (and matching initramfs-tools hook indeed) that simply streams the most recent Ubuntu image (location and name are configurable via a kernel cmdline parameter) from http directly to the SD card, mounts the first partition and dumps a bootloader configuration (similar configurable via a cmdline parameter) in place which has references to a remote debian-installer preseed file before it reboots the board into a fully automated installation.

In case there are issues all the pandas can be power cycled through a web-controlled power strip and indeed all of them are hooked up to a serial console server so you can access their serial console remotely in case your preseed file didn’t tell it to install sshd.

At the end of the install the beginning of the SD card gets zeroed so the panda thinks the card is empty and will boot via USB again (in case the kernel hangs on boot or something similar fatal happens u-boot luckily provides an erase command for MMC’s that can be executed via the serial control server).

Indeed we hit the first issue with the first step we tried to implement, USB booting only worked with one model of the pandas we had around, all the others simply didn’t pull their u-boot after the first stage bootloader was executed. Thanks to an impressing and tireless overnight debug and hack effort from John Rigby and Ricardo Salveti from linaro this issue was fixed on Tuesday. You can read Johns blog post about how to USB boot a panda on his blog, all fixes that were worked out should land in the quantal packages soon.

The next obstacle we hit was that TI apparently decided the panda should (like the beagleboard) be capable to be powered via the mini USB port (even though the current provided here is not sufficient to actually run the board unless you make sure that your kernel disables most of the power hungry devices on board).

Read: we could not power cycle the boards remotely as long as the USB connection was in place.

I sat down and read up the USB specs. Theoretically the data transfer should not need the 5V connection to transfer its bits and bytes through the cable so i opened an USB cable and just cut the power connection. Transferring data to my tegra2 netbook seemed to work this way (seems the port is always powered from the board side here), but sadly the pandas did not enable the mini port at all if there was no power applied to it from the other end.

Luckily there was a solution … the panda actually operates with 5V mains power so we spent our Tuesday with roaming around the nearby radioshack shops and buying barrel connectors (and sockets), shrink tube, a soldering iron and cable pieces. I then connected the power of the mini USB directly to the pandas main power connection so that if you powercycle remotely the USB connection would be powered off as well.


Popular posts from this blog


TURCK is now offering the option to completely shield M8 picofast ® cordsets by connecting a braided shield directly to the coupling nut. This provides a cost-effective and reliable connection with 100 percent cable and connector shielding, which protects against electromagnetic and radio frequency interference.

The 3 and 4-pin cordsets are available with flexlife ® PVC or PUR jacketed cable. All connectors deliver IEC IP 67 protection.

The M8 picofast line, like most TURCK cordsets, provides male or female, straight and right angle connectors, standard and custom lengths, and pigtails or extensions. Fully encapsulated mating receptacles are also offered, completing the system.

Banner Engineering DF-G3 Discrete Fiber Amplifier Features World-Class Long Range Sensing Capability

Banner Engineering introduces its DF-G3 discrete long-range fiber amplifier with dual digital displays for use with plastic and glass fiber optic assemblies. Featuring increased sensing power, the DF-G3 can sense more than 3 meters (10 ft.) with opposed mode fibers or more than 1 meter (3 ft.) with diffuse mode fibers. The extra power provides increased detection reliability for dark targets at long range and enhanced detection sensitivity when using specialty fiber assemblies for large area and small part detection applications.

The DF-G3 is available with a single discrete output or two dual discrete outputs. The dual discrete outputs can be independently taught to trigger at different intensity values, which is ideal for correct part-in-place or error-proofing, bottle down, and edge guiding applications.

“We developed the DF-G3 fiber amplifier to meet our customers’ need to precisely detect smaller targets at longer ranges” said Dennis Smith, Senior Marketing Manager, Banner Engin…

IDEC Releases New Line of High Efficiency Power Supplies

IDEC Corporation announces the PS5R-V line of DIN-rail power supplies, offering their customers high-efficiency in a compact form factor at competitive prices. These power supplies suit a wide range of needs in the industrial marketplace, and carry all of the required certifications necessary for use in these demanding applications. This next generation of the industry standard PS5R power supply family has updated features and specifications to meet current and future needs.

The PS5R-V line of power supplies includes 10W, 15W, 30W, 60W and 120W versions, with additional versions coming soon. These power supplies have a very compact form factor with overall dimensions reduced by up to 25% from previous generations. The reduced form factors combine with DIN-rail mounting to free up valuable control panel space and reduce installation costs.

Operating temperature ranges up to -25 to +75 degrees C offer more versatility. These extended operating temperature ranges often allow these power…