Embedded System VoIP Project
Embedded Systems Design
The Georgia Institute of Technology
The Idea
Design a VoIP Phone using the state-of-the-art operating system, Windows CE 6.0. The VoIP Phone uses a character-based LCD, keypad with handset and ICOPTechs eBox. This device can be used to receive and make calls over the internet. From anywhere around the world, the calls are virtual free.
The Proposal
We are designing an embedded VoIP application as an alternative to other telephony applications, which are often pay services. We will be using the eBox to mimic the hardware that would be present in a real phone. Windows CE will provide most of the VoIP functionality and protocol processing. The user interface includes a headset, keyboard, and a Phidgets LCD display. The display will provide call information to the user such as number dialed, length of call, and user id.
For demonstration purposes, we will use only two eBoxes to simulate a call between two users. However, the application will have support for multiple users.
Possible future extensions to this project include a DNS server to allow dynamic IP addresses for the eBoxes or a headset that has speech recognition to allow the user interface to include voice dialing.
The Device
Our device is state-of-the-art, and its one of the first devices to uses the new Windows CE 6.0 Operating System. This project uses the Microsoft Real-Time Connection library with built-in Voice Over Internet Protocols. This Library allow the developer to create a session and add multiple participants to this session which allow conference calls. The methodology is similar to a chat room. First, the user connects to the client. Then the user creates an alias. With this alias, the user can participate in a VoIP session.Design Specifications:Our goal was to build a VoIP telephony device that would emulate the feel of a standard telephone on an eBox base running Windows CE 6.0. We accomplished this goal by implimenting the following parameters.
RTC Client API: The RTC Client API allows the developer to build application that can make phone calls sessions over the Internet.
Phidgets Blue LCD: This device integrates a 20X2 Blue Phidget Text LCD with USB ports that is required to control and power this device. The LCD displays the status of the call: Idle, Connecting, Receiving or In Progress. Once in progress, the timer keep track of the call time length.
Simple Handset: The user can use the headset to talk privately to the participant on the other end.
USD Keypad: The device integrates a 18 key number-based keypad. The user can use the keypad to enter the IP address of the receiving participant, connect and disconnect.

Developers
Eshwar S.
James H.
Nick M.
Jeremy J.
