USB Laser Transceiver Design

Description of an experimental project done by me during May 2003 – July 2003 aimed at designing a Free Space Optic (FSO) link connected to the USB port of the PC. This project is part of the work being done by the Optical Networking group at IIT Madras

Motivation:

With the legacy RS232 serial ports being phased out in newer computers, USB has become the choice for new designs. The aim was to develop a high speed, low cost laser transceiver capable of supporting Low Speed (1.5Mbps) and High Speed (12Mbps) modes of the USB 1.1 protocol. This would provide a cheap alternative to short wireless links in regions where laying fibre is not possible. The maximum point to point distance is 100m.

The second objective was identification of the possible devices which might be used for future designs using the USB port.

Main Stages:

  1. Design of Laser Transciever capable of working at upto 10Mbps
  2. Selection of a microcontroller for interfacing the USB port to the Laser transceiver
  3. Driver programming
  4. Initial Layout and testing
  5. Final PCB Layout

I worked primarily on the microcontroller interfacing and the driver programming required.

Key Issues:

The Universal Serial Bus is a four wire bus – Vcc(+5V), Gnd; and a pair of data wires which uses differentially encoded NRZI signals to transmit data. The Laser transceiver input requires a common mode voltage of 2.5V with a differential mode input of 0.2V .

The USB protocol requires initial speed identification, PID/VID information ,as well as single ended input signals on the differential (D+, D-) data wires. Hence, an extra controller is needed to match these two protocols.

Usually, Interface conversion between USB and another protocol is achieved a microController which has USB support such as Cypress AN2131, Philips PDIUSBD11A, Microchip PIC16765 etc. or a Digital Signal Processor such as Analog devices BF535. These have strong processing capabilities, more than needed in our case.

The Design:

The data coming from the USB port is converted to 1 wire interface using a DS2490 controller.The 1 wire protocol is normally used to connect external memory to processors. A 1 wire interface transmits digital data using binary encoding - "1" = 5V and "0" = 0V. This output is clamped at 2.3V and clipped at 2.7V to get the required input to the Laser Transceiver. The driver programming is in C++ and assembly language.

Current Status & Related Work:

The laser transceiver on the bread is currently working at 400khz on a bread board. Initial layout is finished and testing is to be done.

An overhead projecter is also being developed by the Optical Networking Group, IIT Madras using the Cypress AN2131 controller. Currently, the chip has been programmed and the LCD display is working. Future plans include commercial marketing of this device.

Back to my Home Page