2019
Ride the PWM

Driving NeoPixel LEDs (and compatibles) with 800kHz on 8MHz AVR microcontrollers is a challenge. Here I present an alternative approach to bit banging. By using the PWM hardware it is more versatile than previous solutions and can be used for other purposes as well.

2018
Twice the trouble for half the price

If something is sold with phrases like “like …” or “compatible to …” or “drop in replacement for …” and in the same time it is much cheaper, then you should think twice if it is worth the money. In some cases I had to learn it the hard way.

Strong encryption for small payloads on Arduino

Most time, the wireless communication between embedded devices like the Arduino happens in plain text. While block ciphers like AES are too bulky in terms of speed, payload and object code size, stream ciphers like RC4 do not offer a high level of security through the lack of diffusion. In this post I will describe a new method to use a modified stream cipher that offers diffusion and also works with no overhead on small payloads, that are common in such devices.

2017
Silencing GreenBox

I bought a Gigabyte Brix Gaming computer, which is a pretty strong machine for its size. But it has a major drawback: it is incredibly loud. Thus I have 3D printed a case and replaced the two 40 mm fans with 120 mm ones that are quiet.

Introduction to OpenMAX on the Raspberry Pi

As I want to dive deeper into the Raspberry Pi, I tapped into the hardware accelerated media capabilities. This is my journey into OpenMAX.

2013
Fairmount, VideoLAN Client and the Bagels

This article gives you a hint about how to get Fairmount to work in these days as it’s not supported anymore.

2012
Camera RAW Compatibility Updates in Snow Leopard

Many updates are tied to certain versions of software that needs to be present. But in some cases it is ridiculous because the required software is also no longer provided by Apple. Buying a new computer just to be able to use a cameras RAW files is also no option.

Improved method for storing normals as a series of bytes

This article describes a method to pack vertex normals into just three bytes using an approach that provides better results than just regular conversion.