SSH over IPv6

We had a file server in the office set up to grab data from our remote server daily – for off-site backup purposes. This essentially uses RSYNC over SSH with certificate authentication. The entire process is run as a cron-job daily. However, recently the backups started to fail mysteriously. It Read more…

LTSP and OpenGL 2.1

We’ve recently updated our office computers to the new Ubuntu Xenial LTS. This came with a newer version of KiCad that requires OpenGL 2.1 minimum to run. Unfortunately, we run a bunch of LTSP thin-clients in the office with a beefier server for work and a bunch of old PCs Read more…

MPLAB-X Harmony Tempfile issue

We faced a problem when running MPLAB-X with Harmony framework in a multi-user environment. We didn’t have this problem before this as there was only one person working on the PIC32 code. But we’ve added a new member this week and an issue cropped up. It turned out that the Read more…

Wildcard DNS

There is one piece of the puzzle that is needed to deploy our new product, that is a wildcard DNS. I had assumed that we would need to roll our own DNS server to achieve this but lo and behold, there are existing wildcard services e.g. XIP.IO that is used Read more…

Minimal Bitstream Size

I was interested to find out how much storage is needed to store the bitstream of a minimal design for a Spartan6 FPGA. The minimal design chosen is just a straight-forward 8-bit binary counter. The results are: LX25 Raw/Compressed: 801556/233934 LX16 Raw/Compressed: 464290/134942 LX9 Raw/Compressed: 340697/118773 The sizes stayed the Read more…

JSON v XML

There are a whole bunch of JSON v XML posts out there. So, I will not rehash the various arguments on which is better. However, we needed to select a file format to store configuration information. To make things convenient, we decided to use the Boost::Property_Tree library. So, this is Read more…

Gitlab Error 422

There are so many problems when running Gitlab behind a reverse proxy. However, the Error 422 one is the most common. The only way to fix this problem is by supplying X-Forwarded-Proto and X-Forwarded-Ssl request headers to the reverse proxy as indicated here. How to do that depends on each Read more…

ISA Size Comparison

Just to do a quick and dirty comparison of several popular ISAs, I compiled a simple C application that calculates primes using the Sieve of Eratosthenes using the following command: gcc -O2 -c -o prime.o prime.c Then, I compared the output binaries just on memory size using the ELF size Read more…

Free ISA

While work has been under way on our new processor core, which shall remain multi-threaded using interleaved multi-threading in hardware, we have been searching for a free ISA to use as the base instruction set. Our previous microprocessor was based on the Microblaze instruction set (ISA). While there is nothing Read more…

1-Minute Kernel Build

Well, there is a first time for everything. In my many years of dabbling with Linux, this is the first time I had experience a 1-minute kernel build. I achieved it by using a compilation cluster using distcc. As the image shows, nearly the entire kernel compilation was distributed over Read more…