Ghost Polaroid

1 Comment



  1. Connection from the camera to Arduino

The main idea of our concept is presented in the following: when a picture is taken, it would be found in computer immediately by USB connection and modified with an image manipulation program, then be printed with a small photo printer.




But there was a problem with our cheap toy digital camera: when we connected the camera to our computer with a USB cable, the camera went automatically to a “USB mode” and couldn’t let us take pictures at the same time. To solve this problem we decided to hack the USB wire and camera shutter and develop an Arduino program, which makes the camera more intelligent: when we push the camera shutter, it goes to USB mode in 5 seconds and exits the camera USB mode after 20 seconds (the approximate time for our photo manipulation and printing) so we can take the next picture.

There are four wires inside a USB cord which are colored red, black, white and green. Red, as standard color for positive wires, has 5 volts. Black is the ground wire as for negative or ground connections. The other two are translation data wires. We cut the red wire away: one port, which connected to the computer, is use for the power support of our electronic circuit. The other port, which connected to the camera, would be linked to a PNP transistor. With an Arduino program, the camera shutter should be seen as an input to control whether the USB circuit is connected or switched off. The electronic circuit is seen in the picture below.





  1. Image manipulation


Photos were manipulated in two different ways:

  1. Add a scary creature into the background space of the photo, e.g. a ghost, zombie.
  2. Or have the faces covered with random scary face masks. But in the end we added some meme face images (grumpy cat, doge, rage faces) to make the output even more surprising.



We wrote a java program that serves three main functions:

  1. Runs a thread which checks if the camera USB storage is connected. If yes, it fetches the latest image to the local folder. Due to the Arduino program’s setting, we have 15 seconds to copy the latest image which is usually more than enough.
  2. Analyzes the image content. We used the OpenCV library to detect face position and size. If there is enough space between the faces, the image manipulation program will choose manipulation type 1, otherwise type 2.
  3. Gives a print command to the photo printer via Java Print API.


  1. Print


At the beginning of the project we were quite unsure which printer would be the most convenient one to use and we didn’t have much time to decide. First we were thinking of the small thermal printer used at the cash points, but since the thermal printer can only print receipts, we found it really weird to have a “Polaroid” which prints black-white receipts. Luckily, we found a Canon mini photo printer on Amazon which was delivered on the next day. The mini photo printer can even work as a wireless device which makes it much easier to design the Polaroid prototype.

Java offers an API for accessing the print jobs and settings. First we encountered some troubles with the page layout, but we managed to hack the settings in the hash table. We were very happy as the photos were successfully printed via Java print API command.



  1. Decoration 


The prototype is a wooden case with the toy camera and the mini printer inside. We used 9mm MDF for building the case. To maintain stability, the boards were cut to puzzle-like shapes so that it can be easily patched together. The back side of the case was left open for cables and wires. In the end we sprayed the boards with varnish to create the glossy coat of a Polaroid.


We cut a big round hole on the front side and put a round glass plate of the same size into the big hole to make it looks like an old fashioned lens opening. There is a smaller hole on the upper board so that one can click the shutter release through the hole. The case edges are additionally protected by metal foils.

The logo and mascot ghost were also engraved by the laser cutter. Actually, the manipulated photos were supposed to be scary, however a meme Polaroid was built instead 😉 Well, that is why the ghost looks so cute.


Grantiger Alois

Leave a comment

By Markus Fußenegger & Korbinian Königseder


Looping Louie

Original Looping Louie Game

We developed a concept to modify the famous children’s game Looping Louie. It is a simple reaction game for 4 players where a plane, controlled by a guy named Louie (German: Alois) tries to hit the player’s chickens. The players have to vault the plane with a catapult over their chickens, represented as tokens. Every player owns three chickens. The game ends if only one player has tokens left.

Grantiger Alois

Final Grantiger Alois

Because this concept gets boring pretty quick, we wanted to modify it. Therefore we created some concepts which enhance the game experience for every player. This should be done with the help of an Iteaduino controller board. The main idea was to control the plane by an enhanced AI which sensors the game’s environmental properties. This AI basically should be very cruel, for example it should attack certain players chickens without them having a chance to react or defend against. But other players should be ignored by Louie. This game mechanism would create a completely new game experience never seen before.

To reach this goal we had to design several different components which have to be added to the game. These main components of the concept are seen in the picture below:

Main Concept

Main Concept

1. Dynamic motor control:
We chose to use the built-in motor, because of its specific size and gearbox and implement the dynamic motor control by adding a  external motor control board. We attached the external motor control to ensure that we are able to do reverse and forward motion and are allowed to set the speed of Louie.

2. Flexible height control:
Allowsto let the plane jump and float. But it should not interfere with the natural dynamics of the plane.
The first concept to control the height level was with an electromagnet built in the crane, and a static magnet in the counter weight of the plane. This concept wasn’t feasible because we couldn’t find an electronic magnet which was strong enough to pull the plane up and to fit in unison inside the crane. After this setback we decided to build a cable control to pull up the plane by a stepper motor.

3. Height sensor:
We planned to measure the height of the plane with a potentiometer attached to the hinge of the crane. Based on the angle of the plane we can meter different resistant values. Then these are converted into degrees by software.

4. Position tracking:
As Louie moves around the board the base of the crane closes several contacts on the ground. With this measures we are able to calculate Louie’s position by interpolation based on his velocity.

5. Light barrier to observe the token’s movements:
Every time a token falls it brakes a light barrier that indicates a lost chicken.

6. Sensor the catapult’s state
If the player pushes down the catapult a simple contact gets closed by a conductive metal on the bottom of the catapult.

