Jugend forscht presentation
This page gives an overview of our official presentation in front of the jurors. We included it into the website as it gives a nice overview. At the bottom you can find the posters and handout.
Burkart: Hello everyone, we're the team of the project Mobile Internet access for graphing calculators, my name is (Lester Burnham, just kidding... movies rock) Burkart Lingner and I concentrated on programming TI and microcontroller.
Alexander: Hi, I'm Alexander Mann and I've done all the programming of the PC software plus I assisted in developing the hardware.
Marc: My name is Marc Schappeit, and as I've been a ham radio enthusiast for several years I saw my primary function within this project as the leading hardware engineer.
Marc: The idea for our project grew at school where, since the 8th grade, every student has a TI-82. Many people all around the world found out that it can be used for other things than just math: There are games, databases and all kind of stuff. Now as our project name suggests, our idea was to extend the calculator's abilities by giving it mobile Internet access. To accomplish this we needed both hardware to transmit the data via radio and software.
Marc: I'm now going to give you an overview of the used hardware components. Here you can see a calculator, the microcontroller in a circuit with some external RAM, an Evaluation Board with the nRF401 radio transmitter on it, the Interface 2.0 which converts between the logic levels of RS232 and TTL, and here you can see a PC.
Alexander: We're now going to explain the shown parts. Let's start with the nRF401: One great advantage of this IC is its capability to transmit and receive digital data without any coding necessary. However as it's radio communication, only one nRF401 may send at a given time which produces some issues explained later on. The IC can send on one of two selectable channels which are both in the 433 MHz ISM band. In free-space several hundret metres range can be reached, in a building in the city we got a stable link to work at about 50 metres distance. The maximum data transfer rate of this device is 20kbit/s.
Burkart: Something about the calculator: The TI-82 has a 96x64 pixel monochrome display which is more than standard mobile phones have nowadays. Through the use of a shell it is programmable in Z80 assembly. Data communication with the calculator can be done through its linkport which features two bi-directional data lines plus a ground connection. In our project the TI is to act somewhat like a terminal which means it merely processes user input/output.
Burkart: The microcontroller assists the calculator by handling all the radio protocols and forwarding only the important data to the TI. The use of a microcontroller proved to be necessary as the calculator alone was too busy to do everything on its own. So we chose to integrate an AT89C52 into our project, an 8051 compatible microcontroller with a hardware UART, several programmable I/O lines to communicate with TI and nRF as well as the opportunity to easily access 32kB external data memory.
Alexander: In our project a PC works as the server, but you cannot simply interconnect it with the nRF401 as both devices use different voltage levels for data transfers. So in between these two components we put a MAX232 which converts voltage levels between RS232, which the PC's serial port uses, and TTL, according to the nRF's specification. The computer itself has some kind of gateway function as well, as it allows the clients to use its Internet connection.
Marc: During development we used several homemade circuit boards connected to each other by a lot of wires. This isn't suitable for end-user purpose so we came up with the Hardware 2.0. On this professionally manufactured PCB all necessary components plus some additional goodies are integrated. These goodies are: The opportunity to switch between an external or an integrated loop antenna, a stabilised power supply which also enables battery supply, some fancy status LEDs and a potentiometer to anticipate radio power to current distant to the server. The last thing turned out to be necessary as too much power results in transmission errors.
Marc: As you have seen our project consists of three hardware components that have to be programmed. It's been necessary to write software for the calculator, the microcontroller and for the PC. The TI is to act as a terminal mostly only with the ability to collect user input and display data it received - via the microntroller - from the server. The microcontroller's software has to incorporate the radio and the TI-to-microcontroller protocols as it works as a gateway. The computer is to transmit radio data according to the protocols, plus it hat to restructure Internet and local data to make it able to interprete by the calculators. My colleagues which dealt with the software part of the project will now give you a detailed insight in the protocols and the software.
Burkart: As our project is based upon radio data transfers there's only one channel available. Due to this it is not possible to use a second line for a clock signal. So as the radio Low-Level-Protocol we use the well-known RS232 protocol which works asynchronously, i.e. the synchronization is embedded into the data stream. Another advantage of this protocol is its wide support: The PC as well as the microcontroller support it by hardware, eliminating the need to emulate it by software. With this protocol layer it is now possible to transfer streams of single bytes.
Burkart: Now it's the task of the Intermediate-Level-Protocol to separate the byte stream into logical units or packets. Every packet consists of a sender and receiver address, a so-called Content ID which informs the calculator about what kind of data is attached, if any. Also at the end of each packet there's one checksum byte which enables the receivers to check whether they received the packet correctly. This is definitely necessary as in a radio transmission there is likely to be jamming by other devices sending at the same frequency. We use the standard CRC8 algorithm for this purpose as it can be calculated fast while being quite good at recognizing errors. With this protocol layer data and control signals can be sent from one client to the server and vice versa.
Alexander: The most sophisticated part of the radio protocol is the High-Level-Protocol. Its duty is to make sure only one communication party is sending at a given time. This is accomplished by assigning a number or address to every client by the server during login. After the client with the lowest number received a server request to send data, it does so, the following clients each send after the client with the lower address has finished. After all clients are finished sending the server may send as long and as many data as it wishes to do. With all three protocol layers a functional radio network can be established.
Burkart: I'm now going to explain to you how the microcontroller and calculator software work and how they are working together. Although being physically separate devices these two can be seen as a unit. The microcontroller is doing all the radio communication. Incase it received data for this client it buffers it in the external RAM and then forwards it to the calculator via a simple synchronous protocol. The calculator then displays the data on its screen and takes user input. If the user is done typing, the TI transfers the input data to the microcontroller which then sends it via radio to the server at the right time according to the High-Level-Protocol.
Alexander: Almost being at the end of our presentation I'm now going to explain a few things about the PC- or server software. It basically has to do two things: First maintain radio communication by checking for new clients to log in, receive data sent from the clients and send them data. The other task is to provide the clients with data. To do this the server software has to load and format local and Internet data. Additionally the server software does the user management.
Marc: Alright, we're done with the presentation, if you have any questions, feel free to ask, otherwise we're now going to show you the system at work!