Upgrading the Stairwell Foot-lighting Project

The Timed LED Lighting Control project has been driving the LEDs in our stairwell since 2017. The system is based on two modules. A custom built LED driver, which has been running faultlessly, and a Raspberry Pi + Django based user interface. This year the user interface module died. In this post, I describe the … Continue reading Upgrading the Stairwell Foot-lighting Project

Avoiding Mechanical Parts from Disappearing in KiCad

When creating a PCB layout in KiCad, I often have need to add a mechanical part to the PCB layout. The easy way is to add these parts directly from within PCB New. The problem is that when updating the board from the schematic, it is possible that these extra footprints will be removed. In … Continue reading Avoiding Mechanical Parts from Disappearing in KiCad

Developing a Remote Sensor Firmware using Test Driven Development

Developing firmware for an embedded remote sensor that needs to adhere to a specific protocol has challenges due to the limited resources and the complexity of the implementation. Experience on a previous project (a remote sensor gateway) demonstrated how Test Driven Development could assist when working on complex systems. This write-up describes the approach used … Continue reading Developing a Remote Sensor Firmware using Test Driven Development

Testing Constant Current Device BCR421UW6

I wanted to learn how to use a 128x64 pixel display, i.e. the DOGM-128-6 from Display Visions. I then got distracted by the requirements of the LED backlight. For several of the backlight options they suggest some series current limiting resistors for 3.3V and 5V. For the White, Blue and Full Colour backlights, they suggest … Continue reading Testing Constant Current Device BCR421UW6

Converting the NeoPixel Driver into a Text Display

At the local open workshop ZAM, there came a project idea for a text display that is publicly available. After some experimentation with a commercially available unit - that proved to be too cumbersome for public use, we explored creating our own. In this post I describe how I adapted my original NeoPixel driver project … Continue reading Converting the NeoPixel Driver into a Text Display

Creating a Gateway Node using XBee and Test Driven Development

Remote sensors are only one component of a much larger system. If the information they collect is to land on the internet somewhere, then there needs to be some type of bridge or gateway. In this post I take a look at using Test Driven Development (TDD) to create a simple gateway node. It is … Continue reading Creating a Gateway Node using XBee and Test Driven Development

Using a Motor Controller to Drive a LED Chain

In a previous post I explored a technique to connect a chain of LEDs in parallel and enable the LEDs to blink alternatively in a series of animations using an H-Bridge. Since the H-Bridge is used extensively in motor controllers, in this post I take the experiment one level further and use an integrated motor … Continue reading Using a Motor Controller to Drive a LED Chain