Beginnings of a Programmable Drone

The struggle to put code in the loop airside and ground side of an autonomous drone

I think it was the final episode in season 3 of Black Mirror that motivated me to start thinking about building a drone again. That episode - Hated in the Nation - involved swarms of autonomous drones deployed across the UK to replace recently deceased bee colonies. In this work of fiction the drones wreak havoc. However the connecting of computation and AI to real moving entities in our world really intrigued me. [Read More]

Generalizing Dynamic Programming

Using dynamic programming techniques to optimise general compute efficiency

Dynamic programming is an approach to efficiently implementing certain classes of algorithms. As a feeble excuse for not noticing this earlier, the term is a little confusing: it isn’t about programming or about doing it dynamically! It was invented in the 1950s by Richard E. Bellman whilst working for RAND Corporation. Apparently he deliberately named it obtusely to avoid his work being considered research! I discovered this term recently when looking into existing research about algorithm optimisation and specifically why the systemic memoisation in NetKernel can optimise solutions to certain problems particularly well. [Read More]

Travelling Salesman Problem

Study of TSP running on NetKernel with cache replacing dynamic programming

This paper offers an analysis of the application of NetKernel and Resource oriented computing to the well known Travelling Salesman Problem (TSP). This discussion ignores the many heuristic approaches to solving this problem which are necessary for real-world problems of any significant complexity. The aim, however, is to show how ROC can automatically optimise a solution which it knows nothing about other than empirical data collected during execution. The algorithm structures the problem into sub-problems many of which overlap with each other - this occurrence is called overlapping subproblems. [Read More]

Building a Pi Zero Photo Frame

a self contained photo frame connecting to an RSS feed

This project builds a self-contained photo frame using a Raspberry Pi Zero and an old monitor. (Old monitors are better as the 4:3 ratio suits a mix of vertical and horizontal oriented photos better than a 16:9 ratio.) Figure 1: Finished Frame on wall Hardware Parts List Raspberry Pi Zero with micro SD containing Raspbian Power supply for Pi (see below) USB WIFI dongle VGA computer monitor VESA wall mount Custom made photo frame to fit monitor HDMI to VGA adaptor I had a photo frame made by a framing shop with the inner dimensions of the monitor. [Read More]

Simulating Pub Skittles

to discover optimal playing strategies

Two years ago I created a 2D simulation of the game of pub skittles in an attempt to find the optimum strategies for playing. The simulation used parameters measured from our home alley. (We play in the Malmesbury skittles league at the Volunteer Inn, Great Sommerford.) Different alleys have different characteristics. For example different sized and shaped pins, different balls and different conditions of alley. I had some success with this simulation. [Read More]

Radar Speed Camera Rebooted

building a radar speed gun with a Raspberry Pi

Background This post is a follow-up from my previous post Building Radar Speed Camera and Traffic Logger with more information, improved design and experience from using the device in the field for nearly 2 years. This project is a self contained speed radar that can be used to give realtime traffic speeds, log traffic flows and statistics over a period of time and also possibly capture speeds of other objects in sporting environments, for example, though I haven’t specifically tested and tuned the code for this. [Read More]

Power Regulator repair on Photon

How to bypass and replace power regulator on Particle Photon

I accidentally shorted the 3.3v pin in the Particle Photon with ground. Within a second a puff of smoke rose from the circuit board and the photon no longer worked - when I connected power nothing happened, no LEDs lit and no boot. After a little looking around I discovered that the problem was likely the regulator which lowers the USB input voltage VIN down to 3.3V which all arduino like platforms use. [Read More]

Home Dashboard

Background There is something immensely satisfying about having something to hold which has been hand crafted. Working with code most of the time it’s rare to get an outcome that is tactile. This project recreates a Hive-like user interface experience with a few readily available components. These components connect easily to a micro-controller such as the Particle Photon. Figure2: Hive smart thermostat Figure1: Dashboard Construction Guide Parts List Photon Particle 500mA micro-USB power supply Breadboard 1602A LCD Display with I2C interface rotary encoder module knob for rotary encoder 2x 0. [Read More]

Aquarium Lighting Controller

Background I’ve had a modest home aquarium for a many years. It has always been lit by a specialist aquarium fluorescent tube. This gave out a nice light which both helped plants to grow and counteracted the excess of green caused by plants an algae. Figure1: Spectrograph of Hagen Aquaglow fluorescent tube There were two problems with this fluorescent lighting solution however. Firstly, it switches on and off instantly which can be quite unnatural and startles the fish. [Read More]

Building a Spectrometer

with a Raspberry Pi for $50

This project promises to give you super-human powers. I still find it amazing that our eyes construct all the colours for the most part1 from the mix of red, green and blue that the cones in our eyes can detect. Despite this simple three valued approach to colour that pervades our eyes, cameras, monitors and computer graphics there is a deeper reality to colour in everyday life. This projects opens the door on that reality. [Read More]