2018 Projects update

02 April, 2018

Best laid plans.

The plan was to blog my various projects over the year. The projects continued at their normal pace, The blogging at the pace it's had over the last few years. :)

ZX Spectrum Game - Nibber - ON HOLD

Originally started in Z80 ASM but I quickly discovered that with about an hour a night to work on it I was spending so long getting out of the day job C++ mindset and back into the ASM mindset that the project was going to take forever to finish.  

Pretty much all the ground work has been done but I have decided to put the project on hold because work is pretty busy at the moment and the last thing I want to do is code games in my downtime at the moment.  

The current plan is to revive this in the future but code in C using Z88DK (the game is simple enough to make this possible) which should make porting to other Z80 systems a lot easier.  

Educational Toy - IN PROGRESS - Early Prototyping

I had an idea about a way to lower the first barrier to entry when kids learn to code.  Something that takes the logical structures and presents them physically.

Currently I have schematics for the electronics and rough plans for how the physical elements can be presented in prototype form using laser cut pieces or 3D printed elements.

The code section has caused more concern.  The way I see the problem there are 3 options.  Create an entire system like Scratch,  make the computer side of the system handle the logic and stuff behind the scenes and not be used by the user, or hook into an existing eco-system like Scratch and provide easier on boarding.

Pro's and Con's

Full System - Expensive to create and slow to gain traction this isn't the way to do educational things you want to put in many hands.
Hardware Only - Limits the useful content that can be created or creates expensive add-ons.  Something a corporate entity might like, milk very few customers for more money, but not suitable for something I want to see in many class rooms and homes at low cost.
Hook into existing system - A great all round solution but harder to set up initially.  This is the idea I'm currently exploring.

LED Stair Lighting - IN PROGRESS - Prototyping

Light up the stairs when people walk up them.  What can go wrong?  Initially I was going to use an ESP 8266 for this but when I was ordering I had my head turned by the ESP32 which turned out to be far too powerful and is going to be used on other projects I think.  

The original plan was to have sensors at the top and bottom of the stairs to sense a person (or more likely a cats tail until I iron out that issue) and then light up the stairs starting at the point the person is and moving up or down until the entire staircase is illuminated.  Then a few seconds after the person has left the stairs or a set time out the lights fade down until they are off.  The reason for having a network connected device was to check the time and only use illumination that doesn't harm night vision at night.  This is obviously a fault in the design.  It's not the time that determines if the light should be in night or day mode but the lighting.

So the latest design uses two digital inputs for top and bottom PIR switches, an analogue output for the PWM signal to the addressable RGB LED's and an analogue input for the light level.  Much simpler and obviously much too little for a proper Microcontroller board.  The current idea is to use something in the ATTiny range to handle the entire system.  I only have a SMD ATTiny414 available at the moment and if I use that the entire system is liable to be ingested if the dog breathes in too deeply :)  I'm going to be getting an ATTiny85 (or similar) in a through hole pin out to finish off this system when I next order electronic bits.

LED Shed Lighting - IN PROGRESS - Near completion

The other half needed some better lighting in what we call 'Shed Number Two Please' (to be said in the same voice as a Post Office automated system, Shed number one is a former coal store planned to be my workshop and Shed number three is a wooden beast hidden at the end of the garden where the swimming pool lives in the winter) which is a small brick outhouse where the chest freezer lives.  The electricity supply is dodgy at best (a single 13A spur on a trip switch I installed as a temp solution a few years back and never got around to fixing), it's got more than enough capacity to drive a light but as it's only a temp system I don't want to add to it.

As it happens the outdoor LED string of lights outside that region required replacing and I had a string waiting to go up, I also had about 70cm of warm white LED strip.  So I combined the two with a few bits from the magic box of bits.  Now the solar panel charges a bigger battery pack and that drives both the pretty lights in the evening on an automatic switch and the LED strip on a switch that can be used to light up the shed. 

The prototype seems to work with the slightly dodgy proviso that one cell gets depleted a lot more than the other because of my dodgy knocked together system.  That will be fixed by using a few diodes to drop the voltage to the outdoor lighting but serve them 2.4v from both cells rather than 1.2v from one cell the quick prototype served them.  Also required is a switch for the OH to use to turn the inside lights on and off.  Currently the only switches I have are tiny PCB mount slide switches.

Weather Station Upgrades - IN PROGRESS - Long term project

Our weather station has been tweeting as @WtonWeather since November 2009 and uploading it's data to citizen science aggregators.  In that time it's been replaced in a like for like hardware swap and moved a couple of miles with the family but it hasn't had any new sensors or other citizen science projects attached to it.  This year we're starting a long term project to add to the station many future projects will be linked to this meta project.

24/7/365 Sky Cam - IN PROGRESS - Software and Hardware prototyping

Weather update 1 is a camera shooting the sky every 10 seconds day and night for the foreseeable future.  I love time lapse photography and this project will automatically generate timelapse photo's of the sky above the station.

The prototype hardware has been ordered.  A Raspberry Pi Zero W with a wide angle camera will form the data gathering portion of the system.  It's not a super hard project to set up a Pi to take a picture every X seconds and then upload the results to a web server if possible or store them until it becomes possible to upload them.

The storage of the images and the processing of the videos will be done in the cloud.  To keep the project as portable as possible this will be a Linux VM.  In fact at the time of posting the very machine that this website is being served from.

As a first step I've worked out the requirements and added a virtual disk to the VM to handle the extra data.  Scripts will be written later today to manage this data and create the videos every day, week, calendar month and year and hopefully upload them automagically to various video services.

