I’ve been refreshing my GitHub lately. Uploaded a new (very low compatibility) Gameboy emulator project. Refactored my Chip8 interpreter and maze generator Python scripts.
The trailer for my now defunct iOS game. Realised I’d never posted it here and hunted it down.
This video shows my final year project. Activity monitoring using accelerometers, over a wireless network. The data is being graphed in a wxPython application.
The first section shows the data being plotted in real time then the end section demonstrates changing the update rate. This is done over the wireless network.
The picture above shows the group of devices that form the network. The coordinator is where the computer connects, this connects to a “fixed node” which represents a room. This then has two “mobile nodes” connected to it, which have sensors.
The application can map out the network producing the result shown below. This can help correlate activity with the location at which it takes place.
The application produces CSV files which can be plotted in Excel to produce graphs such as the one below, which shows around half and hour of activity.
This video is a demonstration of the third year group project I was involved in at university. It shows one of the two robots we built, mapping an area (output shown in the bottom left), using ultrasound and infra-red sensors.
The robot shown uses stepper motors (the other used standard motors) with PIC micro controllers relaying movement and sensor data back over XBee modules to a base station (my part of the project) which finally sends the data over USB to a Python application.
This is what I built with some help from my Dad over this Easter holiday. It’s a simple wood frame, with layers of MDF for the control surface and the bottom (see the bottom here).
The embedded systems project at university this year was to design a system based around an Arduino core. I decided to expand upon previous work and build a simple games system, which as I’m writing this, plays pong. Though it has software hooks to do pretty much anything.
The final hardware (minus a mode switch) is shown above and has the following features:
- audio output with volume control
- 8 on board buttons and 8 external inputs (the header on the bottom right
- 10x7 red L.E.D. display
- access to reset, Serial rx and tx pins for reprogramming.
- software to abstract hardware access to simple calls.
This was my first time making a P.C.B. and that presented some issues due to the amount of parts (there are some under the screen) and getting the power planes to connect.
Ideally I wanted a controller style layout and maybe I’ll come back to it at some point and add that. As I said earlier I wrote pong for the demo along with a testing program and the classic scrolling text demo every L.E.D. display needs.
Hopefully I can expand on this work at some point and look into using rgb displays with colour mixing and brightness controls, probably with a single Atmel as the driver and an external supply to give the display power (currently the shift registers drive it directly).
This is the result of a afternoon’s hacking away at some Python code (click for a larger image). It’s a simple app that searches Twitter for a given term then writes out and shows an Html page with the results returned. Along with the user icons, handles, names and locations.
It was interesting to see how ElementTree and XML parsing in general works, and to get to know my new editor TextWrangler. Although I can’t take credit for the URL highlighting, I found that piece of regex here. Dive into Python’s excellent XML section also helped me get going.
I recently got myself a soldering iron and some other kit in preparation for some P.C.B. work for a university project. As a run up to all that I built this little project to test my skills and get some experience using stripboard. Below is the schematic: (minus the switch and power supply)
It’s a very simple circuit that turns on each led in turn at a speed set by the variable resistor on the 555 timer circuit. Below is the breadboard prototype:
Then I built the circuit on stripboard:
So instead of sleeping yesterday I decided to stay up making this. It’s a very simple 2D physics system. Currently only the force of gravity effects the particles and they are all independent but I plan to expand on it.
Note: each particle is spawned with a randomly assigned positive Y velocity and a randomly assigned X velocity. That’s why when gravity is 0, the bottom half of the screen clears.
Lifescreen’s new video is out, which I had a hand in making along with Matt Benatan, Andy Leeks and Robert Harvey.








