Darren Long

Hobbyist Developer of Windows Applications



Bi-Directional Watch Winder

I needed a watch winder for my automatic watch, so bought a cheap one and added my own computer to it using an ATMega328 chip on an Arduino to hold my program (written in C++) and an L293D chip to control polarity to the motor.

My PCB was made using strip-board, cutting breaks in the tracks with a drill bit and copper tape to create strips in the other direction. When turned on it waits 10 seconds, then smoothly accelerates to start a clockwise rotation. After a minute of rotation it slows to a stop, waits 10 seconds then rotates in a counter clockwise direction. It repeats this 30 times before resting for an hour. Then the loop starts again.


The Core Flight System (cFS) is a software package that I have written to one day be used in a weather balloon which I plan to launch to around 100,000 ft, 3 times the height of a comercial airliner. The primary objective is to take photo’s of the curvature of Earth.

The cFS stays in permanent contact with ground control via http requests (below 10,000 – 30,000ft) and then via a series of beeps over radio wave. When the balloon reaches its maximum altitude it will pop and parachute back to Earth and at somewhere between 30,000 – 10,000ft http communication between the balloons cFS and Ground Control will be regained and the ground control software will automatically download photos and data logs from the cFS.


Character Clash

Character Clash is a two player card trading game I made, each player is given a set of cards at random and must battle the cards stats against each other. Special cards allow a number of special moves including evolving cards and steal opponents cards. The game manipulates csv and ini data and can have new cards easily added into the game. I created it more as a way of testing how I could manipulate csv data.

Updates to Rocket

After the previous launch of the rocket some modifications were required to the launch controller hardware. So I introduced some new circuitry to which safely tests the continuity of the igniter without the risk of the rocket launching early.

Then I got to work on a data logger to sit in the top of the rocket. This consisted of an Arduino, altitude sensor, micro sd card shield and battery. This will enable me to log both speed and altitude on future flights.


Media Server

Written a media server and client for my home media collection. The system runs on a server indexing all media files both categorizing them and creating generic covers should one not exist.

The system indexes, Films, Series, Documentaries, Music, Photos, Web Links and Applications.

A client is used on computers to connect to the server to explore the database and stream the media.

I’ve gone the the extent of adding in a jukebox, music video player that plays in random order and photo frame which randomly picks and displays your photo collection.

Programmers Calculator

Based on the work of AutoIT programmer scintilla4evr, I’ve created a calculator that allows AutoIT script to be entered directly and comments added against each calculation allowing the user to view the history of calculations. Output is shown in Decimal, Binary and Hexidecimal numeral systems.

Lists of available functions can be found under headings in the Index menu. These include Percentage Operations, Average Operations, Rounding Operations, Bitwise Operations, Programming Operations, Scientific Operations and  Time / Distance / Volume / Temperature / Weight / Pressure / Storage Conversions and Calculations. Even calculations such as DaysToChristmas() are available.

Variables can also be created on the fly and recalled during calculations. A set of predefined variables are also available.

The application is skin-able, can be set to be on top of all other windows and allows use of hot keys.

Backup Tool

Wrote a simple but effective backup tool for forward copying files from a source to a target. Only files that are new or have changed are copied and optionally files in the target that are different are deleted.

4bit Binary Radio Transmission De/Coder

Written some software that interprets beep codes given to it either from a wav recording (using its inbuilt recording function or loaded from file) or via manually typing dots and dashes. Once interpreted it provides a report on the data it has received. The software can also encode data from its gui or via command line into a series of beeps and play them via the computers sound card connected to a radio transmitter.

My inspiration and possible usage for this is to send data back to earth from a weather balloon at about 100,000ft. The weather balloon would have a radio transmitter, Arduino and altitude meter which would send beeps back to a listening computer on earth which loaded with this software will decode the beeps.

My beep codes are formatted as follows:

…- is 1
..-. is 2
..– is 3
.-.. is 4
.-.- is 5
.–. is 6
.— is 7
-… is 8
-..- is 9
…. is 0
-.-. is = Used following a data identifier
-.– is [ Used when starting a transmission
–.. is . Used as a decimal point
–.- is ] Used when ending a transmission
—. is / Used to divide multiple sets of data
—- is E Used to signify an error


Local Computer Policy Manager

Written a local computer policy manager that can be used to apply different local policies to a computer from an Administrators profile. These policies will affect standard (non-admin) users. It can be used for locking down various things on a computer, for example restricting the ability to write to USB sticks.

The software can also retrieve the current policy settings so that a policy can be created on one computer and then applied to other computers using the Policy Manager software.

Blog at

Up ↑