CSYS3056 - Microsystem Design

Tutorial Work

This little project was a learning tool for me. I was/am fairly naive about TCP/IP so set about designing/building the simplest possible internet device - the PingThing. 

PingThing sits on a serial (RS232) line and responds to pings (ICMP echo requests). It switches an LED on/off whenever it is pinged. I was particularly pleased by this as the whole project is only a couple of hundred bytes of code which includes a soft serial port. It communicates via SLIP to a null modem in Windoze 'dial up networking'. I used a 6805J1 microcontroller for this. It has enough RAM to buffer the ICMP packets making the code quite simple (even if it is rather dirty;)

I used a serial port 'analyser' to look at the data in a ping.

There are only two chips here; the microcontroller and a serial (RS232) driver which happens to be a Dallas 275 but that's not important.

You can find data on the various devices at the manufacturers websites:

Motorola 6805J1
Dallas Semiconductor

What are we trying to achieve?

Essentially this is a voyage of discovery (for you!) I want to take you right through the design process with as little intervention as possible on my part.

As discussed in class, you are effectively divided into two teams and you will work on this excercise in these teams.

To begin, you need to determine an approach to the problem. No doubt there are many important bits of information that you don't have. Try to identify what you need to know in order to begin.

A few hints

You need to understand 'ping' aka ICMP echo request/response, and you need to understand SLIP too.

An assembler 'framework' file is now available for you. Just fill in the gaps...


Despite the fact that you are working as a group member, I expect individual reports from each of you. The report should cover (at least) the background to the problem, a rigorous analysis of 'ping' over SLIP, and samples of data you collected along with an interpretation. You must be able to explain the code generated for your solution.

I will 'interview' each of you to ensure that your contribution has been valid.

my staff web page / my email address