Cerulink.com
Company Product Engineering Services Project Methodology WiFi RFID Offering Knowledge Center
Cerulink Technologies

Home
   
HID Mouse Solution
 
 

HID Mouse Solution
Cerulink designed A low-power, battery-efficient, wireless optical sensor HID Bluetooth mouse compatible with Microsoft Windows XP SP1 Bluetooth stack.

Use Case Scenarios
The following scenarios describe the typical user experience when using the Bluetooth HID device with a Microsoft Windows Bluetooth host.

Device Initialization

  • The device always initializes in deep suspend mode
  • When the “Connect” button is pressed on the device, the device wakes up and it makes itself temporarily discoverable.

Initial Connection Between Host And HID Device

  • The user should press the “Connect” button on HID device to make it discoverable
  • Using the Microsoft XP stack, the user should inquire for HID device
  • Once found, the user should attempt to connect to the device
  • As part of the connection process, Microsoft XP may ask for a PIN number
  • If needed, the user should enter the PIN number for their device to complete a connection
  • Microsoft XP will install all necessary drivers from this point
  • The HID device must no longer be discoverable by other Bluetooth devices
    Device Sleep.
  • After a period of 30 seconds, the HID device should go into a power-down mode, in which the wireless connection is maintained
  • Either the Host or the device may initiate a wake-up procedure from this sleep mode
    Device Suspend
  • Following a period of 60 seconds of inactivity, the HID device should go into a deep suspend state
  • The Bluetooth wireless connection is not maintained in this suspend mode
  • Only the device may initiate a wake-up procedure via a button press or movement
  • The device should attempt re-connection to the previous Host as part of the wake-up process
  • No PIN number is required from the user for the re-connection process
    Pairing With A New Host
  • The user should press the “Connect” button to make the device discoverable
  • The device should un-pair the device and close any existing connections
  • There should be no noticeable difference to the end user in pairing with a Host, even if a previous pairing exists

Creating Bluetooth HID compatible mouse device
Milestone: One suggests a possible method of creating a Bluetooth Human Interface Device (HID) compatible mouse device quickly, without yet creating a profile to support HID. All requests from the PC required for basic Bluetooth HID operation to be handled. For the initial milestone, it should be sufficient for the board/device to handle the following:

  • Respond to PC inquiries with information stating that the board is an HID device
  • Allow a PC using the Microsoft HID stack to connect to the board
  • Respond to necessary HID requests from PC, e.g., GET_REPORT
  • Send mouse data from a serial mouse to the PC

    Milestone One would signify:
  • The class of device and service databases in the board are correctly handled
  • A connection can be completed using the Microsoft HID stack/drivers
  • Basic mouse functionality can be sent from the board to the PC correctly
 

Power saving module
This milestone requires the creation of a power-saving process.
The figure below illustrates a simple power-saving flow for a mouse.

 

HID profile implementation
This milestone covers the necessity of developing the HID operation as a profile.

A testing plan to validate the above message types should be developed and implemented. Following verification, this functionality should be encapsulated into an application-independent profile with an API following the specifications enumerated in the Bluetooth HID specification.

Integration and testing
This milestone focuses on integration of all milestones into a single source code base. After integration, the final result should be a functional, wireless, power-efficient, application-independent Bluetooth HID profile.

Application-specific code for mouse is developed handling the specific SOC. This is integrated with the HID profile and a full HID-compatible device is obtained.

   
  Copyright © Cerulink 2004 All rights reserved