Terraria: I have a space gun and it’s mine all mine!

So I’ve finally defeated the Eye of Cthulu in Terraria and I’m now starting to be a lot stronger. I also used explosives to destroy a couple of shadow orbs and caused a meteor to crash (which I mined). So I now have a space gun and better armor. Now the next step will be trying to kill the eater of worlds.

I have a space gun!
I have a space gun!

All the demon forges!
All the demon forges!
Crossing the corruption made easy.
Crossing the corruption made easy.

Socket coding in Android

So I’ve recently been playing about with Android for ‘Not So Super Secret Startup Idea’ and needed some code to communicate data such as Phone Calls/Text messages and other things from my phone to another device using TCP/IP. This is a bit harder on Android then it is on a PC as Android is bassed on apps having something called Activities and Services.
An Activity is the part of the Application which handles user input and can be destroyed at any time by the OS. This makes it pretty much useless for running anything which will communicate with the outside world without user intervention.
The other part part of an Android app is called a service which can be used to perform tasks in the background, process events from Activities, etc.
So what I currently have is an Android app which has a Service to handle TCP/IP communications from a telnet client on a PC. The service will also send data such as GPS location, phone calls and text messages (currently work in progress) over the socket to the PC.
One problem with the default TCP/IP functions is that they block (do not return until the right amount of data is received). I choose to use threads to handle blocking I/O and post Intents (a form of IPC) to the main activity to update it’s UI.
There is however one problem with using Threads in that when the Service is stopped there is no clean way to Kill a thread. This can be gotten around by closing the socket and setting a variable inside the threads main loop to tell it that it needs to shutdown cleanly.
So here’s some quick and dirty code which output’s GPS location and the phone no. of any calls received to a socket:


Going Underground

A few months ago I saw that the London Transport measeum where offering tours of Awdych tube station so I managed to book me and S a couple of tickets before they sold out.
Awdych is one of the many abandoned tube stations on the London Underground network and which you don’t often get the chance to visit.
The tour started at the booking hall where we were told about the stations history and ultimate downfall. We then descended the 120 stairs down to the bottom of the lift shaft. We then looked around the lift shafts before proceeding to the platform level and the first of the platforms at the station.



We also saw the second platform which was used as a storage area for actifacts during the war, had a look at the tunnels beyond the station (to protect against trains missing the station from derailing). We then finally saw some of the unfineshed tunnels from the lift to the platform.

More pictures are on Siobhán’s blog.

RS485 networking

A couple of years ago I built the first version of my tube time display which shows the time of the next train at my local Underground Station.  This was connected to a Raspberry PI via a USB connection.  I found the Raspberry PI not the most reliable piece of hardware in the world and it was also a bit of an over kill for a simple display so I’ve been working on a new version of my display that uses RS485 to communicate with a computer which can be a long way away from it.

The original tube time display thing.
The original tube time display thing.

For this I decided on a token bus type network where each device sends out a token to the next device telling it that it can use the communication channel. This allows me to attach other AVR/Arduino based devices to the same piece of cable (I’m using CAT5 ethernet cable). I also have one device on the network acting as a superviser which will create tokens for a device if the token is given to a device that doesn’t exist.

So far I’ve managed to send text between two AVR32U4 boards over the bus so it’s going quite well so far. I think things can be further optimised so the bus is faster but it’s certainly good enough for my tube time display.



2014-05-24_00001I recently bought Terraria on Steam when it was on offer.  It’s best described as a 2D Minecraft alike where you have to survive on a hostile world.  I’m still very much learning how to play it and have got as far as creating a small house for me and my adviser.  We can now survive the night without be killed by zombies or flying eye things.

I’ll post more updates as I learn more and expand my home!

Anatomy of a bicycle chain


I changed the chain on my bicycle awhile ago and decided to keep the old one and recycle it.  I haven’t decided what or if I’m going to us it for yet but was curious about the wear on its components.  So I used a chain too to remove 3 of the links so I could completely disassemble one of the links.
Once I disassembled it I could see that the main component that show wear is the connecting pins.  They have quit obvious grooves which is probably the main thing the cause train stretch.  Surprisingly I couldn’t see any obvious wear on the two bearings.  I also saw some wear on the silver coloured connecting links.
It was also quite interesting how the rear sprocket had worn.  It looks like some of the teeth have actually bent out of shape.


Day off to visit the NPL (Plus picture of me!).

Wearing stompy goth boots and leggings for my visit to the NPL!

So I had a day off yesterday to visit the National Physics Laboratory for there open house event.  Me and S saw lots of interesting exhibits including seeing a house fly under an electron microscope which was amazing.  You could see the compound eye in amazing detail.  I also got the chance to use a ultrasound machine to plastic stick men in gel which was a lot harder then it looks and lot of fun.

Unfortunately my stompy Goth boots got the better of me and my feet were aching after several hours so me and S retreated to a nearby pub for food and then got the train home.