Bristol Wearable Computing

[ Home | Plans | Meetings | Members | Search | Papers | Links | CyberWear | LocoSoft]

Parallel Interface - Version 1.0

The Cyberjacket requires various inputs to provide context information. Planned examples (April '99) include pinger data - initially 4 bits; head tracker output - direction, tilt and roll (all analogue); and body sensor outputs for affective computing e.g. heart rate, blood volume pressure & electromyogram. The two serial I/O ports are already dedicated to the GPS and Footbridge devices which are envisaged to be in use with most applications.

The parallel port provides a fast and versatile interface which can be configured in a 'bi-directional' mode on the CardPresso. Control data can be written, and single bytes read, via the control register(0x037A), and data register (address 0x0378). It is proposed to read 4 sequential bytes into the port to provide a data set which can be accessed by the relevant applications. The data would be stored in an 4 element character array and refreshed regularly.

The Cyberjacket would thus be programmed to provide a 'read' pulse from each of the four accessible control register outputs in turn. Each of these outputs would be used to enable the outputs of an 8 bit latch or an A/D convertor to be fed into the data register. The resulting sequence of four bytes could then be read by the CyberJacket. 

Control Register Addresses & Functions

( n.b. output only)

Name a.k.a. Function Linux name Hex CN5 Header 25w D-type  
STB# OUT 0 Strobe LP_PSTROBE 0x01 1 1  
AFD# OUT 1 Auto Feed LP_PAUTOLF 0x02 2 14  
INIT# OUT 2 Initialise LP_INITP 0x04 6 16  
SLCTIN# OUT 3 SelectIn LP_SELECP 0x08 8 17  
n/a OUT5 Read LP_PDIR


nc nc  

The four bytes will initially be configured as:

Byte Number Data Alternative Type Comments
1 Pinger identifier Spare (Lens data?) Digital - 8 bit  
2 Heart Rate Compass Direction Analogue O/p range -128 to 128
3 BVP Camera Tilt Analogue O/p range -128 to 128
4 EMG Camera Roll Analogue O/p range -128 to 128


There are two approaches which could be used:

1) PIC

A suitably programmed PIC (e.g. 16C7x series) could provide a solution which would enable some processing of the data before it is input into the CyberJacket. This would enable multiplexing of data and/or elimination of any interaction between data lines. A PIC also would provide a compact solution and low power consumption <10mW (claimed). However for a first prototype it is probably more appropriate to use discrete ICs. 

2) Discrete ICs

The parallel port output pulses would be applied directly to either octal buffers (e.g. 74HC244) or three output state, 8-bit A/D convertors (e.g. ADC0804). The outputs of the buffers and A/D convertors would be paralleled and connected to the data input lines on the parallel port. Power consumption <50mW. The circuit diagram is shown below (to follow).

3) Custom Build

As size and power consumption are critical, a further option is to build only what we need for a particular application and integrate it with the particular context sensor(s) e.g. only a pinger receiver is needed for the Shopping Jacket. The circuit for this example is shown below:-

 ping_rx.gif (7875 bytes)

cnr 6/5/99

unicrest.gif (4191 bytes)

The material displayed is provided 'as is' and is subject to use restrictions.
For problems or questions regarding this web contact Cliff Randell.
Last updated: February 16, 2000.
logoep.gif (1404 bytes)
ęCopyright Hewlett-Packard 1997-2000.