USAR HulaCoderTM UR7HCDMP USAR HulaPointTM - Ergonomic Mouse PS2/RS232 Encoder Description The USAR HulaCoderTM UR7HCDMP is an easy-to-use single-chip encoder that interfaces an innovative sensor developed by Fujitsu. Together they make the USAR HulaPointTM. Equipped with an advanced motion algorithm, the UR7HCDMP offers low power consumption in a small footprint package. The device can be linked through either the serial or PS/2type mouse port of the host system. The UR7HCDMP is compatible with the IBM and Microsoft two-button and the Logitech three-button mouse communication protocols. The device will auto switch between the Serial and the PS/2 mouse communication protocol depending on the port to which the device is actually connected. Communication through the serial port is half-duplex at a fixed speed of 1200 Baud. PS/2 communication is bidirectional at 10 kbps. The USAR HulaCoderTM implements all commands from and to the system, as defined in the IBM PS/2 Mouse Communication Protocol. Mature mousecoderTM product specifications Features • Equipped with Advanced Motion Control algorithm • Low power consumption in a 3 to 6 Volt operating range • Effortless and accurate cursor control with 10 degree movement in every direction • Compatible with IBM/Microsoft twobutton and Logitech three-button mouse Applications • Embedded HulaPoints • Industrial Panels • Instrumentation Pin Descriptions CHX 1 18 CHY RTSIN 2 17 PWRON SER-OUT 3 16 OSCIN RESETIN 4 15 OSCOUT VSS (GND) 5 14 VDD (+V) PS2CLK 6 13 D/A-2 DIP/ SOIC PS2DAT 7 12 D/A-1 RIGHTSW 8 11 D/A-0 LEFTSW 9 10 MIDDLESW The UR7HCDMP is a CMOS device operating at 4 MHz. The lowpower consumption of the IC makes it suitable for battery operated systems. Power in the serial mode, as in any standard mouse, can be drawn from the RS232 lines of the host system. Custom versions are available to suit a wide range of pointing device applications. HulaCoderTM is a trademark of USAR Systems, Inc. All other trademarks belong to their respective companies. USAR Datasheet • Works with innovative proprietary sensor technology developed by Fujitsu Microelectronics • Responds to feather-light touch without resistance • Small 18 pin plastic PDIP and SOIC Packages available • Autoselectable RS232 or P7S/2 hardware interface • Customized versions available DOC7-DMP-DS-102 1 USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications USAR Systems, Inc. Ordering Code rewrwer Package options 18-pin, Plastic Dip 18-pin,SOIC TA=0OC TO +70OC UR7HCDMP-P UR7HCDMP-DW TA=40OC TO +85OC UR7HCDMP-CP UR7HCDMP-CDW Functional Description The UR7HCDMP consists functionally of five major sections (see Functional Diagram below). These are the Sensor Interface, the Sixteen Bit Timer, the Oscillator Circuit, the PS/2 Communication Port and the RS232 Communication Port. All sections communicate with each other and operate concurrently.Descri Functional Diagram LEFT MIDDLE RIGHT BUTTON BUTTON BUTTON Data Buffer Switch Interface PS2CLK PS2DAT TXD RTS PS/2 Communication Port X Input CHX Y Input CHY 3 Control RS232 Communication Port HulaPoint Interface 16 bit Timer Power-On Reset Oscillator Circuit OSCIN-OSCOUT 2 USAR Datasheet DOC7-DMP-DS-102 2 Resolution Enhancement D/A Sensor Power Strobe USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications USAR Systems, Inc. Autoselect Pin Description At power-up the USAR HulaCoderTM will execute a power-on reset and determine the mode of operations. Pin Numbers Mnemonic DIP CHX 1 RTSIN 2 SEROUT 3 RESETIN 4 SOIC 1 2 3 4 TYPE Analog Input I/O O, Open Drain I GND PS2CLK PS2DAT RIGHTSW LEFTSW MIDDLESW D/A-0 5 6 7 8 9 10 11 5 6 7 8 9 10 11 Power I/O I/O I w/ Pullup I w/ Pullup I w/ Pullup O D/A-1 12 12 D/A-2 13 13 O VCC OSCOUT OSCIN PWRON 14 15 16 17 14 15 16 17 Power O I O CHY 18 18 Analog Input PS/2 Mode At start-up or upon receiving a reset command, Clock and Data lines of the USAR HulaCoderTM can be pulled to a positive level. The UR7HCDMP will then wait between 300 and 500 milliseconds before sending an AAh to the host followed by a device ID of 00h. Then the IC will set itself to its default values, i.e. Incremental Stream Mode with 1:1 scaling, and a report rate of 100 Hz. The device will then disable itself until a command is sent from the host. O Name and Function Horizontal Input RTS Sense, Power Save Out Serial Tx Data Reset: apply 0 V for orderly start up. Ground PS/2 Clock PS/2 Data Right Switch: Low = On. Left Switch: Low = On. Middle Switch: Low=On. Resolution enhancement D/A: LSB. Resolution enhancement D/A Resolution enhancement D/A: MSB. Power Supply Oscillator Output Oscillator Input Sensor Power Strobing Control Vertical Input Error Handling Pin Description Notes For every correct command or parameter received from the host, the UR7HCDMP sends an Acknowledge (FAh). If an invalid command or parameter is received, the UR7HCDMP issues a Resend Request (FEh). If an invalid input is again received, the device transmits an Error Code (FCh) to the host. Both Error and Resend Request responses are sent by the device within 25 milliseconds. The host may not issue any new commands until either the USAR HulaCoderTM has responded or until 25 milliseconds have elapsed. USAR Datasheet The Internal Oscillator has a built-in feedback resistor. Only one (1) external component is needed for Clock generation. USAR recommends a 4.00 MHz Ceramic Resonator with built-in load capacitors. RIGHTSW, LEFTSW, and MIDDLESW inputs have built-in pull-up resistors. No additional components are required for a three-button design. However, if high levels of ESD and EMI are expected, than series protection resistors (47 Ohms to 1k Ohms) are recommended between the switches and the switches’ inputs on the IC. DOC7-DMP-DS-102 3 USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications USAR Systems, Inc. PS/2 Mode Commands PS/2 Data Format When the Reset Command (FFh) is enacted, the UR7HCDMP sets the following default parameters: Incremental Stream Mode, 1:1, scaling, disabled, and a report rate of 100 Hz and then sends AAh to the host followed by a device ID of 00h. The following table shows the data report format. Values are expressed in a Two’s Complement Format with a separate sign bit. If there is an overflow of the accumulator, the maximum positive or negative count is reported and the corresponding overflow bit is set. The host sends the Resend Last Data Stream Command (FEh) when it detects an error in any UR7HCDMP transmission. The device then resends the last output data stream to the host. This transmission occurs after a USAR HulaCoderTM transmission and before the host enables the interface allowing the next USAR HulaCoderTM output. The Set Default Status Command (F6h) re-initializes the device to its condition at power-up. The Disable Command (F5h) stops the device from transmitting all reports. However, the mode does not change; the HulaCoderTM is still able to respond to commands. If the Disable Command is issued while the device is transmitting a report, the UR7HCDMP immediately stops the transmission and disables itself. If the USAR HulaCoder is in Incremental Stream Mode, the Enable Command (F4h) will allow it to begin data transmission. If the device is in Prompt Mode, the Enable Command will update the internal status of the USAR HulaCoderTM, but will not allow the device to transmit data to the host either while it is moving or when a button is depressed. TM USAR Datasheet Byte 1 b0 b1 b2 b3 b4 b5 b6 b7 Left Button status Right Button Status Middle Button Status Always = 1 X data sign Y data sign X data overflow Y data overflow 1 = depressed 1 = depressed 1 = depressed 1 1 1 1 = = = = negative negative overflow overflow Byte 2 b0 b1 b2 b3 b4 b5 b6 b7 X0: LSB of X data X1 X2 X3 X4 X5 X6 X7: MSB of X data Byte 3 b0 b1 b2 b3 b4 b5 b6 b7 Y0: LSB of Y data Y1 Y2 Y3 Y4 Y5 Y6 Y7: MSB of Y data Status Report Format Table Byte 1 b0 b1 b2 b3 b4 b5 b6 b7 Right Button 1 = depressed Middle Button 1 = depressed Left Button 1 = depressed Always = 0 Scaling - 1:1 (0) / 2:1 (1) Disable - (0) / enable (1) Stream - (0) / prompt (1) mode Always = 0 Byte 2 b0 - 1 Current resolution setting b2 - 7 Always = 0 Byte 3 b0-7 DOC7-DMP-DS-102 Current sampling rate 4 USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications USAR Systems, Inc. PS/2 Mode Commands, Cont Sequential Commands The USAR HulaCoderTM will respond to the Set Sampling Rate Command (F3h) in both Stream and Prompt Modes, but will only update its internal status if the command is enacted while the device is in Stream Mode Unlike normal commands, sequential commands must be enacted with a sequence of commands. If the sequence is not consecutive or is incorrect, the USAR HulaCoderTM aborts the detection and responds the way it would normally respond to a command. The UR7HCDMP responds to the the Read Device Type Command (F2h) immediately after the Acknowledge with a 00h. The Set Prompt (Remote) Mode Command (F0h) sets the device to Prompt Mode. Data values are then only reported in response to a Read Report Command (EBh). If the Set Echo Mode Command (EEh) is enacted, the USAR HulaCoderTM will immediately return any data bytes except FF or EC. The Reset Echo Mode Command (ECh) returns the device to its previous mode disabled. If this command occurs while the UR7HCDMP is in either Stream or Prompt Modes, the command is ignored. The Read Report Command (EBh) prompts the USAR HulaCoderTM for a report. The report occurs even if the device did not move or if the status of the switches did not change. The report is sent by the UR7HCDMP following an Acknowledge. The individual commands that comprise a sequential command have been designed so that the elements of a sequential command can be sent to the USAR HulaCoderTM via the standard IBM PS/2 BIOS calls and the device only returns a valid response to the Standard Status Request. This ensures that, if the sequential command is sent via the BIOS, the status response will be accurately returned even if the BIOS does error detection. Thus, a programmer can have complete control of the mouse without having to access the device hardware port directly. The USAR HulaCoderTM implements a special sequential command that can be used to determine its ability to report three buttons. The sequential command is a series of commands to the USAR HulaCoderTM that cause the device to respond to the last command (Read Status) with alternate information. Sequence of commands: 1. Set Resolution = one count/ mm Direct: E8H,00H BIOS: INT15H, AX=C203H, BX=0 2. Set Scaling = 1:1 Direct: E6H BIOS: INT15H, AX=C206H, BX=1 3. Set Scaling = 1:1 Direct: E6H BIOS: INT15H, AX=C206H, BX=1 4. Set Scaling = 1:1 Direct: E6H BIOS: INT15H, AX=C206H, BX=1 5. Read Status Direct: E9H BIOS: INT15H, AX=C206H, BX=0 The response to the Read Status Command is in the form: Byte 1: Standard Status Information (buttons, scaling, etc.) Byte 2: Number of mouse buttons (3) The Set Incremental Stream Mode Command (EAh) sets the USAR HulaCoderTM to Stream Mode and disables the device. USAR Datasheet DOC7-DMP-DS-102 5 USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications USAR Systems, Inc. PS/2 Mode Commands, Cont. Serial Data Report Format Table The Status Request Command (E9h) returns a 3 byte status report. Byte 1 The Set Resolution Command (E8h) controls resolution, and the Set 2:1 Scaling Command (E7h) enables a coarse/fine tracking response. Due to the Advanced Motion Algorithm, Set Resolution and Scaling Command are acknowledged and reported as activated, but their status is ignored.The Set 1:1 Scaling Command (E6h) enables the values of movements to be transmitted to the host without any scaling Serial Mode Communication through the serial port is half-duplex at a fixed speed of 1200 Baud, 7N2 protocol. At start-up and after each RTS toggle the USA HulaCoderTM will send a two-character ASCII string “M3” indicating 3-button capability to the host. b0 b1 b2 b3 b4 b5 b6 X6 X7: MSB of X Data Y6 Y7: MSB of Y Data Right Button Status Left Button Status Always=1 Byte 2 b0 b1 b2 b3 b4 b5 b6 X0: LSB of X data X1 X2 X3 X4 X5 Always=0 Byte 3 b0 b1 b2 b3 b4 b5 b6 Y0: LSB of Y data Y1 Y2 Y3 Y4 Y5 Always=0 Byte 4 b0 - 4 b5 b6 Always = 0 Middle Button Status 1=depressed Always=0 A Data Report is sent if motion is detected, or if buttons are pressed or released. Motion is reported relative to the last Report sent, in a Two’s Complement Form and eight (8) bit resolution. In other words, the Maximum Motion values are 128 to +127, saturated at min/max for faster speeds. Byte 4 is sent only if the middle button is pressed, held-down, or released. USAR Datasheet DOC7-DMP-DS-102 6 1 = depressed 1 = depressed USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications USAR Systems, Inc. HulaPointTM Sensor Dimensions USAR Datasheet DOC7-DMP-DS-102 7 USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications USAR Systems, Inc. HulaPointTM Evaluation Board Mechanical USAR Datasheet DOC7-DMP-DS-102 8 USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications USAR Systems, Inc. HulaPointTM Alternate Kit with Rubber Overlay Material USAR Datasheet DOC7-DMP-DS-102 9 2 C3 5 U2 1 .1uF VOLT_DET VCC 3 GND U1 VCC Q1 MOSFET_P Y1 C4 4.00MHz VCC GND .01uF GND DOC7-DMP-DS-102 JP1 R13 4 3 2 1 FFCC4 487 249k 249k R14 499k 487 499k R9 R10 R11 R12 D2A D2B 18 CHY CHX 1 17 PWR_ON RTS_IN 2 16 OSC1/IN SEROUT 3 15 OSC2/OUT RESET_IN 4 VSS(GND) 5 14 VDD(+V) 13 D/A_2 6 D/A_1 PS2DATA 7 11 D/A_0 RIGHT_SW 8 10 MIDDLE_SW LEFT_SW 9 3 1 1 MOSFET_P R1 R2 47 4.7k 47 4.7k R3 R4 C1 47pF UR7HCDMP-AKTA-DW GND 2 Q2 R8 100k PS2CLK 12 DUAL_SCHOTTKY_DIOD USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications Sample Schematic USAR Datasheet VCC VCC C2 47pF JP2 100k R17 R18 R19 680 680 680 D1B 1 JP3 R7 3 D1A NOT_MIDDLE_SW NOT_LEFT_SW NOT_RIGHT_SW 4 3 2 1 FFCC4 9 8 7 6 5 4 3 2 1 1 GND 2 L1 U3 VCC 10 C5 GND V S S 1 GND R5 R6 Q3 4.7k SH1 SH3 PNP C6 VCC 10uF 25V Q4 SH2 SH4 NPN GND SHIELD_CON USAR Systems, Inc. 10uF 53048_0910 12uH 680 TC55RP5002ECB713 3 VOUT VIN 2 GND CTS/PS2+5V TxD <<<< RI/PS2DATA DTR <<<< GND SHIELD DCD/PS2CLK RTS <<<< RxD >>>> USAR HulaCoderTM UR7HCDMP Mature mousecoderTM product specifications USAR Systems, Inc. Electrical Specifications for UR7HCDMP Absolute Maximum Ratings Ratings Supply Voltage Input Voltage Current Drain per Pin (not including Vss or Vdd) Operating Temperature UR7HCDMP-xx UR7HCDMP-Cxx Storage Temperature Range Ambient Temperature Under Bias Symbol Vdd Vin I Value 0 to 7.5 Vss -0.6 to Vdd +0.6 20 Unit V V mA Ta T low to T high 0 to +70 -40 to +85 -65 to +150 -55 to +125 °C Tstg Tbias DC Electrical Characteristics, Temperature range=T low to T high unless otherwise noted) Characteristic Symbol Min Typ Max Supply Voltage 3.0 5.0 6.0 Output Voltage Voh Vdd–0.1 Vol 0.1 Input High Voltage Vih 0.7xVdd Vdd Input Low Voltage Vil Vss 0.2xVdd Input Current Iin +/- 1 Internal Pull-up Current Ipup 50 250 500 Supply Current Vdd=0 Idd 2.0 3.5 Vdc+/-10%, Vss=0 °C °C Unit V V V V uA uA mA5. Control Timing (Vdd=5.0 Vdc +/-10%, Vss=0 Vdc, Temperature range=T low to T high unless otherwise noted) Characteristic Symbol Min Typ Max Unit Frequency of Operation fosc MHz Crystal Option 4.0 External Clock Option 4.0 USAR Datasheet DOC7-DMP-DS-102 11 Description For sales information and product literature, contact: USAR Systems, Inc. 568 Broadway New York, NY 10012 [email protected] http://www.usar.com Telephone 1 212 226 2042 Telefax 1 212 226 3215 In Japan: Mitsubishi Electronic Semiconductor Telephone +81 03 5403 0422 E-mail [email protected] Contact: Masatoshi Iida In Singapore: MetaTech Telephone +65 748 4844 E-mail [email protected] Contact: Mike Tiong In Taiwan: Koryo Electronics Co., Ltd. Telephone +886-2-2698-1143 E-mail [email protected] Contact: Alex Chen In Korea: Bong Woo Corporation Ltd. Tel : +82 2 285-0540~8 Email [email protected] Contact: I.C. Park Copyright 1999 USAR Systems, Inc. HulaCoderTM and HulaPoint TM are trademarks of USAR Systems, Inc. All other trademarks belong to their respective companies. INTELLECTUAL PROPERTY DISCLAIMER This specification is provided "as is" with no warranties whatsoever including any warranty of merchantability, fitness for any particular purpose, or any warranty otherwise arising out of any proposal, specification or sample. A license is hereby granted to reproduce and distribute this specification for internal use only. No other license, expressed or implied to any other intellectual property rights is granted or intended hereby. Authors of this specification disclaim any liability, including liability for infringement of proprietary rights, relating to the implementation of information in this specification. Authors of this specification also do not warrant or represent that