LittleArduinoProjects#185 Building the Böhm Stirling-Technik HB13 Small Bonsai

What has this to do with electronics? Well, nothing (yet), but there's ample scope later;-)

A Stirling engine is a closed-cycle regenerative heat engine with a permanently gaseous working fluid. They are named after Robert Stirling who invented the first practical example in 1816.

Böhm is a small(?) specialist manufacturer from Germany that's taken up a side-line in producting Stirling engine kits. When I first discovered them, I couldn't resist. So here's my build (more...)

LittleArduinoProjects#184 Adjustable Pulse Generator

Yet another variation on the basic 555 timer astable oscillator to allow a wide range of frequency and duty cycle adjustments. It's similar the circuit used in kits like this.

As you can see from the schematic, it's the combination of pot and capacitor selector that produce the wide range of oscillator control:

But the challenge with the classic 555 astable circuit is trying to hold frequency or duty cycle constant while adjusting the other. (more...)

LittleArduinoProjects#183 Polarity Testing

A simple polarity test for uses a series of inverters. The input signal is pumped into two parallel inverter chains:

  • a single inverter
  • a series of two inverters

So, regardless of input polarity, one chain output will be high and the other low.

I used a venerable CD4069 for a quick test, although any inverter (matched to the voltage of the signal) will do. The result of the polarity test is displayed with a pair (more...)

LittleArduinoProjects#182 Building a Bench Power Supply

I've wanted a variable mains-powered power supply for a while, so when I found this kit for a reasonable price I decided to give it a go. Some things that attracted me:

  • 220V/110V mains-powered
  • continuously adjustable output voltage
  • isolated output
  • nice acrylic case
  • built-in LED voltmeter

The kit and PCB comes with a few "valued-added features" unrelated to the power supply function (CD4069 square-wave generator, externally-triggered piezo buzzer, externally-triggered polarity tester), but I decided to (more...)

LittleArduinoProjects#181 Voltmeter Modules

Voltmeter modules are a very convenient way of adding voltage display to any project, because they require no supporting circuitry or microcontrollers.

There are two and three wire modules in the market. Two-wire modules are the simplest (and generally cheapest). For most applications where a simple readout of a power supply is required, they are most convenient since a separate power supply connection is not required. It does mean of course that the meter draws (more...)

LittleArduinoProjects#180 Colpitts Oscillator

A Colpitts oscillator uses a combination of inductors and capacitors to produce an oscillation at the resonant frequency of LC circuit.

To see that in action, I built one on a protoboard and it delivers an almost perfect 22.9kHz .. compared to the theoretical 22.5kHz.

As always, all notes and code are on GitHub.

Here's a trace of the output signal on CH1, and the mid-point of the capacitor pair on CH2:

LittleArduinoProjects#174 USB LED Notifiers

So four of these USB Webmail Notifier devices turned up in a dusty cupboard
in the office.

A quick tear-down shows they contain a super-simple circuit - just a
SONiX Technology SN8P2203SB 8-Bit microcontroller that handles the USB protocol and drives an RGB LED. The SN8P2203SB is an old chip phased out 2010/04/30, superseded by the SN8P2240. They have a supremely primitive USB implementation - basically mimicking a very basic USB 1.0 HID device.


LittleArduinoProjects#173 Mini 64-LED Cube

LED cubes were a "thing" a few years back maybe ... but I've never built one. Time to fix that...

Here's my "mini" 4x4x4 cube - 3cm per side with 3mm clear blue LEDs. Pretty compact, and delivers nice effects. The clear blue LEDs work really well - very bright, even when driven with minimal current.

It's encased in a Ferrero Rocher cube box. During the build, that raised some challenges - most of the effort (more...)

Retrogaming on an Arduino/OLED "console"

(blogarhythm ~ invaders must die - The Prodigy)
Tiny 128x64 monochrome OLED screens are cheap and easy to come by, and quite popular for adding visual display to a microcontroller project.

My first experiments in driving them with raw SPI commands had me feeling distinctly old school, as the last time remember programming a bitmap screen display was probably about 30 years ago!

