The Concord Consortium logo

CCA2D2 v2 Interface

Version 2 of the CCA2D2 is an analog and digital interface with both real-time and datalogging capabilities. It has two ports for probes a serial interface for connecting to handheld, laptop, and desktop computer systems and a IrDA port. The microcontroller and the low-power I/O functions are operated with a 3.3V bus which can be powered directly from the handshake line on a connected serial port, from 2 internal AA batteries, or from a wall blob. The batteries through the power convertor can supply up to 300 mA at 5V to systems that need more power than can be stolen from the serial port such as high-power probes and the IrDA communications port.

Design Overview

More Details:




Prototype CCA2D2 v2 interface with light probe in Probe Port A


Prototype CCA2D2-v2 opened

Design Overview

The PIC16F874-04 microcontroller running at 4 MHz is used to operate the interface. On the prototypes we expect to use a PLCC-44 package. We are also looking for either PQFP or TQFP packages, which are smaller, but they may cost more and are harder to get. In addition to the I/O ports on the PIC we have also added an 8-bit serial shift register to set output signals which do not need to be changed often.

The CCA2D2 includes an 8kb non-volatile ferro-electric memory storage from Ramtron which can be used to save probe data when operated disconnected from a host computer in datalogger mode as well as a buffer to store data collected at higher speed than can be communicated by the serial port. The advantage of FRAM instead of standard EEPROM is a much faster write time and much lower power usage. The initial prototypes will only have 2kb of memory because the 8kb parts won't be available until September.

The CCA2D2 uses a 0-3.3 V level serial port communicating at 9600 bps to communicate to a host computer. While this is well under the RS-232 specification it works correctly on many systems including Palm, Casio and Compaq Pocket PC's and IBM Thinkpad systems. A custom cable must be used in order to communicate with Macintosh serial ports.

In addition to the serial port there we have designed in the capability for a 9600 bps IrDA low speed SIR IrDA port which can be used to communicate previously logged data. Initially the IrDA chip will not be installed. The IrDA port is only used to transmit previously saved blocks of data. It is not designed to operate while the interface is collecting data. When used at normal IrDA power settings the IrDA led will take peak currents of up to 350 mA and transmit over a 1 m range. Certain transceivers will also function according the IrDA 1.2a low power specification at approximately 10% of the optical power and over a range of 20 cm, for example the Sharp GP2W002.

The interface has both a high efficiency led output and a push button input. These I/O devices are used for simplified direct communication with a user to initiate datalogging when operated remotely from a host computer. In addition the button can be used as a reset button and to wake the interface from a comatose state.

The button status and IrDA RX lines are both read by port B0 however the button is only enabled when the Shutdown line to the IrDA transceiver is asserted (held high). The IRDA Rx pin connects through a 10K resistor to the PIC's RB0/INT. RB0/int has a 470K pulldown. the port b pullups are disabled. the pushbutton connects the RB0/int pin through a diode to the IRDA DISABLE line (high to disable). If IRDA DISABLE is high, the IRDA Rx should be inactive, RB0 should be low from the 470K pulldown. When the button is pressed, RB0 is pulled high through the diode. If IRDA DISABLE is low, the IRDA Rx may be active, therefore the state of RB0 is unknown. when the button is presses, the diode prevents current from flowing across the switch.

Each probe port can be operated independently and include 2 24-bit low-speed (3Hz) and two 10-bit high-speed (200 Hz) analog inputs. The 10-bit inputs can be operated as fast as 10KHz if the data is saved first to memory built into the interface and then transmitted later over the serial interface. There are also 3 digital lines which can be used for output and input, 3.3V power and switched 5V power.

Currently the plan is to use the 2.5V reference for the 24 bit converters and through a filter as the reference for the 10 bit converter. It will be used as a single ended reference. The PIC can switch between this 2.5V ref and the 3.3V bus under software control. The 10 bit converter inputs will be buffered though unity gain op amps. The inputs to the buffers are very high impedance. If there is room on the board, we could use differential inputs to these buffers. The trade off would be lower impedance inputs. (100K or 200K as opposed to >1M).