7. Serial Communication with an AI provider
Because the AI could get very complex we thought to do the AI processing on an external computer. So we can use the power of the Iteaduino board to collect sensor data and execute commands provided by the external PC software.

Iteaduino Pin Configuration

Iteaduino Pin Configuration


First we built the light barriers as it seemed that they are the easiest additional module. We placed a LED under the ramp chicken ramp and a photoconductive cell on the top of the ramp. First tests were very promising and coin loses could be measured very precisely. As we started to work at the side arm, we continued to finish that component. So we went on and included two contacts onto the ground under the catapult. So that every time a player hits the catapult, those two contacts get closed by a thin cooper layer. This didn’t work perfectly, because of a small scope in the suspension of the catapult. But after curving the cooper layer the contacts worked almost every hit.

Light Barrier and Catapult Contact

Light Barrier and Catapult Contact

The next step was to include sliding contacts between the crane and the platform. We again used a thin cooper layer and a piece of conductive metal. These connections were responsible to bring the supply voltage and a control wire to the planned height sensor on top of the crane. The third connector tracks the position of the plane. Concurrent we hacked a potentiometer, to sensor the height of the plane. It was placed between the crane and the crane jib. First tests, where we measured the resistant of the potentiometer, just worked correctly. Some modifications and grindings on the crane need to be done, but finally there was no bigger trouble. Additionally we added four contacts on the top of the base to measure the current position of Louie. The idea was to register if one of the contact was closed and then interpolate the current position of Louie.

Sliding Contacts

Sliding Contacts

Meanwhile we ordered a motor control board for the built-in motor and a stepper motor for the height control. We were planning to hook up the motor with our motor control, to get full control over the built-in motor. This allowed us to control Louie’s speed and direction. This also worked very well, but the troubles began as we mounted or stepper motor. It was connected over a wire to the counterweight of Louie. Unluckily the stepper motor was way too weak to sling Louie up in the air. So we stated that lifting Louie would be fully sufficient.

Louie Assembly

Louie Assembly

Followed up we assembled all parts and tested every component. Again we run into some major problems. We weren’t able to get any valid data from our height sensor. After we inspected our wiring we found out that we forgot the ground signal line to our potentiometer. Normally this would not have been a big problem, but to get another signal line up in our crane we had do add another sliding contact. We solved it by inserting the new cable into Louie’s shaft. After some small hassle it worked very well, even in motion.

Finally we began to test everything together, and this was the point our whole concept started to collapse. Our height measure could not transmit its data because the sliding contacts were losing contact when Louie was vaulted into the air. Also the position contacts could not be registered every time the plane past one. Besides that our cable to lift Louie would drill itself up in less than five turns and got stuck in the crane shaft, nearly unable to remove. After these big letdowns we decided to rethink our concept and simplify it a bit. We wanted to remove the stepper motor and the cable system and attach them to a catapult. The catapult should be controlled by an AI which should act like a good human player. But this worked not even as close as expected and we thrashed this idea shortly after.



After all of these problems we ran into one we didn’t even thought of it could happen. The Iteaduino Lite we used offers only 8kb of flash memory and almost 2kb are already used for the bootloader. We reached this kb limit in no time with more features left to code. We had to remove the complete serial communication to save crucial flash memory space and had to implement the AI on our Iteaduino board.

To make it to the presentation we wanted to simplify the concept even more, removed the height sensor and imprecise position contacts. Based on the modules we had left, we developed a simple AI which controls our Louie making it nearly impossible for the player to defend its chicken against Louie and the catapult contacts allowing the user to interact with the game logic.

Night Gaming

Night Gaming

Final Result:

In the end Grantiger Alois was short on some features, but the end result is promising for only one week of sketching and implementation. After the game is set up, the main player has to initiate the game. He presses his catapult down for about two seconds. The green LED mounted on the middle base is indicating if the game was started successfully. After that Louie goes into start mode, whereas he accelerates to reach his maximum speed. When reached he switches into random mode. Now Louie is nearly unpredictable because he changes his speed, direction and even stops for some time. The players need to concentrate hard to follow his exact movements and react quickly to movement changes, to save all tokens. If a token gets hit, Louie enters into his furious mode, whereas he accelerates to maximum speed. If only one player is left Louie stops and the game ends. To see Louie in movement watch the video below:


Leave a comment

Idea & Concept

We decided to hack the good old wooden labyrinth. We had the idea to play it with potentiometers and by a controller which imitates the board and let it act like this with a position sensor. Therefore we thought about making the game harder by inverting the x and y-axis when passing a certain stage in the game. Other features should be a colourful led strip inside which reacts on different switches and game phases and magnets should influence the ball.


After we programmed the Arduino clone (iteaduino) that the potentiometers and the position sensor were able to control the servos, the next thing was to find a way to move the axes inside the game by the servos.

The challenge was that no one should be able see the changes from outside. So we tried it with two thick gums that we fixed to the lever of the servos and twisted the gums two times around the sticks. We realized that the sticks are too slippery for the gums, so we used tape to get rid of that. Then we attached the servos to the case by two screws instead of glue to have a stable construction because the gums have to be under tension to work fine. The potentiometers were also fixed to the case with a nut.

The next step was to calibrate the servos with the potentiometers that they are horizontal at the start and the mapping to the potentiometers is intuitive. This was a real problem in our project because the calibration of the servos was mostly lost after playing a while (natural problem of the gums), so we programmed an extra calibration program. We realized then that it’s hard to play the game with the thin potentiometers, so we purchased knobs for the potentiometers.

