Raspberry Pi HQ Camera vs Logitech c922

Update 2022-04-26: In a newer post I compare the contemporary webcams of 2022: Logitech StreamCam, Logitech Brio, Razer Kiyo Pro and Elgato Facecam.

During the supply shortages of 2020 I always wondered wether my Raspberry Pi High Quality Camera would have better image quality in Zoom than the Logitech c922 I normally use. Now that you can again order any webcam at a reasonable price I finally got around to test which one is better.

Focus of the tests are less pixel peeping and more a qualitiative result wether it would be worthwile to check out the Raspberry Pi High Quality Camera as a streaming option.

Read More

Name your docker bridges with Ansible

I recently wanted to debug something on my linux server and listed all bridges. The output was disappointing. All bridges were named with random strings like this:

br-2b6b3cc75104
br-41da10d6d383

I create all my bridges with ansible and it seems that the ansible docker_network module is not very good at naming things in a human readable way. But there is a way you can influence the system bridge names when using docker through ansible.

Read More

Streaming with the Raspberry Pi High Quality Camera

Update 2022-04-03: Since I published this post, Raspbian evolved into Raspberry Pi OS with its current version Bullseye. There, the old camera stack was replaced with libcamera and the old commands like raspivid and raspistill are now deprecated. If you want to check out the new commands, see Raspberry Pi Streaming update: Raspberry Pi OS.


The introduction of the Raspberry Pi High Quality Camera in 2020 has been a perfect excuse for me to acquire new hardware. After some initial tests and use as toy cam, I wanted to build a high quality streaming unit that I could place somewhere nice and watch the images at home. Of course you could buy something like that from off the shelf. But who does that when you can go through the whole development process by yourself and end up with an inferior product at a much higher cost?

Now I had some initial problems getting the stream to work but I found solutions for 3 media tools that I want to share.

Read More

7 days of gather.town: gather the learnings

Our team is consulting a telco customer and due to the pandemic we all have to work from home. To mitigate the negative effects of remote work we all have been taking part in a continuous Zoom session during the work day. Most of the time our cameras are turned on, so we can see each other kinda like in an office. Everyone from the team would be present in the main Zoom room, moving to breakout rooms as necessary.

Unfortunately, after a while some problems became evident:

  • Every time someone starts to talk in the main room, everyone would hear it even if they don’t want to
  • Everyone in the room is beeing addressed as if he was the person in focus even if they aren’t
  • Lot’s of people don’t want to have a camera in their face all the time
  • Finding people in breakout rooms is tedious

During a virtual retreat we learned about gather.town, which is basically what happens if you crossbreed Zoom with Zelda. After initial positive reactions we decided to give it a try in our team.

Read More

Howto: headless Raspberry Pi Image

So you want to set up a new Raspberry Pi but there is no monitor and keyboard around or you just can’t be bothered getting them?

No problem! This is how to get your Raspi up and running without them…

Read More

Plausible web analytics with GDPR compliance

Since the introduction of the GDPR in 2016, on almost every website you will be greeted with an extensive cookie banner. With complicated text, deliberately unusable controls and persistance it will try to get your ok to collecting lots of private data about you, and most importantly, prevent the owner of the website from getting sued.
Apart from hating these cookie banners, I was wondering wether such a banner would really benefit me and the visitors of this blog, or if it would just drive away most of the assumed audience, which are people with interests in developing software, DevOps or apparently people who want to be ansible consultants.
So, I started to take a look around for tools that would enable me to collect some data about how this blog is beeing used, while not requiring a cookie banner and staying GDPR compliant.

Read More

De-squeeze anamorphic images with squeezefix

During the last year, the chinese company SIRUI released three anamorphic lenses for various camera mounts. Anamorphic lenses are commonly used in movie production. Instead of rendering a proportional representation of a subject on the camera sensor, these lenses squeeze the image to give a wider horizontal field of view. This results in a cinema style widescreen picture and the typical “movie”‐look. Normally, such lenses are rare, heavy and expensive.

But not only are the SIRUI lenses smaller and lighter than previous anamorphic lenses, they are also way more affordable.
So, a dream come true for amateur cinematographers and also weirdos like me that always wanted a digital version of the film era Hasselblad X Pan. The X Pan has also been able to capture a widescreen image by just using more of a standard 35mm film strip. Unfortunately, camera sensors do have a fixed size. So unless a manufacturer produces a camera with an extra wide sensor, we are limited to standard aspect ratios.

Except, of course, you squeeze the image onto the sensor. Like with an anamorphic lens.

I have been shooting for while now with their 50mm and lately their 24mm lens. Unfortunately, the resulting images are in the normal 3:2 format, as my Fuji X-T10 does not know about anamorphic nature of the attached lens. Which means that I have to convert all these images to the correct aspect ratio by hand.

While doing this, I got bored…

Read More

OpenSSH is unable to load a host key: invalid format

When your OpenSSH server refuses to start with an invalid format error message when loading the host key, this weird reason might be the cause.

Read More

ApacheDS LDAP Server on Docker with Ansible

Update 2022-10-10: I published the code and added more container versions on dockerhub. Check the AnsibleDS post update.

Recently, I was massively bored over the weekend. So I started to redo my personal server setup.

I wanted to use an LDAP server for user management and got instantly confused over which one to choose. OpenLDAP is said to be fast and reliable, but the documentation is all over the place and usability is limited at best. 389 Directory Server has a better documentation but you need an extra management server and a console server. That was just too much hassle for me.

Luckily, there is ApacheDS. Sure, its written in Java but you only need to run one process and it comes with a fully fledged IDE.

Then again, there is no official docker container. So I made my own, together with a set of ansible scripts to deploy the container to my server. Enjoy!

Read More

Hello World

Once, during a pandemic, I was bored. So I started playing around with some
stuff. This blog basically is a documentation of my learnings.

Have fun…

Read More