So while in a retro mood, what better than to attempt (more...)

Generating Diceware Passwords in Python

Today I’m going back to a theme from a post last year and looking at generating passwords with my favourite programming language. A tweet from Simon Brunning pointed me to Micah Lee’s article at The Intercept and my first thought was to write a function to do this in Python. So here it is;

def generate_diceware_password(word_count=6):
    import random
    word_dict = {}
    passphrase = []
    with open('diceware.wordlist.andy.txt') as f:
        for line in f. (more...)

The Fretboard – a multi-project build status monitor

(blogarhythm ~ Diablo - Don't Fret)

The Fretboard is a pretty simple Arduino project that visualizes the build status of up to 24 projects with an addressable LED array. The latest incarnation of the project is housed in an old classical guitar … hence the name ;-)

All the code and design details for The Fretboard are open-source and available at Feel free to fork or borrow any ideas for your (more...)

Teaching an old dog to Fish

Inspired by the recent furore around Shellshock I decided that it was time to try an alternative to bash. By the very grown up process of shutting my eyes and poking my finger at the results of a search for “shell” I ended up at fish shell, described by the project as “a command line shell for the 90s”. I’m presuming that this means the 1990s and is not a minimum age requirement.

I’m (more...)

Generating Reasonable Passwords with Python

Thanks to a certain recent Open SSL bug there’s been a lot of attention paid to passwords in the media. I’ve been using KeePassX to manage my passwords for the last few years so it’s easy for me to find accounts that I should update. It’s also a good opportunity to use stronger passwords than ‘banana’.

My problem is that I have always resisted the generation function in KeePassX because the resulting strings are very (more...)

My Career

The next time anyone asks me what I do for a living I’m just going to point them to this YouTube video.

Found on the twitters thanks to Nick Hodge and Jess Dodson.

Howto debug Mendix java actions

To debug Java Actions used in a Mendix Microflow you need to make some configuration changes to the way you start the Mendix runtime.

Add the following in your project settings, in server configuration add the following to Extra JVM parameters:


Mendix Project Settings

Start your application in Mendix.

In your Java IDE you need to configure remote debugging. The following screenshot shows my configuration in IntelliJ

Mendix Intellij remote debugging

Start the debugger, put some breakpoints in your (more...)

Profiling Mendix using JProfiler

JProfiler is a Java profiler which can give you insight into what a running application is doing: which methods are consuming the most cpu, how many objects are created, etc. Jprofiler also shows you information about jdbc calls and sql statements executed by your java application.

Setting up Jprofiler to profile a Mendix runtime is easy, you can start profiling a running Mendix runtime, without reconfiguration or restarting the application.

The installation guide provides a (more...)

It’ll Come Out in the Wash

After reading this fine summary of the history of Python 3 by Nick Coghlan I was inspired to update as many of my half finished projects and miscellaneous scripts as possible. Then I looked up and I had lost several hours of my life. To save random internet strangers from the same pain as I experienced here is a catalogue of problems and how I solved them.

tl;dr – Python 3.3 on Ubuntu 12. (more...)

Playing with Software

I’ve been trying to install open source software. In this case an application called Moodle. I followed the instructions to install it on an Ubuntu Server vm but they were missing a couple of key points.

After installing the Moodle package (under “Moodle Installation” in the instructions) you need to (more...)

Dynamische Architectuur Visualisaties

Tijdens het LAC-2013 heb ik een presentatie verzorgd over Dynamische Architectuur Visualisatie. Tijdens deze presentatie heb ik laten zien hoe ik schetsen in SVG formaat gebruik als visuele ondersteuning van een presentatie. De svg versie van deze presentatie zie je hieronder. De volgende pagina biedt de mogelijkheid om slides van (more...)

Monitoring Mendix using JMX

The following is only relevant if you run Mendix on-premises. If you do, you probably have standard monitoring tooling that you use to monitor all your applications.

For java applications most monitoring tools provide a way to hook into JMX to get information about the application. The following describes how (more...)