background image

7

PS/2 Interface

The host driver determines the PS/2 mouse start up 
sequence. However, to enable all PS/2 mice, a few stan-
dard commands must be sent. must be sent in order to 
enable all PS/2 mice. The mouse is the clock master on 
this bus. The host must request the mouse to clock data 
into itself.

1. Device Plug-in

When a PS/2 mouse is fi rst connected to the bus, it is 
powered and is running the system’s firmware. PS/2 
communications generally begin with the host sending 
a RESET command to the mouse. The mouse will not 
report button, wheel, or movement back to the host until 
the ENABLE command is sent. The start-up sequence is 
dependant on the operating system the mouse is hooked 
up to.

USB Interface

All USB Human Interface Device (HID) class applications 
follow the same USB start-up procedure. The procedure 
is as follows:

1.  Device Plug-in

When a USB device is fi rst connected to the bus, it is 
powered and running fi rmware, but communications on 
the USB remain non-functional until the host has issued 
a USB bus reset.

2.  Bus Reset

The pull-up resistor on D– notifi es the hub that a low 
speed (1.5 Mbps) device has just been connected. The 
host recognizes the presence of a new USB device and 
initiates a bus reset to that device.

3. Enumeration

The host initiates SETUP transactions that reveal general 
and device specifi c information about the mouse. When 
the description is received, the host assigns a new and 
unique USB address to the mouse. The mouse begins 
to respond, communicating with the newly assigned 
address, while the host continues to ask for information 
such as the device description, confi guration description 
and HID report description. Using the returned informa-
tion from the mouse, the host now knows the number of 
data endpoints supported by the mouse (2). At this point, 
the process of enumeration is completed.

Note 1:  
idVendor should be changed to the value as supplied by 
the USB-IF

Note 2:  
idProduct should be assigned for specifi c product.

Note 3:  
MaxPower value should be changed as per specifi c circuit’s 
current draw.

4. Post Enumeration Operation

Once communication between the host and mouse is 
established, the mouse now has the task of sending and 
receiving data on the control and data endpoints. In this 
case, when the host confi gures endpoint 1, the mouse 
starts to transmit button and motion data back to the 
host when there is data to send. At any time, the periph-
eral may be reset or reconfi gured by the host.

USB Requests – Endpoint 0

Endpoint 0 acts as the control endpoint for the host. 
On power-up, endpoint 0 is the default communication 
channel for all USB devices. The host initiates Control-
Read and Control-Write (see Chapter 8 of the USB speci-
fi cation) to determine the device type, as well as how 
to confi gure communications with the device. In this 
particular design, only Control-Read transactions are re-
quired to enumerate a mouse. For a list of valid requests 
see Chapter 9 of the USBG specifi cation. In addition to the 
standard “Chapter 9” requests, a mouse must also support 
all valid HID class requests for a mouse. 

USB Requests – Endpoint 1

Endpoint 1 is the data transfer communications channel 
for mouse button, wheel, and movement information. Re-
quests to this endpoint are not recognized until the host 
confi gures endpoint 1. Once this endpoint is enabled, 
then interrupt IN requests are sent from the host to the 
mouse to gather mouse data. When the mouse is left idle 
(i.e. no movement, no new button click, no wheel move-
ment) the fi rmware will NAK requests to this endpoint. 
Data is only reported when there is a status change 
within the mouse. Two HID report formats are used in this 
design. The boot protocol, as defi ned by the HID specifi -
cation, is the default report protocol that all USB enabled 
systems understands. The boot protocol has a three-byte 
format, and  does not report wheel information. The HID 
report descriptor  defi nes the report protocol format. This 
format is four bytes and is the same as the report format 
with the exception of the fourth byte, which is the wheel 
information. Appendix F of this document lists the USB 
Data Reporting Format.

Summary of Contents for ADNK-3083

Page 1: ...load a full array of pixel values from a single frame To learn more about sensor s technical information please visit the Avago web site at http www semiconductor Avago com Introduction This design gu...

Page 2: ...D and Optical Encoder combination Mouse Buttons Mouse buttons are connected as standard switches These switches are pulled up by the pull up resistors inside the microcontroller When the user presses...

Page 3: ...0 asm listing The following statements are the pin definitions as they exist today The firmware will use these definitions to read and configure the GPIO pins without any other modifications Communica...

