The Project

Sébastien Bourdeauducq of /tmp/lab used to do interactive VJing, where a club deejay uses a PC to generate video effects to go along with the music, with patterns and colors generated by the audio like a music program’s visualizer. He discovered that he really didn’t like using PCs—they were heavy, took a long time to set up, and if they lost power everyone in the club would watch as the computer painstakingly rebooted. Bourdeauducq wanted a dedicated system that could run his whole show from a small box.

While Bourdeauducq was already very technically savvy—he ultimately used Milkymist for his master’s thesis—he still needed help with the project and began looking for partners. “Geeks often disregard this project because they think it is too expensive and/or too complex,” he explained. “It is exacerbated by the fact that DIY blogs adopt a similar attitude and largely overlook the project, making it even harder to reach out for people.”

Ultimately, he found a team by directly approaching people he thought might be interested and by giving presentations at hacker conventions such as the CCC Congress and Notacon. They come from all over—for instance, Joachim Steiger hails from the Raumfahrtagentur hackerspace in Berlin and Lars-Peter Clausen is a member of Chaos Computer Club Hamburg. Bourdeauducq, along with Spraul and Wang, focused on laying out and producing the Milkymist board, while Sionneau, Clausen, Matsuya, and Walle developed the software. Meanwhile, Steiger designed and laser-cut the case.

The greatest challenge for the design team was making the Milkymist as small and handy as possible. That meant going with a system-on-a-chip (SoC) instead of merely using a PC. A SoC is essentially a big microcontroller, a low-powered computer with all the components like the microprocessor, memory, power management circuits, display controller, and so on integrated into a single chip.

“On the surface, Milkymist is promoted as a visual synthesizer,” Bourdeauducq said. “But it is also the leading open source system-on-chip design. It is today the fastest open source system-on-chip capable of running Linux, and it comes with an extensive set of features and graphics accelerators.”

By using an FPGA for the central chip, advanced users can modify the design, either to customize the product for their own use or to contribute to the open source design. “This makes Milkymist the platform of choice for both anyone looking to build or use a fast open source processor and for the mobile VJ,” Bourdeauducq said. FPGA, which stands for field programmable gate array, is the physical chip upon which the SoC is programmed. Unlike many integrated circuits that are configured in the factory, an FPGA can be reprogrammed in the field, hence the name. It is, nevertheless, the realm of the advanced programmer and probably too difficult for a neophyte to configure without a lot of study.

After designing the board, the team set about manufacturing it. Because of the space constraints of the small system, it made more sense to use surface-mount components, which are much smaller and solder directly to the PCB, rather than through-hole components, which attach by wire leads threaded through holes in the board. The downside to SMD is that the manufacture can be quite difficult to do by hand.

Bourdeauducq traveled to the Minbo electronics factory in Taiwan and observed the entire manufacturing process. The six-layer PCBs have solder paste silk-screened onto them; then a manufacturing machine called a pick-and-place adds the SMD components. Next, the whole thing goes through a reflow oven to melt the solder. After the assembly, boards go through an automated optical inspection machine to detect soldering problems early. If the boards pass inspection, they are flashed with their initial architecture. Finally, self-test software is run on them to verify that all peripherals work as expected.

For VJing software, the team created Flickernoise, an easy-to-use interface that allows for the creation of visuals that react to the music with the help of control interfaces like MIDI (digital music) signals, video-in, DMX512 (digital stage lighting controllers), and even infrared remote controls. Flickernoise, like Milkymist, is open source and can be downloaded for free.

Unlike the software, however, the Milkymist team can’t be given away for free. While Bourdeauducq initially intended Milkymist for his own use, it gradually became apparent that the team might have a commercial product on its hands. “As the technical problems gradually went away, I wanted to see ‘how deep the rabbit hole goes’ and make a fully fledged product out of it,” Bourdeauducq recalled. “The project took a definitive turn in December 2009, when I met with Wolfgang Spraul, a former Openmoko employee, who offered to fund and take care of the production. This sped things up a lot.”

The team sold about 35 Milkymists in the first four months, marketing the product as an “early developer kit” for hackers.

“While this is great for building a community of open source developers, hackers are a minority.” An additional hurdle is the fact that the Milkymist looks extremely complex, which Bourdeauducq calls a misconception. “Even people with moderate skills but the right mindset manage to carry out useful hacks on Milkymist.”

Bourdeauducq ultimately hopes to make Milkymist an indispensable accessory for clubs, bands, and VJs. “We want to sell it in large quantities through retail chains, music shops, etc. In short, we are like a usual electronics device company, but one that applies (and benefits from) the open source principles everywhere possible. Only a self-determined minority of people and other companies would have a real interest in the open source aspects of our work. We believe this is the best way to make large-scale open source hardware happen.”

Alt.Project: Toxic Gas Sensor

/tmp/lab is located in an industrial area in the suburbs of Paris, near a pharmaceutical factory. One side effect of this neighborhood is a terrible smell. “It smells like rotten eggs at times,” hackerspace member Sébastien Bourdeauducq described. “We wanted to monitor the pollution from the factory, more for the fun of it than as a scientific experiment.” Bourdeauducq attached Figaro toxic gas sensors to a Linux-based development board and an analog-to-digital converter and wrote a program that published the sensor readings on Twitter. Eventually, as is often the case, the project ran its course and the components were repurposed.

Outwardly, the Milkymist seems too complicated and challenging to build, but as an open source project, every technical detail and schematic relating to Milkymist and Flickernoise are available for study and modification.

Build the main Milkymist board—Download the schematics from the project website and manufacture the board. Sending it out to an SMD shop might be the best tactic due to its complexity.

Load Flickernoise software (not depicted here)—The latest is version 0.4, indicating a beta release that may not be without obvious bugs. The software may be downloaded from milkymist.org.

Assemble the case—The vector files of the case the Milkymist team created are available from the project sites.

Add the peripherals—These could include MIDI-compatible synthesizers, cameras, and microphones, among other possibilities.