Subscribe RSS

In my computer science blog I will try to provide source code snippets and small solutions, to small problems that occur often and take unexpected long time to solve :P

I am publishing these solutions in order to equalize somehow the huge amount of computer science shared knowledge, that helped me to become a better programmer :)

To all other "ambush" style "scientists" I would like to take the quote as a personal greeting:

"The secret to creativity is knowing how to hide your sources"

So I'll let those people prove themselves "creative" and will share stuff I didn't found that much online :)

This project is about giving life to the traditional masks called Kuker. They are used in Bulgarian tradition to repel evil ghosts and bad energies. For more information check the tutorials introduction The Kuker Revival!


In this first part of the Kuker revival series we will start with the most empty part of the Kuker - its eyes. As great as it is, my Kuker always annoyed me with the lack of refulgence through its eye holes. So I thought about what can I do to make it more alive and initially put some portable light inside. Then I changed to RGB LED light. Then I bought crystal spheres to act as eyes and saw the huge potential of the combination between transparent crystals and LEDs behind them. After searching for different products online, there was nothing that could satisfy my imagination, so I decided to design one of my own. I ended up buying Arduino kit by Elegoo and two Adafruit NeoPixel Rings. Here is you'll learn how to make them shine!


Assuming you already have a Kuker, you'll have to measure the diameter of it's eye holes and buy fitting crystals. Then you'll need Arduino microcontroller of your choice. Personally, I like the regular sized Uno to play around, because it is bigger and easy to manipulate, but use Nano for the installation, because it is smaller and fits everywhere. Then you gonna need two Adafruit NeoPixel Rings with approximate diameters slightly bigger than the crystals (mine are with 12 LEDs each). To connect your NeoPixels with the Arduino you'll need 6 cables and soldering equipment. To power all of the above you are going to need a simple USB power supply.


 Get the Arduino IDE and install the Adafruit NeoPixel Library.

Putting things together

1. Connect the first NeoPixels together and then with the Arduino as show in the picture. First GND, then VCC, then PIN-IN-OUT.

2. Run my sample code

Get my neopixel code from the Kuker github project and run it through the Arduino IDE.

3. Mount everything on the Kuker and enjoy!

Finally, you have to put all of the parts together and enjoy your Kuker. I use simple mount with tape so that I can easily unmount and reprogram, but after all this one is your choice :)


I've created a video tutorial in Bulgarian language with subtitles to be added soon. You can see at the end how the installation looks like at 1% power. Yes you read that right the LEDs are extremly powerful and transform the room!


All of the tutorials like this one are listed in a main article called The Kuker Revival! Here are some other links you might find useful:


This project is about giving life to the traditional masks called Kuker. They are used in Bulgarian tradition to repel evil ghosts and bad energies. Similar traditions and masks exist in all cultures around the world. Here you'll find a series of tutorials how to bring life to your masks, so that they can be alive during the days you are not using them actively.


For further information about shamanic masks check following Wikipedia articles:

Check out our little VR demo at Uni-Saarland

As part of Max Ophuels Preis we demonstrated our markerless motion capturing system to visitors in form of real-time Unity virtual reality game, where you have jump on boxes over lava and avoid flying ball, tracked and augmented as a fireball.

Running is one of the most natural human activities, yet it yields all sorts of injuries, causing dissatisfaction often followed by a withdraw. In this video we explore in depth how you can improve your running style and avoid injuries all together with the help of a motion capturing system.

1. 0:36 Foot Strike: Start from the bottom where the foot hits the ground. It’s called foot-strike and most people hit it with their heel at first. This is not only inefficient, because it breaks your forward motion, but it creates a shock that goes all the way from your heels through the ankles, shins and knees, to reach your hips and waist, making all of them vulnerable to injuries. To avoid this first try to land between the middle and the front part of your feet with a slightly bent knee. Thus you won’t create a breaking force against your motion. Having your knee not fully extended will allow your muscles to absorb the landing impact instead of your joints and bones. This is believed to be the leading cause of the so called Patellofemoral pain syndrome or runner’s knee and Plantar fasciitis or heel pain. Furthermore, you should always strive to step close to your center of mass projection on the floor. The farther you step from your center of gravity the more your muscles and joints will have to compensate in order to keep you balanced. Besides wasting energy you are opening yourself for injuries not only at your ankle area, but also at the inner- and outer-side of the knee. Mostly it irritates your so called iliotibial band, causing the ITB syndrome, which feels like a fire on the outer-side of the knee and it’s like someone is stabbing you there with a needle on each step. Further indicators for stepping far from the center of mass are high ankle pronation and supination.