After this we build a controller for the position sensor. For the controller itself we made a template (looking like playstation controllers) and let it cut by the LMU laser cutter. We needed five different wires, so we chose the usb cable of an old keyboard for the connection. We added also a switch outside of the case to switch between potentiometer and position sensor control.

Our next challenge was to attach the rgb led strip to the case and find appropriate transistors for the led strips that we don’t destroy our rgb leds or our iteaduino. It had to be an N-Channel MOSFET with appropriate characteristics to match the power consumption of the LED strip. We settled for the IRF520N which can provide more than enough power.


Additionally we attached an electromagnet in one hole of the game to lock the second ball behind a barrier. This ball is released when you push a button with your ball in another hole before the barrier. This was also done with the same MOSFET we used for the LED strip.


The next thing was to find a way how we can implement switches for the ball. Our first idea: Attaching the switch to the underneath the board and exposing it by drilling a tiny hole and sticking parts of a cable through it that should trigger the switch. This idea did work fine, but influenced the path of the ball. Furthermore because of the width of the lanes we would have needed to use at least two switches to cover the whole width. We tried other approaches using copper tape that we arranged on the board in several ways. In the end we glued two little tapes leaving a small cut across the lane that is bridged when the ball rolls over it and connect them with to cables, resulting in a switch. So we added four switches to the game:

  • 1st switch: startfield –> leds are turned on
  • 2nd switch: release the second ball
  • 3rd switch: inverted x and y axis
  • 4th switch: finish –> fading rgb light show

At last we took an arduino prototype board (that you can directly attached to the iteaduino) to solder our wiring on it, because the pins in the breadboard were not stable and it needs too much place in the case. This work was a pain because the layout of the prototyping board was not very intuitive. Additionally we didn’t test the transistors we used beforehand, so at first we thought something went wrong when soldering. But instead the transistors were broken, so we had to solder them out and replace them with new ones. It got to the point that we needed to replace one transistor with another model. This model wasn’t able to drive the electromagnet so we swapped the PINs for the electromagnet and the green color of the LED strip, resulting in green going binary (on/off).

The most persistent problem we had until minutes before the presentation was the random twitching of our servos. We still don’t know where exactly it came from and it appeared and disappeared randomly within the hour. Sometimes we could fix it (i.e. by adding a delay to the loop that controlled the servos), but in the end it always reappeared after a while. We noticed that the power LED of the iteaduino was always flickering when the servos twitched, so we figured it might be a power problem. Minutes before the presentation we fixed it by replacing the iteaduino with an Arduino Uno. Phew.

And for the finish, a video that shows the development from the beginning to the end:

Next Steps

The next steps for Madlab could include:

  • More steering modes: e.g. drunk mode (overshooting) or vibration mode
  • Better handling of mode switches
  • Moving walls
  • Using electro magnets to accelerate/decelerate the ball
  • Highscores for speed


Leave a comment

Idea and Concept
Our initial idea was to buy a toy train and modify its wagons by adding two compressing springs with a set and release mechanism. Positioned on each spring would have been a coloured ball that would jump out of the wagon when the mechanism was released.

The reset of the system would have had to be manual and only two balls per time and wagon could have been made jump each time the apparatus was released. We also intended a second surprise mechanism that made it hard to connect the wagons in the first place and to make it somehow difficult to put the balls onto the wagon so it would have been all the more frustrating when the balls flew off. Also the wagons would have automatically separated after a certain time.

What became of the concept you can see here in the video of the final result:


Getting to work and solving the unsolvable

The concept was then split into two Major assignments:

First: Finding a toy-train in the appropriate size with enough space for our modifications and
Second: Finding springs with the required properties (not too hard to draw back (tensile force) but with a good enough take off power) and designing an apparatus that made balls jump with them.

What we did not know at that point: With our final solution of the second assignment came a third major assignment we did not know of while scheduling our time.

After wasting two costly days on solving both major assignments the planned way we decided to solve it by adding work to reduce it:

Instead of buying a toy-train (and wasting precious time looking for it) we decided to built it ourselves as a made-to-measure solution. Using the leftover-stock we took some wood and learned to use Adobe Illustrator for the vector design.

The base for all the measurements was the remote controlled toy-car we had found in the workshop on a coincidence. We designated the chassis to be our towing vehicle. Later followed the self-made chassis and wheels for the wagons. (We could not find any to buy in the required dimensions)

Lesson learned: I am convinced that despite the additional work we put in making it up from zero we did save a lot of time and learned a lot in the process as well. (Using the lasercutter, working with Adobe Illustrator,how to use the tools in the workshop, AND: improvise, improvise, improvise)


The second major assignment turned to the most unexpected result. After focusing days on first finding the perfect spring (which turned out to be a disaster) and make it work SOMEHOW. The solution lay somewhere totally different. A frustration-solving stroll through the workshop brought me to a discarded piece of acrylic glass. It was both: surprisingly flexible and yet dimensionally stable. And immediately a totally new idea took shape. The prototype on the new concept took only a few minutes and worked on the first run. Here a demonstration:

The new concept brought several more advantages: We no longer had to reset the system for every new round. a hacked 360° servo  could keep the springless construction running infinitely. That also meant we were no longer limited to a 1:1 ratio on balls and springs: we now could shoot around a whole load of balls in every wagon.

Lesson learned: Stop trying to reinvent the car when all  need is a wheel.

With the train and the spring-less construction done the day before the presentation, we thought nothing could go wrong now. We thought the electronics would be easy. A mistake that literally cost us our sleep the last night.