Page 4: ...in Figure 3 below ADNK 3083 Designer s Kit Optical Mouse The ADNK 3083 optical mouse unit allows users to evaluate the performance of the Avago s Optical Tracking Engine sensor lens LED assembly clip...

Page 5: ...r IGES drawing Sensor Lens Object Surface 2 40 0 094 To Disassemble the ADNK 3083 Unit The ADNK 3083 comprises of the plastic mouse casing printed circuit board PCB lens buttons and USB cable See Figu...

Page 6: ...lopment Kit and the CY3654 P05 Personality Board Programming support and programmer adaptors for the Cypress CY7C63743 PXC can be found through Cypress CY3649 xxxV CY3083 SC28 CY3083 08 or through mos...

Page 7: ...c product Note 3 MaxPower value should be changed as per specific circuit s current draw 4 Post Enumeration Operation Once communication between the host and mouse is established the mouse now has the...

Page 8: ...D sampled high disable the USB connect resistor and Delay 100 S If D and D are both 0 detect a USB interface else detect a PS2 interface SPIInit This routine is called in the try_download to enable t...

Page 9: ...ep0InReceived This routine is entered whenever an IN packet is received on endpoint 0 ep0OutReceived This routine is entered whenever an OUT packet is received on endpoint 0 setDeviceConfiguration Thi...

Page 10: ...l Map DualMain GetMouseType USB Main PS2 Interface System Initialization USB Initialization USBTaskLoop ProcessButtons ProcessOptics ReadMotionReg ReadDeltaX ReadDeltaY Read ZWheel Load new mouse pack...

Page 11: ...mand from the host The PS 2 mode is then set to remote mode PS2SetWrapMode This routine is called in response to a SET WRAP MODE command from the host It then sets the mouse mode to wrap mode See the...

Page 12: ...es and jumps to usbMain for the USB initialization Dual1msTimer This ISR reads the current status of the buttons Therefore every one millisecond the button state is updated the button status informati...

Page 13: ...sePacket HostRequestToSend PS2Receive GetBit send0 ReadMotionReg PS2SendResponseByte PS2Send Send_1 Send_0 ResetInterval PS2SetScaling SetWrapMode SetDefault PS2StatusRequest SetRemoteMode CheckWheel...

Page 14: ...ons L M QA QB Vcc GND V DD 19 16 GND 1K REFB 14 P0 3 7 NPD 4 P0 7 3 SCLK 21 P0 6 2 MISO 22 9 GUARD NC NC 11 18 20 P1 1 R 20 K 20 K 1 NCS LP2950ACZ 3 3 3 1 2 Vo Vin GND 4 7 F 0 1 F 0 1 F MMBT2222A 13 R...

Page 15: ...S 1 R16 Chip resistor 20K 1 0805_CUS 2 R8 R10 Chip resistor 240R 1 0805_CUS 1 R4 Resonator 24MHz XTAL4 1 X1 Transistor 2N2222 TO92C 1 Q3 Ceramic cap 2 2uF 16V 1206 1 C5 Tant cap 4 7uF 16V 1206 2 C2 C4...

Page 16: ...16 Figure C1 PCB Schematic Bottom Layer Figure C2 PCB Schematic Top Overlay Appendix C PCB Layout HLMP EG3E Figure C3 PCB Schematic Bottom Overlay...

Page 17: ...tional view of PCB assembly highlighting all optical mouse components optical mouse sensor clip lens LED PCB and base plate Clip LED PCB Sensor Lens Light Pipe Surface Base Plate Appendix D Base Plate...

Page 18: ...e Command Action 0xFF Reset Resets mouse to default states 0xFE Resend Resends last data to host 0xF6 Set Default Sets mouse to use default parameters 0xF5 Disable Disables the mouse 0xF4 Enable Enabl...

Page 19: ...dicate that this is a Microsoft compatible three button wheel mouse the wheel report format is enabled After this initialization sequence the PS 2 wheel reporting format is enabled The fourth byte rep...

Page 20: ...ADNS 2220 001 Assembly Clip Data Sheet d HLMP EG3E xxxxx Red LED Data Sheet Hardware Support Files a ADNK 3083 BOM List b ADNK 3083 Schematic c 3D Model IGES Files d Gerber File Software Support Files...

Reviews: