A little project with a Raspberry Pi or Arduino was something I would like to do for a while now, especially when after seeing some teammates of Project MARCH easily integrate the Raspberry in the rest of the system to perform a utility role. I have been quite amazed of the power and versatility of these small devices and their use in creative projects. That I would use one this soon, was not something I anticipated though!
When we came up with the concepts of the “Decode challenge” and the “Translation projection” concepts, it was clear a projector has a decent chance of being used in the final product, and we needed some way to run it. Rather than choosing a large and potentially expensive PC system, I decided it would be interesting to run things off a microcontroller or Raspberry-like device.
My eye fell on the Raspberry Pi due to its array of GPIO pins (General Purpose Input/Output), low cost, HDMI port and its reputation for being very flexible, and being able to program almost anything on. Some quick research showed that the Raspberry, being a fully functional Linux computer, has a very high configurability and graphics/video support. It natively supports a range of programming languages and has some built in basic development environments like Python. A friend of mine in computer sciences helped me get my bearings and told me how Python has some importable functions to add video manipulation.
I borrowed the things I need. A mini-projector, the Raspberry and all necessary accessories (keyboard etc.) to build a set-up in my home. Luckily, my neighbour had some jumper wires as a finishing touch to really get into the matter with physical objects being controlled from the Pi.
Comment – My battle station for the weekend.
This being my first project with a Raspberry, it took a while to get set-up. Luckily, there are plenty of “getting started” guides out there. This, combined with an online course to learn the basics of programming in Python and some internet research, got me a decent developing environment.
While browsing the web for information, I got really lucky! I found someone who built a project that, in terms of software and Pi use, is very similar to what we try to do. Reverse engineering his code helped speed up the process a lot. After I finally started to understand how to receive signals and use them to program, the rest of the prototype was programmed.
In the end, we can run the script, plug a wire into the Raspberry Pi and see a video play on the projector. Plug in a different wire? Different video plays. It is currently quite buggy but should give a decent enough image of how such a thing works.
This functional prototype also gave some good insights on the things that still need work before it can be an exhibit. For instance, the script should run when booting the Pi, the transition between videos should be more or less (visually) seamless, and the program should of course be bug free. But all of this is done in the end stage. Next up is deciding whether or not to build this concept and decide on its functionality such as selecting a random recipe to tell about or really anything we can come up with!
Words by Samir den Haan