Taking up an idea we had had quite in the beginning we used popsicle-sticks with a copper coating to transfer signals plus energy and keep the train able to make turns because the coupling was flexible. It was a rather simple but effective solution. Still it turned out to be very very time consuming and starting a task that requires a focused mind and a still hand after 12 hours of work is not the best idea. Yet we managed it and after 6 more hours everything was working just fine.

The Arduino gets its power from a 9V battery on the first train. From the Arduino emerge 5 cables: A Voltage cable with 5V and a Ground cable that serially connect to every servo. Three seperate Signal cables, so every servo can be controlled autonomosly.

Lesson learned: Do not sleep in the CIP-Pool. You risk freezing to death while asleep. Seriously.
Things that were left out – Ideas for the future

The whole “Trains falling apart just before the balls start jumping out”. We threw the idea aboard after realizing it would require one arduino and a battery per wagon. Plus a strong repellant like an electric stud or electromagnets. Two things that are highly energy consuming. And by adding those the space for the eggs would have been considerably minimzied.

Springs. As mentioned above it didn’t work out. Not only the mechanism was catastrophic, but also aquiring fitting springs… It seems that springs are usually only produced for companies that use them for their tools. The springs we found were all too big or had too much tensile force. Thinking around the corned helped here. A stroll through the lab and we really simply ran into the solution.

Buying a toy train. Looking for something extremly specific (exact measurments, size, material) is really hard. If you have any talent in “do it yourself” then do just that. No point in fearing failure. Just do it. At the very least you will learn a lesson.

Acoustics: At one point we intended the train to make some funny childisch train sounds, time killed the idea rather soon, but we still liked it

Light effects: Blue subfloor illumination. Again time was the killer but this would be the simplest of all to add as we have already designed the wagons with extra space for an additional battery and space left for some LEDs.

A stronger towing vehicle: Altough we tested the admissable total weight of the toy car to be 1,5 kg it still had trouble towing the wagons. Either the last wagon has to go, or the towing vehicle needs a stronger engine.

A remote controlled starter: We still have to start the arduino manually. Adding a remote would certainly improve the effect.


Things that were added

Easter Eggs instead of balls (spontanously)

Selfmade train + wheels

10 Eggs rather than two balls. The more eggs the more the fun


Final words by the author

Despite the batch of chaos in the final 24 hours I really really enjoyed the course. The project with all its ups and downs was really cool, the learning curve amazing and the people were not only helpful but especially the lunchtimes were real fun. For every stressful moment (including having to sleep on the CIP-Pool floor): it was worth it.


Leave a comment


Our brainstorming was very intensive. We examined various factors, especially the items “Good” vs. “Evil”. We associated night, fear and attack with “Evil”. Why we chose a teddy bear is very easy to describe. During our whole brainstorming we always recollected to the teddy bear. It never turns out of our minds. It is the typical toy of everyone’s childhood. Everybody has a relationship to his teddy. It is a typical companion, so we decided to apply our teddy associations as the “Good” aspect for the project.

We thought about situations where we would like to have a special friend with us. Sometimes when it is very late and you have to go home alone you feel very uncomfortable. An attender would be perfect in such a situation.  In the case an attacker follows you or attacks you, your friend the teddy bear includes some rescue levels. Possible features would be an included pepperspray, barking sound, police sound, blue light effects or an emergency call to the police.





Our concept is a teddy bear, not too big, which fits in every handbag to carry it with you. We decided to integrate three rescue levels depending on the degree of danger. When you are going home alone in the night and you feel uncomfortable or you are imagining that someone is following you, the first level of the Rescute can be activated. Immediately the bear starts to bark. Thus, the follower will notice you are not alone, he will think you have a dog with you, not knowing that there is far more in your bag. Perhaps the follower is already warned and goes away. If not, you can select the second level. The bear starts to shake his head and its eyes begin to flash in blue. Additionally, there comes police sound out of its body. The bear simulates the police arriving. If this is not discouraging the attacker or he starts attacking you you can select the third and last level of Rescute, the Pepper spray with light effects. This will help you to target perfectly at the aggressors eyes. The third level will give you enough time to run away or to get help.



How does it work?

First of all, we thought about the connective of our bear, the basis of our levels. Therefore, we remembered of the toys which have an integrated music box, controllable by a trigger line. We want to use this principle for our project. We used a pipe with copper tape. For each level we put two piece of copper tape inside the pipe which are separated from each other. These tapes will be connected by steel wool which connects the two copper tape sides. The wool hangs on a line. This line could be applied by lift pass holder which is fixed on the inner bottom of the bear. It closes the circuit and the effects will be triggered. When someone pulls the line the wool connects two of the tapes and releases the connective effect.



For the sound effects we used a greeting card sound modul. We tried to build an audio amplifier to multiply the sound but this was not easy. So we put a pipe above the original loud speaker. This improved the volume of the sound with a great difference.



For the blue eyes we bought white lamps and painted them blue. The shaking head is a servo which is fixed between the shoulders of the bear. The moving part is fixed with plexiglass and hot glue at the head.



The pepperspray is integrated by a hacked airwick. This airwick starts to spray by getting an electric impulse via piezo ignition. We controlled this impulse by one pin of the arduino. For the audience at the presentation we did not use a pepperspray but a airwick spray.

For the light effect of the spray we used three red lamps and three white lamps connected by a transistor with two parallel circuits, one for white light, one for red light. For those lights the arduino energy was not enough. Thus, we used a 9 V power plug.





Pins already contain electrical charge:

To connect our pipe circuit to the arduino, we wanted to read the digital pin. While we uploaded the signal via serial, we discovered that the pins already contained a electrical charge although the circuit was not yet closed. To circumvent this problem we attached groundings by resistors. These connect the pins with ground. So the right signal was read by serial.

