<TABLE> <S> <C>
<PAGE>
<ARTICLE> 5
<LEGEND>
THE CONSOLIDATED BALANCE SHEET AS OF JUNE 30, 2000 AND DECEMBER 31, 1999 AND THE
STATEMENT OF OPERATIONS FOR THE THREE AND SIX MONTHS ENDED JUNE 30, 2000 AND
JUNE 30, 1999
</LEGEND>
<MULTIPLIER> 1,000
<S> <C> <C>
<PERIOD-TYPE> 3-MOS 6-MOS
<FISCAL-YEAR-END> DEC-31-2000 DEC-31-2000
<PERIOD-START> APR-01-2000 JAN-01-2000
<PERIOD-END> JUN-30-2000 JUN-30-2000
<CASH> 1,062 1,062
<SECURITIES> 0 0
<RECEIVABLES> 3,581 3,581
<ALLOWANCES> 40 40
<INVENTORY> 3,274 3,274
<CURRENT-ASSETS> 8,188 8,188
<PP&E> 3,846 3,846
<DEPRECIATION> 1,543 1,543
<TOTAL-ASSETS> 10,869 10,869
<CURRENT-LIABILITIES> 2,882 2,882
<BONDS> 0 0
0 0
0 0
<COMMON> 242 242
<OTHER-SE> 24,353 24,343
<TOTAL-LIABILITY-AND-EQUITY> 10,869 10,869
<SALES> 5,131 10,071
<TOTAL-REVENUES> 5,131 10,071
<CGS> 3,059 5,947
<TOTAL-COSTS> 3,059 5,947
<OTHER-EXPENSES> 1,710 3,362
<LOSS-PROVISION> 0 0
<INTEREST-EXPENSE> 20 8
<INCOME-PRETAX> 342 754
<INCOME-TAX> 0 0
<INCOME-CONTINUING> 342 754
<DISCONTINUED> 0 0
<EXTRAORDINARY> 0 0
<CHANGES> 0 0
<NET-INCOME> 342 754
<EPS-BASIC> 0.01 0.03
<EPS-DILUTED> 0.01 0.03
</TABLE>