An e-Paper based photo frame

Another one of my “lockdown projects” involves a 7.5 inch e-Paper display from Waveshare. Instead of your ordinary computer display, which bombards your eyes with light, e-Paper displays are more similar to paper. By making a pixel more or less reflective (using a technique known as ‘E-ink’), an e-Paper display …

Over-engineering an RGB LED strip controller: let’s write a custom programming language and instruction set

Digital RGB LED strips are strips of LED lights that can be controlled individually, which makes them really versatile for use in e.g. home automation. Throughout my home there are several strips, each adapting their hue to the current time of day and showing all sorts of information, such as …

User friendly machine learning

For Dialogic, I developed a user friendly environment for machine learning. The tools, which are available online through diasli.de, allow users to quickly set up image classifiers, text classifiers as well as generic machine learning models using custom features and outputs. Supported features: Image classification: transfer learn image classifiers using …

Tyray: a ray tracer in Rust

Over the holidays I wrote a tiny ray tracer in Rust. A ray tracer is a program that renders a 3D image by simulating the way light travels between light sources and a camera. Advanced versions of ray tracing techniques are used to render 3D movies such as the famous …

Catena: SQL on a blockchain

A blockchain allows different entities share a database without having to entrust that database to a single entity. Catena provides an SQL database on top of a blockchain, providing all the benefits of blockchains (resiliency, distributed operation, openness) while providing a familiar interface to its users.

DHToT: storing IoT sensor data in the BitTorrent peer-to-peer network

The Internet of Things promises to connect virtually all devices and make sensor data ubiquitously available. Instead of storing all this data in a central location, you can use a peer-to-peer network to store sensor data. Using a peer-to-peer network has several advantages. First of all, the infrastructure is ‘free’ (although in …

Rethink.swift – A Swift driver for RethinkDB

RethinkDB is the first open-source, scalable JSON database built from the ground up for the realtime web. Rethink.swift is a work-in-progress framework that allows interfacing with RethinkDB from the Swift programming language. Connecting and querying RethinkDB from Swift is straightforward and is frictionless because of all the syntactic sugar Swift provides …