Find a right transistor:

For the light effect of the pepperspray we needed a transistor circuit. The circuit was easy to build but to find the right transistor not. Transistors and voltage regulators look very similar, so our first trials failed because we used no transistor. After we found the “real” transistor we had to decide which transistor type we need. Which number is for which voltage and which type (npn, pnp) is appropriate for our circuit. So for the usage of transistors, you have to read a lot of data sheets and documentations about transistors. As the right transistor was found, we discovered that all transistors differ in their allocation of emitter, collector and base. So we had to read more data sheets and we learned to like them.


The next problem is also concerned with the light effect of the pepperspray: Our led chain did not react on input from the Arduino pin. The leds were glowing all the time, also without power of the arduino. Different voltages caused this problem. 5 V of the Arduino USB port are not similar to the 5 V of the power supply. This could be corrected by equipotential.  Now the Arduino has only one power source: power plug, which is directly connected to arduino.


Experiment to construct an amplifier:

The greeting card sound modules were very quite. So we wanted to construct a amplifier. We found a simple circuit diagram and started to construct.


Because we did not have the named transistor, we used another. Indeed, the bigger speaker was able to make some noise, unfortunately not our recorded barking and siren sound. Because time was precious, we decided to take the physical way. A pipe should amplify the volume. This worked great.


Sound module:

In spite of correct circuite and correct code we had problems to activate the sound modules with the arduino pins. We checked all contacts with the multimeter and could not find any leak.

Our problem was that we used only one speaker for two music modules. So the 5 V power of the arduino was divided in two parts. The power from source went back over the ground connection from the other sound module without activating the speaker. So each module had only 2.5 V, insufficient power to play back sounds.

The problem could be resolved by usage of a second speaker.

Steel wool in pipe circulation:

The steel wool on the line damaged several times the copper tape and the solder joint. So we lost the contact to the Arduino pin and the whole prototype did not work anymore. We had to exchange the circuit several times.

For presentation we wrapped the steel wool loosely with more copper tape, so that is more softer than the steel wool but as flexible. This is no perfect solution, but we could present our prototype without problems.

Next steps

If we would have had more time to strengthen Rescute, we would like to test more variants for the pipe circuit instead of the steel wool. Perhaps something more smooth with less attrition.

Moreover we would like to use a better sound module with amplifier for the barking and siren sound. So that it sounds more realistic.

If our implementation of our concept is perfect without failures, we would beef up the concept with a fourth rescue level. While the fourth level is triggered, Rescute shall send automatically an emergency call. Maybe this could be implemented by a bluetooth connection to the smartphone, which afterwards dials automatically the 112.

Unfortunately the week is over and we have no time left to extend Rescute.


The final presentation

Leave a comment

IMG_6622 IMG_6617

After – for the most teams – working the whole morning to make their projects presentable, the time for public presentation of the projects was finally there. The employees of the media informatics and human-computer interaction groups visited the lab to see the creations of this semesters students. Each group presented their ideas and final prototype to the visitors and finally the winner of this seasons “Sketching with Hardware” was chosen by vote.


Group 1


Group 1 presented their idea in a darker setting then our well-lit lab, because it provided a more realistic scenario. The final prototype of their protective teddy “Rescute” had most of the features that were planned in the brainstorming session. During the presentation all three escalation levels of the teddy worked perfectly: Dog barks at the first level,a  police siren and lights at the second level and a pepper spray (for the safety of the audience it was replaced by deodorant) at the third level. These features should  repel an attacker immediately.


Group 2


After working the whole night and morning the “Osterexpress” group finally had a working prototype in their hands: A completely self-made train, cut with a lasercutter and equipped with several servo motors to cause mayhem during the otherwise placid easter holidays. The train consists of multiple wagons that are loaded with small plastic easter eggs and that are ready to fling them around whenever the train driver decides so. Although the train was a little under-motorized, the audience loved the “tossing-eastereggs”-functionality.


Group 3


“Togebear” was the name of the prototype that group 3 created. Unlike most of the other groups, they managed to finish their project the day before, so there was no overnight stress or morning-panic for them. To strenthen long-distance relationships, the “Togebear” sprays the fragrance of the significant other whenever a email from the beloved one is received and the heart it is holding blinks. It also provides a feedback opportunity by pushing its ear, which will send an email to the beloved one. The audience liked this idea because it was the only non-malicious one in the lineup.


Group 4


Group 4 worked until minutes before their presentation to produce a working prototype of their “Looping Louie”-game but didn’t make it. While they had it working at one point, as it naturally is with a bunch of cables inside a childs toy, it broke. More specifically on the day of presentation the motor that was turning the arm of the game just stopped working. They explained the issues they had in detail and the plans they had with the game as well. They day before they even  played it using a KI that was implemented on the computer and communicated with the Arduino. Maybe we can see a working prototype at the Open Lab Day.


Group 5


The “Madlab” game that group 5 implemented was also on the brink of not working properly at the time of presentation, but fortunately they made it shortly before the presentation. They adapted a marble run to become even harder to play using different techniques like switches that invert the axis. One could control the board either using knobs or using a position sensing device. Some of the features were a bit flaky (i.e. switches not triggering), but all in all it looked like a fun (or hard) game to play.


Group 6


“Ghost Polaroid” is the name of the project that group 6 was tackling. It is supposed to work like a simple polaroid camera by taking a picture and printing it, but instead modifies the images and puts a ghost into the background or replaces the faces on the image by famous internet memes. They hacked a cheap digital camera and printed the image using a thermal printer, all inside a laser-printed case. The image processing was done on the computer. Although the whole process took a while, the audience loved to participate in this mischief and getting their faces replaced by the grumpy cat.