Alternative Energy Controller - IN PROGRESS - Schematic and PCB design

Eventually the new weather station additions will be powered entirely using renewable sources.  Towards this aim I have been designing a schematic for a controller to handle various inputs from energy harvesters, charge the battery or bank of batteries and output nice clean power to the devices attached to them.

While I'm getting PCB made it's just as cheap to get five or ten of the same design these days so I'm trying to develop the controller in such a way that by using just a portion of the circuit board or all of it I can have the entire system, a variable power supply with or without fixed outputs of 5v and 3.3v attached for other projects or a bench supply and even micro-controller boards and even a remote control board for he system itself.

The current design has a balancing input to charge the batteries, outputs at raw voltage, 5v and 3.3v with sensors for voltage, current and temperature of power components, micro-controllers to gather this data and output it to OLED screens or to a remote system.   

VAR Windmill - IN PROGRESS - Early Design

I really want to design windmills that while not the most efficient look like bits of garden decoration.  Like the gardens of most people with autistic kids ours is full of stuff that moves in the wind and stuff that lights up.  I'm planning on making some of those generate some electricity as well :)

This is in the really early design phase since I need to get access to a 3D printer and experiment with designs and cheap generators to discover how much power I can generate in near silence.  

The controller circuit includes an output for a load so these things don't take off or shake themselves apart during high winds (our station, although sheltered, see 30mph+ winds pretty frequently).

Extra Sensors - IN PROGRESS - Requirements Gathering

A bunch of other sensors for everything you can think of.  Air quality, light, smoke, radiation, lightening, earthquakes (although more likely to pick up our dog running around and busses on the road) what ever you can think about eventually we're going to add it and report it back to the weather station.

Other projects

There are loads of other projects I've thought about or worked on already this year.  So many I can't remember many of them.  Eventually this blog will sort of resemble my old blogs that would have random bits of Python one day for something I thought would be cool one day, a prototype of a game engine another and a tool I developed because I couldn't find it elsewhere on another day with something happening every week.

This years other projects include last weeks fixing of a clock which ended up including changing the face on the clock to make it easier for the youngest to read and adding a light so it's easier to read in the dark.  Today I'm changing the LED to UV and painting portions of the clock face with glow in the dark paint.

The same day as the clock renovation started I also attempted (and failed) to turn a Poundland Nasal Hair Trimmer (don't worry I bought it specially for this project) and some Poundland Garden Wire into an automatic cat teasing toy.  There will always be projects too small or that get forgotten but if I can get back into the swing of things less of them will disappear until even I forget they exited.  I will make that cat toy work.

So I start blogging again and...

23 January, 2018

... and promptly forget to do it :)

I have been busy though reacquainting myself with Z80 machine code and the ZX Spectrum after I saw Man Verses Snake around the time I started this blog and noticed there wasn't a spectrum port of Nibbler.

I'll post some more details when when I get the chance.  Right now I feel like shit and my hands really hurt.  More on that in a different post.

Project One - You're looking at it.

01 January, 2018

Project One - A new blog.

It's been a while :)

It's a simple thing but to do this I had to do several things.

  1. Set up new VM in Azure
  2. Install OS, update and secure webserver
  3. Install Blog
  4. Write first posts (Hello, World! of the blogging world)

This is something that should be celebrated.  A first project for the year.  Project one ticked off before lunch on the first day of the year.

This is the scale of the sort of thing I'm going to be celebrating.  If a games project gets a git repo, and builds something that plays the basis of a game I'm underlining it and saying I've done something.  If that project doesn't go anywhere because the game wasn't fun that shouldn't feel like a fail because I made something and today I made something.  It's probably not the only thing I'll make today, unless returning to work tomorrow hits me hard it certainly won't be the only thing I make this week :)


New Year - New Shit - Same old Shit.

01 January, 2018

Happy arbitrary point in the Earths annual loop around the Sun!

I'm not much of one for celebrations that don't have a link to something real.  If the new year started last week when my hemisphere was at the point where the tilt of the earth made the day the shortest I'd probably be more up for it.

But that said this year I've decided to do one of those resolutions things that some people do.

This year I'm going to make at least one thing a month.

Making Shit makes me happy

OK, so that doesn't seem so hard.  I make more than one thing a month pretty much every month but come the end of the year I've forgotten them all.  When I did One Game A Month I got stressed when I didn't finish something in a month.  When I do game jams these days I frequently get flareups of my arthritis meaning I don't finish.  That's really stressful and I get down because I started something and didn't finish it but I learned lots during the jam even if it was that my body doesn't like programming games for filthy lucre for 36 hours a week and still attempting to come home and write another game in the 10 or so hours I might have free that month.  I made something, I just didn't make what I expected to.  So this year I'm going to celebrate all those mini makes.

Last year I fixed the hoover with a bit of metal I Dremalled into shape.  Nobody knows about that but this year I'll take a photo and say "LOOK AT WHAT I MADE!" so at the end of the year I can see all the things I make.

I'm not going to stress if I get to the end of the month and haven't made anything because all I've done is forgotten to celebrate all the things I did make but didn't document.  I know I'll make more than 12 things in a year.  I've made several today already :)  and that's the target.

I'd better set myself some rules.


  1. Make things
  2. Acknowledge when I've made something
  3. Have fun
  4. Try to document one make a month - however minor it might seem at the time.
  5. Don't stress about deadlines - I make stuff all day, everyday, sometimes I'll forget number 4 but I won't stress over it.
  6. There is no rule 6
  7. Share process and progress when appropriate and I can make the time.