2. 2:00 Knee Motion: Same goes for your knees – their main motion should be flexion and extension and they should point towards your running direction and rotate as little as possible. Having your knees pointing inwards is a common for woman and having them pointing outwards is common for man, both contributing for the medial tibial stress syndrome (MTSS) a.k.a. shin splints.

3. 2:23 Hip Motion: Next crucial point are your hips – you should have strong hip abductors to be able to take the step impact without going up and down absorbing the force instead of carrying out the body. High variation of hip ab- and adduction slowly causes all kinds of injuries in the waist area, including lumbar spinal disk herniation.

4. 2:43 Upper Body: From there on, you should have a straight posture between your upper-body and your head to avoid bending on each step. Lastly, your elbow flexion should be around a right angle and your hands should move forward as well. So don’t do such over-exaggerating motions and postures while running, because this will twist your spine, neck and everything around unnecessarily.

5. 3:06 Putting All Together: Try to be conscious about each aspect of you running, as well as all together, because all parts are somewhat connected. Bad knee rotations are likely to connect with crooked ankles, which leads to bad body balance and so on. On the good side of things is that if you make some parameter better, it will improve others as well. Like, if you strive to move your hands forward with your running rhythm, you are likely to improve your upper-body posture to support them.

6. 3:43 Side Balance: Further aspect, you should keep an eye on is how balanced is your running. Just compare your left and right strides in terms of length, width and joint angles across foot strikes. Those can indicate possible misalignments that can result in long term injuries. It might be the case that you are doing things wrong from one side only, thus result in injuries on that side, which happened to me many times already. If your numbers seem fine, it can also be the case, that your corresponding body parts are just in different sizes, which causes the imbalance.

7. 4:36 Different Speeds: Keep in mind that you should do this check at different speeds as well, because they have different mechanics. Here you can see when lowering your run speed, you’ll have less hip ab- and adduction, as well as less knee flexion angle variance. Hence you might have already noticed your injuries often occur when you are running at your limits. Still you should pay attention at your running style at lower speeds, because you might be slowly building up an injury – step by step, run after run.

8. 5:10 Different Runs at Same Speed: It is important to compare your stats among same speed runs, yet this is what everyone already does, thus only briefly mentioned here.

9. 5:16 Same Run at Different Times: Even more important is how your running style evolves along a long run. You can compare the beginning versus the end of your run, to see indications towards wrong running style. Some muscles might get tired faster than others and despite your good feeling of proceeding with your training, you’ll literally run against your rest muscles, joints, bones and tendons, because they’ll be the one to absorb and compensate for the tired muscles.

10. 6:10 Enjoy: Joy is very overlooked aspect of running, yet the most important. If you don’t like running, but do it a lot for whatever reasons, it is absolutely sure that you’ll get injured, which will increase your hatred towards running. If you don’t enjoy running you’ll hardly get motivated to pay attention to any of the aspects mentioned above and when something happens to your condition you’ll blame it all to running and quit. Just ask yourself, how often have you spotted people dressed with the latest sports industry fashion clothes with all of their devices, earphones and chewing gums doing strange movements that should resemble running? How persistent are those people? Couple of days, week, maybe a month? Don’t run just because you are required to do so in order to loose weight or gain endurance. That’s why my final wish to all of you is to enjoy running and stay healthy to be able to do it as long as you wish!

Thanks for watching! If you are interested in our motion capturing system visit our website

Further Links:
1. Runner’s World: The Big 7 Body Breakdowns -
2. Competitor Running: The 5 Most Troublesome Running Injuries -
3. UWTV: Common Running Injuries -
4. Howcast: How to have proper running form -
5. Sage Running: Essential Running Technique Tips for Proper Form & How to Run Faster -