The Winner

In the end, every visitor got a vote in the shape of a plastic star and had to give his or her vote to a project. They had some time to talk to the individual groups and possibly try out some of the prototypes by themselves. Then the winner of this seasons “Sketching with Hardware” was chosen:

“Ghost Polaroid”


While everyone received their participants medal, they received a copy of the current edition of ct Hacks as an additional special. Congratulations.

Day 6 – A final sprint

Leave a comment

Only one day left for the final presentation! Some teams had already completed their main features and  concentrated on improving or adding new functions on them. Some teams were under deadline pressure because they met some new problems about the features of their prototype. Therefore, all groups worked very hard (some even stay up all night!),  preparing for the  show-time on Wednesday. The detail progress of the individual group is presented  in the following.


Group 1

Team Rescue had an intensive but enjoyable day. Their LEDs in the eyes shined, the perfume in the belly sprayed. After choosing the right transistor they met a frustration about the contact problem: the loudspeaker didn’t work. After checking of their arduino programs and also with the help of our teacher they solved it finally by using a second loudspeaker!  Then they were somehow relieved and could optimize their teddy bear for the show-time tomorrow.



Group 2

The “train” team has seen a little frustrated. After completing building shell with the laser cutter, they had problems with the electronic circuit,which was considered at first easy to do: The servos for popup of the Easter eggs didn’t work well. Under deadline pressure they worked all night with only two hours sleep. Thank goodness,  they finally got it! The train fulled with Easter eggs was steering for success.



Group 3

Team Togebear had an easy day. They had solved the equipotential problem with an appropriate transistor. All they need to do was putting the space spray in Togebear. Now was the cute Togebear totally alive. Maybe they tried adding some new features on them? Let’s see how would the Togebear surprise us tomorrow!



Group 4

Team Looping Louie seemed to have an relaxed day as well. They have completed all electronics and mechanic buildings after four days hard working with probably the most complicated hardware elements: sensors, motor, position and hit detection, potentiometer… Respect!

In the afternoon they tested it together with Eva and it worked so good. We couldn’t wait to enjoy the game tomorrow!





Group 5

Team Madlab made a good progress. After finishing the main features, they kept on building the additional game board with tilt sensor, which connected to Servomotors. Furthermore they pasted a large amount of  LEDs under Madlab Box, which turned on if the ball was running through it. It was not an easy job: one wire goes wrong, others don’t work.

Cheer up!




Group 6

Team Ghostcamera had a dramatic day with happy and depression. They had already completed all the technical features and started building the old-style camera box with laser cutter. In the afternoon they attempt to take a test picture, but the problem came. Because of a USB connect error, the picture couldn’t completely show up in the computer, like a true ghost picture! They had checked the USB wires connected to the arduino program but it seemed to be no problem. After a long time search they found the point: in the arduino program they wrote a delay function of only 2 second, which was too short for a USB connect.  After extending it to 5 second, it worked perfectly.




It was a long day for the final sprint.Were all the groups ready for the end presentation tomorrow? Let’s see!

Day 5 – Crucial stage is beginning

Leave a comment


Two days left for final presentation the common problem of all groups is the missing hour for sleeping because of daylight saving time. But there is no problem that could not be solved. Each group is highly concentrated on own problems and solutions. Panic, frustration, joy and success are close to each other.

Basics of electronics have been internalized, now highly sophisticated questions and problems occured. Most of them could be solved by close communication and collaboration between the groups and with our teachers. In the following the progress of the individual groups is summarized.

Group 1:

Team Rescute had a hard day with a lot of frustration but also with success and joy. A long time was required to find a right transistor to connect a parallel circuit of 6 LEDs. Every transistor is named differently and the poles are not always on the same position. After the right transistor was found, the circuit did not react on input from the Arduino pin. After long discussions and many tests it turned out that there was a problem with different voltages. This could be solved by equipotential. Now the arduino gets its power totaly by power supply.

Furthermore they tried to construct an amplifier on their own. This failed because a particular transistor was needed but nowhere available. So now a simple physical solution improves the sound. Also the connection of the sound modules and arduino cause problems but this has to be solved tomorrow on day 6.





Group 2:

Group 2 is working well, the train is starting to take shape. Their strategy of prototyping is very successful, ideas could be implemented straight forward. So today they prototyped a machine, which helps them to fire off the balls of the train. Therefore they had to hack a servo.

Now this concepts was totally judged as good, the balls are flying very fast and wide. Furthermore they constructed the undercarriage of the train. We are all looking forward to see the train in motion.



Group 3:

Togebear seems to become alive. Now body, head, legs and arms are crochet completely. His face is smiling at all members of the course. It seems as if to say: “Guys, don’t give up”.

So finally group 2 could solve the problem with the space spray. They bought another space spray machine with a trigger by a button. So they could easily connect the machine to Arduino.

Also as group 1 they suffered because of the equipotential. Here the problem was more difficult to solve because at the power suppy of the arduino the could not found any voltage. “Somtimes it is magic”. But Togebear is still smiling. Cheer up, guys!



Group 4:

Louping Loui is gaining momentum. The most technicical problems could be solved, so the guys were able to assemble the game with all electronics and mechanic.

Thereby they discovered some further problems.

With a hand gear there was not enough power to lift Loui. So now they use a crank. It is not as fast as a hand gear but the power is adequat. Because of shortage of space they decided to remove the ground on the swivel plate. But at this position a potentiometer is required and potentiometers need ground. But this has to solved on day 6.





Group 5:

The functionality of Madlap is advancing rapidly. Today they implemented tilt sensors with potentiometers. This was not so easy because sometimes its was too fast, sometimes too slow. So tact was required highly. Furthermore they attached rubber band on servos. Here it was difficult to tighten them. It seems the implementation needs as high attention and tact as playing Madlap. Furthermore they constructed a switch where a light turns on, if the ball is running through it.

The biggest problem of group 5 was the Arduino. It broke down. Why? Nobody knows. After some irrational solutions it worked again. “It is magic”.





Group 6:

Team Ghostcamera, seem to have some help from supernatural friends. They are making good progress.

The print with background images works. At the beginning they had some problems with the format because of the Java Print API, but those could be solved. The hardware of the camera was complicated to hack. Some cables were pulled out. But they solved it, too. Now they are creating a box for the polaroid camera with Illustrator. Keep it up, girls.






A successful day is over now. Only one day is left. It looks like all projects can be finalized successfully. Good luck to everybody!

Day 4 – Work in Progress

Leave a comment

Being the first day of pure project development, day 4 had a very special feeling to itself. The groups dedicated themselves to the advancement of their projects, aided by the always needed help of the tutors. The Arduino platform begins to feel natural, its workings are more and more understood, and the first deeper insights are made (who knew that an output set to HIGH still differs to the permanent 5v output?).

Transistors make their first appearance, almost every group makes use of them, as they prove quite useful to close circuits when needed. The poor labeling on the transistors-box makes it more fun, as it is necessary to search for specs online to see if they are n or p switches.

Some groups have first minor or major breakthroughs, solving problems they had in a different way than previously planned.

Group 1

The Rescute team is well on their way. Solved is the problem of the spraying of the pepper spray, the LEDs are also working as planned, thanks to the additional power now used. A bit of frustration about the limited range of arduino servo motors came up, therefore effectively limiting the range of the bear’s neck. Originally it was planned for the bear to turn its head a creepy 180° on each side, now it looks like he will have to be able to turn its head 180° on one side only. Maybe hacking a servo motor will help.




Group 2

The second group works hard on its project. It proved to be more challenging than previously anticipated, as seemingly simple tasks like the compressing of a spring prove difficult to realize with the resources at hand. Thankfully, being the creative people they are, team 2 members can compensate these problems through ingenious alternatives or workarounds. For the construction of their toy train, they make use of the laser cutter upstairs, and the result is very satisfying. Nonetheless, all of this requires lots of energy and concentration from the team 2 members, leading to part of them to almost fall asleep during the lunch break.




Group 3

The togebear has seen some progress as well. The knit-work (yes, you read well, this bear is 100% handmade, something a soul-less laser cutter could never achieve) is almost done, meaning that the outside of the bear is almost ready. The inside of the bear proves more challenging than expected: when receiving an email from a loved one, the bear should spray some perfume. Using a hacked airwick system proved to be tricky, as reversing the motor rotation (it needs to go in both directions) proved an impossible task. Building an h-bridge did not solve the issue, maybe some of the used mosfet transistors where not suited for the used voltage. An hacked servo motor (not limited to 180° rotations) was used instead.




Group 4

The Looping Louie team moved to the laboratory upstairs, as they need the space and tools it offers. Probably one of the most complicated projects hardware-wise, it makes sense for them to be close the equipment. Being physically removed from the rest of the other groups makes it more difficult to judge their progress, but whenever one needed something from upstairs, she or he would hear a small Eureka shout, signaling a further success of group 4, approaching the end goal step by step.




Group 5

Today post arrived for the Madlab group, it was the game they are going to hack. Finally having the game, they were quickly able to make some progress. Surely it did help, that they didn’t lose time the previous days, thinking ahead of what and how to do it. Servomotors were quickly attached to the game, LEDs were tested, boards altered. Group 5 may have had a delayed start due to the late arrival of the game board, but they managed to make up for the time lost, and then some. If they keep up with this pace, they will be out of work by monday.




Group 6

The Ghostcamera team had some important hardware arrival as well, now having a functioning printer for their project. The idea is to have a camera take a picture of you and then print it, but with one twist: the printed picture will have some sort of monster on it, be it a ghost or zombie, or whatever. This surely has to be the most complicated project from a software point of view, but the team members are concentrated and seem very confident about the outcome.




All in all it was a very productive day. Each team was able to make significant progress, each team already faced problems, some of them are already solved. Creative thinking seems to be the key here. The lesson learned today seems to be not to give up immediately, but also not to fixate on one approach. If something does not work after scrupulous researching and trying, then it is time to think of a different solution to the same problem.

Another important aspect of today, was the fact that we really got our hands dirty, and quite quickly. Almost every group used power tools like power drills, dremel or power saws, as well as special machinery like the laser cutter. These are tool that some of us used for the first time. It became quite clear, that this course would not be completed by simply putting some lego together, but that custom work is necessary.

Even the components used in our electrical circuits became more sophisticated. If there was the idea that sketching with hardware could be completed by simply putting some pre-made components on a bread-board, after today the reality became clear: it is much more than that. We finally understood the importance of transistors and switches. It is one thing to read about them in a chapter of some lecture where they are mentioned briefly, but it is a totally different thing to understand how they work in order to use them in our projects. If we want to power some LEDs with an additional power source, how can we control this source? Transistors! If we want to make a motor rotate in 2 different directions, without physically switching cables, how do we do that? Transistors! Thankfully the tutors were there to answer our questions, an we all had some, ranging from where can i find xyz to more technical ones.

This was a very long day, but thankfully the weekend awaits, and monday the show will go on!

The story of DJ Teddy

Leave a comment

Fulfilling this year’s topic “Reuse, Reduce, Recycle” we searched for some old, used stuff and found three things: An old teddy to reuse, a shopworn MP3-Player to recycle and finally (to reduce the amount of junk in our homes ;-)) an unused step machine, but what to do with those parts? Our first thoughts were “everybody likes music, everybody loves teddies and of course everybody would go crazy seeing his teddy dancing to his favourite music while motivating him with a step machine”. So our idea was born, a music playing teddy or as we named it: “DJ Teddy”. Some additional special effects should allow it to become the perfect entertainer on every party. In the end the final result surprised us and I promise, it will surprise you, too, but more on this later. The next step was brainstorming our idea and designing a first concept.




The mp3 player should be controlled by interactions with our teddy. For keeping the handling nice and easy, we had to focus on the basic functions “next”, “previous”, “change volume” and “play/pause”. The head is the main part of controlling.

The theory

The theory

By pressing an ear you can switch to the next or previous song. We kept the standard order of the buttons, so that left ear means previous and right ear next song. To play or pause the music you need to push his nose. The eyes should be LEDs displaying the current playing status. When music is played they become green, when the music stops they glow red. DJ Teddy’s belly button is misused to change the volume by turning it. In order to make it a real party gadget, we added the ability to dance to music by moving his arms and a heart that blinks to your steps on the step machine! The music comes out of his feet. Let’s see how we realised it.


Step 1: Preparing the teddy

First of all we needed to cut our teddy into pieces and rip the inside out. That sounds cruel and yes, it was! Our beloved teddy transformed into some dead parts of cloth. We took off the legs, the arms, the head and the ears, so that we could fill it with electronic and wires.

Step 1: Preparation


Step 2: Hacking the MP3 player

This step was the most complicated and took us a lot of time. After we removed the casing and mechanical buttons, there were two possibilities to control the MP3 player:

  1. Connect two wires to a mechanical button and solder them to a button at the mp3 player to bridge it. Then connect the arduino to the mechanical button to read when it is pressed. Repeat this for each button on the mp3 player. Now the arduino recognizes when a button is pressed and is able to handle this information in its program in order to light the eyes and move the arms.
  2. This time instead of mechanical buttons we use transistors as electronic switches. We connect each of the MP3 player’s buttons to a transistor that is controlled by our arduino. The microcontroller is now able to “push” the buttons by switching the transistor with a controlling signal. Mechanical buttons are only needed to get the user’s input.

In the first possibility the music would be controlled by mechanical buttons and not by the arduino, that’s why we wanted to use the second one. The advantage here is that the program decides how to handle the inputs and when to push the buttons at the MP3 player.

In the following picture you can see the circuit for one single mp3 player button. Again we need to bridge the button with two wires (1). The red wire goes to the arduino’s 5V pin, the black one to the transistor (2). Because this is a NPN transistor, we have to connect it to ground. Finally the blue wire goes out of pin 13 (3), which we defined as a digital output pin, over a resistor into the transistor’s base and works as a control signal. To push the button our program just needs to write a digital “HIGH” to pin 13. As long as there is a HIGH signal at the transistor’s base, the mp3 player button is pressed. To release it, we have to write “LOW” to pin 13.

MP3 player hack

MP3 player hack

Unfortunately, we killed two MP3 players with this circuit and lost a lot of time. We had to start from the beginning again and again, so that we finally decided to use possibility 1.

Step 3: Make it move, add LEDs and integrate loudspeakers

Now we replaced the eyes with LEDs to display the playing status as I described at the beginning. Our program listens to the nose-play-button, so that it knows when the music is playing. Using two RGB-LEDs we can change the colour as we want to. More difficult was the construction to allow DJ Teddy to move his arms. A hemisphere of plastic fills the teddy’s chest. In it there is a servo with strings connected to the arms. When the servo rotates, the strings of each arm are pulled alternately, so that the arms move up and down.

Step 3: Insert the electronics

Insert the electronics

Then we connected little loudspeakers (taken from a radio) to a 3.5 mm phone connector that fits into the player’s headphones plug. At this point the music volume was very low, even on the maximum setting. That’s why we disassembled some old loudspeakers with an integrated amplifier, which we built into the teddy’s stomach.

To sum up DJ Teddy’s condition:

  • Buttons in the ears and in the nose
  • RGB-LEDs in the eyes
  • Plastic hemisphere with a servo in the chest
  • Strings in the arms
  • An amplifier in the stomach
  • Loudspeakers in the feet

What is missing? Right! Literally the heart of our teddy.

Step 4: Let the heart glow by using the step machine

As mentioned earlier, we wanted to use a step machine that makes our heart glow. Therefore we used a sliding potentiometer which changes the resistance when someone pushes down the right or the left side of the step machine. The arduino reads the values as an analog input and dims or lights red LEDs which are arranged in a heart shape.

Step 4: The step machine

Step 4: The step machine


In the end we only had to reassemble the whole package and… oh wait, the time is gone! As I told you in step 2, we spent a lot of time killing mp3 players. Now we had to present our project and it looked horrible. It worked, but it looked like a teddy dying in a car accident with his entrails scattered all over the table. So we came up with an idea: “It’s not a bug, it’s a feature”. When it was our turn to present our project, we told the audience DJ Teddy died and came back as… Teddy Zombie! Cloth organs, ketchup blood and a giant saw helped us to sell our project as a successfully finished zombie project.

Zombie Teddy

Zombie Teddy

Lessons learned:

  1. Never give up your project
  2. Zombie teddies still smile


Older Entries