PatB, the only changes I made to the code was to manually set the IP address rather than have it automatically assigned, this made fault finding the network side also easier as I knew what address I was trying to reach and I also set some of the extra pins on the Mega to control points / turnouts