Each probe includes a non-volatile, 2k, low-power, $0.80 ferro-electric ram memory chip for holding type, identification, and calibration information specific for that probe. In addition the interface can identify when a probe is plugged in to the interface and when it is removed. Communication to the FRAM chips are through 2 bit-banged I2C busses. The serial clock line is shared and each probe port has an individual pin for it's FRAM Serial data line. The FRAM chip when active uses a weak pullup on it's serial data line. On the interface the same signal line is connected to an even weaker pulldown. This allows the SDA lines to be configured as inputs and to determine whether a probe is plugged in to that port.

The interface can be powered from the RTS line of an active serial port or from two internal AA batteries or a 4-5V wall blob. Power from the batteries and/or wall blob are diode-or'd together and sent through an inductor-based power convertor which steps up the voltage to 5V with an efficiency of 82% at 1.6 mA. The power convertor will operate normally with input voltages between 1.1 to 6V. If the input is greater than 5 volts, it will be passed to the 5V bus voltage. The input should not be greater than 6 volts. We will probably add some protection against inputs greater than 5V. The efficiency of the converter increases to 94% before the load reaches 10mA.

Internally there is a 5V and a 3.3V power bus. The 5V bus powers the 3.3V bus and is available as individually switched voltage supplies on the probe ports. The 3.3V bus powers the microcontroller, analog interface circuitry and the probe ports -- basically everything except the switched 5V supply on the probe ports.

The three different system supply voltages can be monitored on analog input port E2. At this point the plan is to have the three pins on port B assigned to the 24 bit shared serial clock and two serial data pins are used to select which voltage supply is measured.

The interface has four power states.

Off: This state only occurs when there are no batteries installed (or they are dead) and no power is available from a wall blob, and no power is available from an active serial port.

Comatose: This states uses less than 1 uA. The state is entered when power is available from either batteries or a wall blob and the serial port is inactive. The state is entered by disabling the power convertor through an output bit on the serial shift register. The interface may be woken from this state by either an active serial port or by pressing the reset button. Pressing the reset button will cause a capacitor to be charged which will power the enable line on the power convertor for 2-4s during which time the power convertor must be enabled through the serial shift register for continued operation.

Sleep: This state uses less than 500 uA. In this state the power convertor is operating and the 3.3V bus is powered however chips on the board are either in sleep or low power modes. The interface can be woken from sleep by either a timer one countdown to zero or by a change in status on port B0. The port B0 signal can be either the IrDA RX line or the push button input.

Port pins C0 and C1 are connected to a 32.768 KHz crystal whose oscillation increments the T1 counter while the system is asleep. When T1 rolls over to zero the processor is woken up. Sleep intervals from 0 to 16s can be programmed by setting T1 and the T1CON prescaler. The processor wakes up and starts operation approximately 0.25 ms after the T1 countdown.

Wake up from sleep could also be from the special event trigger associated with timer1. This also allows an arbitrary periodic wake up frequency.

With fresh 1600 mAh alkaline batteries the interface can operate as a datalogger for approximately 14-18 weeks.

Low-power Operation: This mode takes less than 2 mA and is the normal operating mode.

High-power Operation: This mode is entered when either one of the probe ports 5 volt supplies are switched on or when IrDA transmit led is being powered.

When the interface is not in a datalogging mode it will turn on when connected to an active serial port and enter the comatose state when the external serial port is shut down or the serial cable is disconnected.

There are two datalogging modes. The traditional mode is long-term datalogging. In this mode the interface is normally asleep and it will wake up at intervals check to see if probe data need to be collected, if true collect the data and save it and then go back to sleep. The interface will operate between 14-18 weeks when supplied with fresh alkaline batteries.

The other mode is high-speed. In high-speed mode the interface waits for a trigger condition and saves data to the internal memory at a relatively fast sample rate. This rate can go to the maximum possible for the selected convertor. The lower limit is that rate beyond which it saves power by going to sleep between data samples.


CC LogoCopyright © 2001 The Concord Consortium, All rights reserved.
Site questions and comments:
stephen@concord.org
TEEMSS I - Handheld Screenshot

TEEMSS I - Handheld Screenshot
This screen shows a screen seen on handhelds loaded with the TEEMSS I curriculum software.