Methods and systems for adjusting user input device scroll wheel tactile sensations

The scroll wheel assembly with a gradient pattern and elastic member addresses the fixed feedback issue by allowing adjustable tactile feedback, improving user experience across various applications.

WO2025165364A1PCT designated stage Publication Date: 2025-08-07GN HEARING AS

Patent Information

Application Number
PCT/US2024/014003
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-01
Publication Date
2025-08-07

AI Technical Summary

Technical Problem

Existing computer mouse scroll wheels provide fixed tactile feedback, which may not suit all user needs, particularly in different applications such as document navigation and gaming, where varying levels of feedback intensity are desirable.

Method used

A scroll wheel assembly with a gradient geometric pattern and a shiftable elastic member allows for adjustable tactile feedback, enabling users to switch between weak and strong click feelings based on application needs.

Benefits of technology

Enables flexible adjustment of tactile feedback, enhancing user experience by providing appropriate feedback intensity for different tasks, such as seamless document navigation and heightened awareness in gaming.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2024014003_07082025_PF_FP_ABST
    Figure US2024014003_07082025_PF_FP_ABST
Patent Text Reader

Abstract

Aspects of the subject disclosure may include, for example, an apparatus that includes a scroll wheel having a contact portion, and an elastic member having an engagement portion, the contact portion being configured with a gradient pattern, the elastic member being linearly displaceable relative to the scroll wheel such that, in different positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to a level of tactile feedback that is provided during rotation of the scroll wheel. Other embodiments are disclosed.
Need to check novelty before this filing date? Find Prior Art

Description

METHODS AND SYSTEMS FOR ADJUSTING USER INPUT DEVICESCROLL WHEEL TACTILE SENSATIONSFIELD OF THE DISCLOSURE

[0001] The present disclosure relates generally to methods and systems for adjusting user input device scroll wheel tactile sensations.BACKGROUND

[0002] Computer mouse designs typically include a scroll wheel for users to scroll or control movement of displayed content, such as documents or web pages. Certain designs have “steps” in the turning cycles of the wheel (i.e., detents on turning), with each step providing the user with tactile feedback (a “click feeling”). This makes the user aware of the individual forward / backward movements in the scrolling, which can aid the user during use of the wheel.BRIEF DESCRIPTION OF THE DRAWINGS

[0003] Reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:

[0004] FIG. 1 depicts an illustrative embodiment of a Graphical User Interface (GUI) generated by an Accessory Management Software (AMS) application according to the present disclosure;

[0005] FIGs. 2 and 3 depict illustrative embodiments for communicatively coupling a controller to a computing device;

[0006] FIG. 4 depicts an illustrative embodiment of a communication device;

[0007] FIG. 5 depicts an illustrative embodiment of a first method utilized in the subject disclosure;

[0008] FIG. 6 depicts an illustrative embodiment of a second method utilized in the subject disclosure;

[0009] FIG. 7A depicts an illustrative embodiment of a third method utilized in the subject disclosure;

[0010] FIG. 7B depicts an illustrative embodiment of a system operating at least in part according to one or more of the methods of FIGs. 5, 6, and 7A;

[0011] FIG. 7C depicts an illustrative embodiment of a communication flow diagram;

[0012] FIG. 8A is perspective view of an example, non-limiting embodiment of a scroll wheel assembly of a user input device in one operating state, in accordance with various aspects described herein;

[0013] FIG. 8B is another perspective view of the scroll wheel assembly of FIG. 8A in another operating state, in accordance with various aspects described herein;

[0014] FIG. 8C is an exploded view of the scroll wheel assembly of FIG. 8A, in accordance with various aspects described herein;

[0015] FIGs. 8D to 8H are various other views of the scroll wheel assembly of FIG. 8A;

[0016] FIG. 81 is a cross-sectional view of the scroll wheel assembly of FIG. 8A, in accordance with various aspects described herein;

[0017] FIG. 8J is another cross-sectional view of the scroll wheel assembly of FIG.8A, in accordance with various aspects described herein;

[0018] FIG. 8K is a cross-sectional view of a scroll wheel in accordance with various aspects described herein;

[0019] FIGs. 8L and 8M are various bottom perspective views of the user input device of FIG. 8A, illustrating different lever positions for selecting different operating states of the scroll wheel assembly, in accordance with various aspects described herein;

[0020] FIG. 8N depicts a non-limiting example alternative elastic member in accordance with various aspects described herein;

[0021] FIG. 80 shows side and top down views of a scroll wheel in accordance with various aspects described herein;

[0022] FIG. 9A depicts an illustrative embodiment of a fourth method utilized in the subject disclosure;

[0023] FIG. 9B depicts an illustrative embodiment of a fifth method utilized in the subject disclosure; and

[0024] FIG. 10 depicts an illustrative diagrammatic representation of a machine in the form of a computer system within which a set of instructions, when executed, may cause the machine to perform any one or more of the methodologies disclosed herein.DETAILED DESCRIPTION

[0025] While a mouse scroll wheel is typically used for navigating documents and the like, it is also widely used for gaming. For instance, in various computer games, the scroll wheel can be used to flip through or change weapons or other game-related objects, where each step in the scrolling may trigger the switch. Users often rely on tactile feedback from the scrolling steps to alert them of their actions during gameplay.

[0026] The subject disclosure describes, among other things, illustrative embodiments of a scroll wheel assembly that allows for adjustments to the tactile feedback or effect that a scroll wheel provides during scrolling. The scroll wheel assembly may be employed in a user input device, such as a mouse, a keyboard (e.g., as part of a keypad), a game controller, etc. In exemplary embodiments, the scroll wheel is defined with a gradient geometric pattern that is engageable with a shiftable or slidable elastic member (e.g., metal spring, rubber component, etc.). As described in more detail below, when a user scrolls the wheel while the elastic member is in one contact position with the wheel pattern (i.e., at an inner part of the wheel closer to the center of the wheel), the elastic member slides over the surface of the pattern to generate a first level of click feeling that is relatively weaker or less intense. In contrast, when a user scroll the wheel while the elastic member is in another contact position with the wheel pattern (i.e., at an outer part of the wheel closer to the outer circumference of the wheel), the elastic member slides over the surface of the pattern to generate a second level of click feeling that is relatively stronger or more intense.

[0027] Implementing a scroll wheel using a gradient contact wheel pattern in combination with a slideable engagement member (e.g., spring), as described herein, advantageously allows for stepless adjustments of the tactile feedback (or click feel) of the scroll wheel. With this mechanism, a user can easily switch the slider position tochoose a desired level of feedback “bumping” force during scrolling. Being able to adjust the feedback level is useful since the desired level of feedback may be different depending on the application. For instance, a user may prefer to experience weaker tactile feedback when scrolling through a document or a web page so that the user can navigate through these items quickly and seamlessly. In contrast, a user may prefer to experience stronger tactile feedback when flipping through weapons in a game so that the user is better aware of weapon switching and selection. Embodiments of the scroll wheel assembly thus allow users to flexibly adjust (e.g., mouse) scrolling effects, which improves overall user experience. It will be understood and appreciated that, while exemplary embodiments of the scroll wheel assembly provide for stepless adjustments, in certain alternative embodiments, the scroll wheel assembly may be configured to provide for stepped adjustments of the tactile feedback (or click feel) of the scroll wheel.

[0028] One or more aspects of the subject disclosure include an apparatus. The apparatus may include a scroll wheel having a contact portion, the contact portion being configured with a gradient pattern. The apparatus may further include an elastic member having an engagement portion, the elastic member being linearly displaceable relative to the scroll wheel such that, in different positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to a level of tactile feedback that is provided during rotation of the scroll wheel.

[0029] One or more aspects of the subject disclosure include a non-transitory machine-readable storage medium, comprising instructions, wherein responsive to executing the instructions, a processor performs operations. The operations may include receiving a user instruction to adjust a level of tactile feedback that is provided during rotation of a scroll wheel of a user input device. The operations may also include, responsive to the receiving, transmitting one or more commands to a control unit in the user input device, wherein the scroll wheel has a contact portion that is configured with a gradient pattern, wherein the user input device includes an elastic member having an engagement portion, wherein the control unit is configured to cause the elastic member to linearly displace relative to the scroll wheel in accordance withthe one or more commands, and wherein, in different positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to the level of tactile feedback.

[0030] One or more aspects of the subject disclosure include a method. The method may include receiving, by an elastic member residing in a user input device, one or more forces. The method may also include linearly shifting, by the elastic member, from a first position of a plurality of positions of the elastic member to a second position of the plurality of positions, wherein the user input device includes a scroll wheel having a contact portion that is configured with a gradient pattern, wherein the elastic member has an engagement portion, and wherein the elastic member is linearly shiftable relative to the scroll wheel such that, in the plurality of positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to a level of tactile feedback that is provided during rotation of the scroll wheel.

[0031] Other embodiments are described in the subject disclosure.

[0032] FIG. 1 depicts an illustrative embodiment of a Graphical User Interface (GUI) generated by an Accessory Management Software (AMS) application according to the present disclosure. The AMS application can be executed by a computing device such as a desktop computer, a laptop computer, a tablet, a server, a mainframe computer, a gaming console, a gaming accessory, or any combination or portions thereof. The AMS application can also be executed by portable computing devices such as a cellular phone, a personal digital assistant, or a media player. The AMS application can be executed by any device with suitable computing and communication resources.

[0033] FIG. 2 illustrates a number of embodiments for utilizing a controller in the form of a gaming controller 115 with a computing device in the form of a gaming console 206. In the illustration of FIG. 2, the gaming controller 115 can be communicatively coupled to the gaming console 206 with a tethered cable interface 202 such as a USB or proprietary cable, or a wireless interface 204 such as WiFi, Bluetooth, ZigBee, or a proprietary wireless communications protocol. The cable interface 202 provides a means for communication that may be less susceptible to electromagneticinterference. It will be appreciated that the controller may further include a headset 114 (with or without a microphone not shown) utilized by a gamer to communicate with teammates and / or to listen to game sounds in high fidelity. In the illustration of FIG. 2, the AMS application can in whole or in part be executed by the gaming controller 115, the gaming console 206, or a combination thereof.

[0034] FIG. 3 illustrates a number of other embodiments for utilizing a controller with a computing device. In this embodiment, the controller comprises a mouse 110 and the computing device comprises a computer 208. The mouse 110 can be tethered to the computer 208 by a cable interface 202 (e.g., USB cable or proprietary cable) or a wireless interface 204. The cable interface 202 provides a means for communication that may be less susceptible to electromagnetic interference. It will be appreciated that the controller may further include a headset 114 (with or without a microphone not shown) utilized by a gamer to communicate with teammates and / or to listen to game sounds in high fidelity. In the illustration of FIG. 3, the AMS application can in whole or in part be executed by the mouse 110, the computer 208, or a combination thereof.

[0035] For illustration purposes, the terms gaming console and computer will be used hence forth interchangeably with the term computing device with an understanding that a computing device may represent a number of other devices such as a server, a tablet, a smart phone, and so on. Accordingly, the gaming console 206 and / or the computer 208 can represent any device with suitable computing resources to perform the methods described in the subject disclosure.

[0036] FIG. 4 depicts an illustrative embodiment of a communication device 400. Communication device 400 can serve in whole or in part as an illustrative embodiment of devices described in the subject disclosure. For example, the communication device 400 may facilitate adjusting of scroll wheel tactile sensations. The communication device 400 can comprise a wireline and / or wireless transceiver 402 (herein transceiver 402), a user interface (UI) 404, a power supply 414, a proximity sensor 416, a motion sensor 418, an orientation sensor 420, and a controller 406 for managing operations thereof. The transceiver 402 can support short-range or long-range wireless access technologies such as Bluetooth, WiFi, Digital Enhanced Cordless Telecommunications (DECT), or cellular communication technologies, just to mention a few. Cellulartechnologies can include, for example, CDMA-1X, UMTS / HSDPA, GSM / GPRS, TDMA / EDGE, EV / DO, WiMAX, software defined radio (SDR), Long Term Evolution (LTE), as well as other next generation wireless communication technologies as they arise. The transceiver 402 can also be adapted to support circuit-switched wireline access technologies (such as PSTN), packet-switched wireline access technologies (such as TCP / IP, VoIP, etc.), and combinations thereof.

[0037] The UI 404 can include a depressible or touch-sensitive keypad 408 coupled to a navigation mechanism such as a roller ball, a joystick, a mouse, a keyboard, or a navigation disk for manipulating operations of the communication device 400. In a case where the UI 404 includes a keyboard, the keypad 408 may provide keys and / or one or more scroll wheel assemblies (as may be described elsewhere herein) of the keyboard. In a case where the UI 404 includes a mouse, the keypad 408 may alternatively represent button(s) (e.g., left / right / middle button(s)) and / or one or more scroll wheel assemblies (as may be described elsewhere herein) of the mouse. The keypad 408 can be an integral part of a housing assembly of the communication device 400 or an independent device operably coupled thereto by a tethered wireline interface (such as a USB cable) or a wireless interface supporting for example Bluetooth. The keypad 408 can represent a numeric keypad, and / or a QWERTY keypad with alphanumeric keys. The UI 404 can further include a display 410 such as monochrome or color LCD (Liquid Crystal Display), OLED (Organic Light Emitting Diode) or other suitable display technology for conveying images to an end user of the communication device 400.

[0038] In an embodiment where the display 410 utilizes touch-sensitive technology, a portion or all of the keypad 408 can be presented by way of the display 410 with navigation features. As a touch screen display, the communication device 400 can be adapted to present a user interface with graphical user interface (GUI) elements that can be selected by a user with a touch of a finger. The touch screen display 410 can be equipped with capacitive, resistive or other forms of sensing technology to detect how much surface area of a user’s finger has been placed on a portion of the touch screen display. This sensing information can be used to control the manipulation of the GUI elements.

[0039] The UI 404 can also include an audio system 412 that utilizes common audio technology for conveying low volume audio (such as audio heard only in the proximity of a human ear) and high-volume audio (such as speakerphone for hands free operation, stereo or surround sound system). The audio system 412 can further include a microphone for receiving audible signals of an end user. The audio system 412 can also be used for voice recognition applications. The UI 404 can further include an image sensor 413 such as a charged coupled device (CCD) camera for capturing still or moving images and performing image recognition therefrom.

[0040] The power supply 414 can utilize common power management technologies such as replaceable or rechargeable batteries, supply regulation technologies, and charging system technologies for supplying energy to the components of the communication device 400 to facilitate long-range or short-range portable applications. Alternatively, the charging system can utilize external power sources such as DC power supplied over a physical interface such as a USB port or by way of a power cord attached to a transformer that converts AC to DC power.

[0041] The proximity sensor 416 can utilize proximity sensing technology such as an electromagnetic sensor, a capacitive sensor, an inductive sensor, an image sensor or combinations thereof. The motion sensor 418 can utilize motion sensing technology such as an accelerometer, a gyroscope, or other suitable motion sensing technology to detect movement of the communication device 400 in three-dimensional space. The orientation sensor 420 can utilize orientation sensing technology such as a magnetometer to detect the orientation of the communication device 400 (North, South, West, East, combined orientations thereof in degrees, minutes, or other suitable orientation metrics).

[0042] The communication device 400 can use the transceiver 402 to also determine a proximity to a cellular, WiFi, Bluetooth, or other wireless access points by common sensing techniques such as utilizing a received signal strength indicator (RS SI) and / or a signal time of arrival (TOA) or time of flight (TOF). The controller 406 can utilize computing technologies such as a microprocessor, a digital signal processor (DSP), and / or a video processor with associated storage memory such as Flash, ROM, RAM, SRAM, DRAM or other storage technologies.

[0043] The communication device 400 as described herein can operate with more or less components described in FIG. 4 to accommodate the implementation of devices described by the subject disclosure. These variant embodiments are contemplated by the subject disclosure.

[0044] FIGs. 5, 6, and 7A respectively depict methods 500, 600, and 700 describing illustrative embodiments of the AMS application. Method 500 can begin with step 502 in which the AMS application is invoked in a computing device. The computing device can be a remote server (not shown), the gaming console 206 or computer 208 of FIGs. 2 and 3, or any other computing device with suitable computing resources. The invocation step can result from a user selection of the AMS application from a menu or iconic symbol presented by the computing device, or when a user communicatively couples a gaming controller 115 or other form of accessory device with the computing device. In step 504, the AMS application can detect by way of software drivers in an operating system (OS) of the computing device a plurality of operationally distinct accessories communicatively coupled to the computing device. The accessories can be coupled to the computing device by a tethered interface (e.g., USB cable), a wireless interface (e.g., Bluetooth or Wireless Fidelity — WiFi), or combinations thereof.

[0045] In the present context, an accessory can represent any type of device which can be communicatively coupled to the computing device (or which can be an integral part of the computing device) and which can control aspects ofthe OS and / or a software application operating from the computing device. An accessory can represent for example a keyboard, a touch screen display, a gaming pad, a gaming controller, a mouse, a joystick, a microphone, or a headset with a microphone — just to mention a few.

[0046] In step 506, the AMS application presents a GUI (e.g., the GUI 101 depicted in FIG. 1) that shows operationally distinct accessories, such as a keyboard 108, a gaming controller 115, etc. The GUI 101 presents the accessories 108-116 in a scrollable section 117. One or more accessories can be selected by a user with a mouse pointer. In this illustration, the keyboard 108 and the gaming controller 115 were selected for customization. Upon selecting the keyboard 108 and the gaming controller115 from the scrollable window of section 117, the AMS application presents the keyboard 108 and the gaming controller 115 in split windows 118, 120, respectively, to assist the user during the customization process.

[0047] In step 508, the AMS application can be programmed to detect a userselection of a particular software application such as a video game. This step can be the result of the user entering in a Quick Search field 160 the name of a gaming application (e.g., World of Warcraft™ or WoW) or any other application (e.g., a word processing application, a web browsing application, etc.). Assume that the user selects a gaming application. In this case, upon identifying the gaming application, the AMS application can retrieve in step 510 from a remote or local database gaming application actions which can be presented in a scrollable section 139 of the GUI represented as “Actions” 130. The actions can be tactical actions 132, communication actions 134, menu actions 136, and movement actions 138 which can be used to invoke and manage features of the gaming application.

[0048] The actions presented descriptively in section 130 of the GUI can represent a sequence of accessory input functions which a user can stimulate by button depressions, navigation or speech. For example, depressing the left button on the mouse 110 can represent the tactical action “Reload”, while the simultaneous keyboard depressions “Ctrl A” can represent the tactical action “Melee Attack”. For ease of use, the “Actions” 130 section of the GUI is presented descriptively rather than by a description of the input function(s) of a particular accessory.

[0049] Any one of the Actions 130 can be associated with one or more input functions of the accessories being customized in windows 118 and 120 by way of a drag and drop action or other customization options. For instance, a user can select a “Melee Attack” by placing a mouse pointer 133 over an iconic symbol associated with this action. Upon doing so, the symbol can be highlighted to indicate to the user that the icon is selectable. At this point, the user can select the icon by holding the left mouse button and drag the symbol to any of the input functions (e.g., buttons) of the keyboard 108 or selectable options of the gaming controller 115 to make an association with an input function of one of these accessories. Actions of one accessory can also be associated with another accessory that is of a different category. For example, keydepressions “Ctrl A” of the keyboard 108 can be associated with one of the buttons of the gaming controller 115 (e.g., the left button 1 19).

[0050] In one embodiment, a Melee Attack action can be associated by dragging this action to either the left button 119 or right button 121 of the gaming controller 115. Thus, when the selected button is depressed, the stimulus signal that is generated by the selected button of the gaming controller 115 can be substituted by the AMS application with the Melee Attack action. In another embodiment, the AMS application can be configured so that the Melee Action can be associated with a combination of key button presses (e.g., simultaneous depression of the left and right buttons 119, 121, or a sequence of button depressions: two rapid left button depressions followed by a right button depression).

[0051] In yet another embodiment, the AMS application can be configured so that the Melee Action can be associated with movement of the gaming controller 115 such as, for example, rapid movement or shaking of the gaming controller 115. In a further embodiment, the AMS application can be adapted to make associations with two dimensional or three-dimensional movements of the gaming controller 115 according to a gaming venue state. For example, suppose the player’s avatar enters a fighter jet. In this gaming venue state, moving the left navigation knob forward can be associated by the AMS application with controlling the throttle of the jet engines. Rapidly moving the gaming controller 115 downward can represent release of munitions such as a bomb.

[0052] In a gaming venue state where the gamer’s avatar has entered a building, lifting of the gaming controller 115 above a first displacement threshold can be associated with a rapid movement of the avatar up one floor. A second displacement threshold can be associated with a rapid movement of the avatar down one floor — the opposite of the first displacement threshold. Alternatively, the second displacement threshold could be associated with a different action such as jumping between buildings when the avatar is on the roof of a building.

[0053] The AMS application can monitor gaming venue states by analyzing captured images produced by the gaming application (e.g., one or more still images of a tank, or a video of an avatar entering a tank), and / or by receiving messages from the gaming application by way of an application programming interface (API) therebyenabling the AMS application to identify the occurrence of a particular gaming venue state.

[0054] At step 512 the AMS application can also respond to a user selection of a profile. A profile can be a device profile or master profile invoked by selecting GUI button 156 or 158, each of which can identify the association of gaming actions with input functions of one or more accessories. If a profile selection is detected in step 512, the AMS application can retrieve in step 514 macro(s) and / or prior associations defined by the profile. The actions and / or macros defined in the profile can also be presented in step 516 by the AMS application in the actions column 130 of the GUI 101 to modify existing profile associations or create new associations.

[0055] In step 518, the AMS application can also respond to a user selection to create a macro. A macro in the present context can mean any actionable command which can be recorded by the AMS application. An actionable command can represent a sequence of stimuli generated by manipulating input functions of an accessory, a combination of actions in the Action section 130, an identification of a software application to be initiated by the OS of the computing device, or any other recordable stimulus to initiate, control or manipulate software applications. For instance, a macro can represent a user entering the identity of a software application (e.g., instant messaging tool) to be initiated by the OS upon the AMS application detecting a speech command using speech recognition technology.

[0056] A macro can also represent recordable speech delivered by a microphone singly or in combination with a headset for detection by another software application through speech recognition or for delivery of the recorded speech to other parties. In yet another embodiment a macro can represent recordable navigation of an accessory such as a joystick of the gaming controller 115, recordable selections of buttons of the gaming controller 115, and so on. Macros can also be combinations of the above illustrations with selected actions from the Actions 130 menu. Macros can be created from the GUI 101 by selecting a “Record Macro” button 148. The macro can be given a name and category in user-defined fields 140 and 142.

[0057] Upon selecting the Record Macro button 148, a macro can be generated by selection of input functions on an accessory (e.g., Ctrl A, speech, navigation knobmovements of the gaming controller 115, etc.) and / or by manual entry in field 144 (e.g., typing the name and location of a software application to be initiated by an OS, such as an instant messaging application, keyboard entries such as Ctrl A, etc.). Once the macro is created, it can be tested by selecting button 150 which can repeat the sequence specified in field 144. The clone button 152 can be selected to replicate the macro sequence if desired. Fields 153 can also present timing characteristics of the stimulation sequence in the macro with the ability to modify and thereby customize the timing of one or more stimulations in the stimulation sequence. Once the macro has been fully defined, selection of button 154 records the macro in step 520. The recording step can be combined with a step for adding the macro to the associable items Actions column 130, thereby providing the user the means to associate the macro with input functions of the accessories (e.g., one or more keys of the keyboard 108, buttons of the gaming controller 115, etc.).

[0058] In step 522, the AMS application can respond to drag and drop associations of actions with input functions of the keyboard 108 or the gaming controller 115. Associations can also be made based on the two or three dimensional movements of the gaming controller 115. If user input indicates that a user is performing an association, the AMS application can proceed to step 524 where it can determine if a profile has been identified in step 512 to record the association(s) detected. If a profile has been identified, the associations are recorded / stored in the profile in step 526. If a profile has not been identified in step 512, the AMS application can create a profile in step 528 for recording the detected associations. In the same step, the user can name the newly created profile as desired. The newly created profile can also be associated with one or more gaming software applications in step 530 for future reference. The AMS application can also record in a profile in step 526 associations based on gaming venue states. In this embodiment the same stimuli generated by the gaming controller 115 can result in different substitutions based on the gaming venue state detected by the AMS application.

[0059] Referring back to step 526, once the associations have been recorded in a profile, the AMS application can determine in step 532 which of the accessories shown illustratively in FIGs. 1 to 3 are programmable and available for programming. If theAMS application detects that an accessory (e.g., keyboard 108, gaming controller 115) is communicatively coupled to the computing device and determines that the accessory is capable of performing stimulus substitutions locally, the AMS application can proceed to step 534 of FIG. 5 where it submits the profile and its contents for storage in the accessory (e.g., the gaming controller 115 in FIGs. 2 and 3). Once the accessory (e.g., the gaming controller 115) is programmed with the profile, the accessory can perform stimuli substitutions according to the associations recorded by the AMS application in the profile. Alternatively, the AMS application can store the profile in the computing device(s) of FIGs. 2 and 3 and perform substitutions of stimuli supplied by the gaming controller 115 according to associations recorded in the profile by the AMS application.

[0060] The GUI 101 of FIG. 1 presented by the AMS application can have other functions. For example, the GUI 101 can present a layout of the accessory (button 122), how the accessory is illuminated when associations between input functions and actions are made (button 124), and configuration options for the accessory (button 126). The AMS application can adapt the GUI 101 to present more than one functional GUI page. For instance, by selecting button 102, the AMS application can adapt the GUI 101 to present a means to create macros and associate actions to accessory input functions as depicted in FIG. 1. Selecting button 104 can cause the AMS application to adapt the GUI 101 to present statistics from stimulation information and / or gaming action results captured by the AMS application as described in the subject disclosure. Selecting button 106 can also cause the AMS application to adapt the GUI 101 to present promotional offers and software updates.

[0061] The steps of method 500 in whole or in part can be repeated until a desirable pattern is achieved of associations between stimulus signals generated by accessories and substitute stimuli. It would be apparent to an artisan with ordinary skill in the art that there can be numerous other approaches to accomplish the embodiments described by method 500 or variants thereof. These undisclosed approaches are contemplated by the subject disclosure.

[0062] FIG. 6 depicts a method 600 for illustrating additional operations of the AMS application. In the configurations of FIGs. 2 and 3, the AMS application can beoperating in whole or in part from the gaming controller 115, a gaming console 206, a computer 208, or a remote server (not shown). For illustration purposes, it is assumed the AMS application operates from the gaming console 206. Method 600 can begin with the AMS application establishing communications in steps 602 and 604 between the gaming console 206 and a gaming accessory such as the gaming controller 115, and a headset 114 such as shown in FIG. 1. These steps can represent for example a user starting the AMS application from the gaming console 206 and / or the user inserting at a USB port of the gaming console 206 a connector of a USB cable tethered to the gaming controller 115, which invokes the AMS application. In step 606, the gaming controller 115 and / or headset 114 can in turn provide the AMS application one or more accessory ID’s, or the user can provide by way of a keyboard or the gaming controller 115 user identification. With the accessory ID’ s or user input, the AMS application can identify in step 608 a user account associated with the gaming controller 115 and / or headset 114. In step 610, the AMS application can retrieve one or more profiles associated with the user account.

[0063] In step 612, the user can be presented by way of a display coupled to the gaming console 206 profiles available to the user to choose from. If the user makes a selection, the AMS application proceeds to step 614 where it retrieves from the selected profiles the association(s) stored therein. If a selection is not made, the AMS application can proceed to step 616 where it can determine whether a software gaming application (e.g., video game) is operating from the gaming console 206 or whether the gaming console 206 is communicating with the software gaming application by way of a remote system communicatively coupled to the gaming console 206 (e.g., on-line gaming server(s) presenting, for example, World of Warcraft™). If a gaming software application is detected, the AMS application proceeds to step 617 where it retrieves a profile that matches the gaming application detected and the association(s) contained in the profile. As noted earlier, association(s) can represent accessory stimulations, navigation, speech, the invocation of other software applications, macros or other suitable associations that result in substitute stimulations. The accessory stimulations can be stimulations that are generated by the gaming controller 115, as well as stimulations from other accessories (e.g., headset 114), or combinations thereof.

[0064] Once a profile and its contents have been retrieved in either of steps 614 or step 617, the AMS application can proceed to step 719 of FIG. 7A where it monitors for a change in a gaming venue state based on the presentations made by the gaming application, or API messages supplied by the gaming application. At the start of a game, for example, the gaming venue state can be determined immediately depending on the gaming options chosen by the gamer. The AMS application can determine the gaming venue state by tracking the gaming options chosen by a gamer, receiving an API instruction from the gaming application, or by performing image processing on the video presentation generated by the gaming application. For example, the AMS application can detect that the gamer has directed an avatar to enter a tank. The AMS application can retrieve in step 719 associations for the gaming controller 115 for controlling the tank.

[0065] The AMS application can process movements of the gaming controller 115 forwards, backwards, or sideways in two or three dimensions to control the tanks movement. Similarly, rotating the gaming controller 115 or tilting the gaming controller 115 forward can cause an accelerometer, gyro or magnetometer of the gaming controller 115 to provide navigational data to the AMS application which can be substituted with an action to cause the tank to turn and / or move forward. The profile retrieved by the AMS application can indicate that the greater the forward tilt of the gaming controller 115, the greater the speed of the tank should be moving forward. Similarly, a rear tilt can generate navigation data that is substituted with a reverse motion and / or deceleration of the forward motion to stop or slow down the tank. A three dimensional lift of the mouse can cause the tank to steer according to the three dimensional navigation data provided by the gaming controller 115. For example, navigation data associated with a combination of a forward tilt and right bank of the gaming controller 115 can be substituted by the AMS application to cause an increase in forward speed of the tank with a turn to the right determined by the AMS application according to a degree of banking of the gaming controller 115 to the right. In the above embodiment, the three dimensional navigation data allows a gamer to control any directional vector of the tank including speed, direction, acceleration and deceleration.

[0066] In another illustration, the AMS application can detect a new gaming venue state as a result of the gamer directing the avatar to leave the tank and travel on foot. Once again the AMS application retrieves in step 719 associations related to the gaming venue state. In this embodiment, selection of buttons of the gaming controller 115 can be associated by the AMS application with weaponry selection, firing, reloading and so on. The movement of the gaming controller 115 in two or three dimensions can control the direction of the avatar and / or selection or use of weaponry. Once the gaming venue state is detected in step 719, the AMS application retrieves the associations related to the venue state and can perform substitutions of stimuli generated by the gaming controller 115, and / or speech commands received by microphone of the headset 114.

[0067] In one embodiment, the AMS application can be configured in step 719 to retrieve a profile that provides substitute stimuli for replacing certain stimuli generated by accessories. The associations recorded in the profile can be venue independent. In another embodiment, the AMS application can retrieve a combination of profiles, where one or more profiles provide substitute stimuli that are venue dependent and one or more other profiles provide substitute stimuli that are venue independent.

[0068] The AMS application can monitor in step 720 stimulations generated by the accessories coupled to the gaming console 206. The stimulations can be generated by the gamer manipulating the gaming controller 115, and / or by generating speech commands detected by a microphone of the headset 114. If a stimulation is detected at step 720, the AMS application can determine in step 722 whether to forward the detected stimulation(s) to an Operating System (OS) of the gaming console 206 or the gaming application directly without substitutions. This determination can be made by comparing the detected stimulation(s) to corresponding associations in one or more profiles retrieved by the AMS application. If the detected stimulation(s) match the associations, then the AMS application proceeds to step 740 where it retrieves substitute stimulation(s) in the profile(s). In step 742, the AMS application can substitute the detected stimulation(s) with the substitute stimulations in the profile(s).

[0069] In one embodiment, the AMS application can track in step 744 the substitute stimulations by updating the stimulations with a unique identifier such as a globally unique identifier (GUID). In this embodiment, the AMS application can also add a timestamp to each substitute stimulation to track when the substitution was performed. In another embodiment, the AMS application can track each substitute stimulation according to its order of submission to the gaming application. For instance, sequence numbers can be generated for the substitute stimulations to track the order in which they were submitted to the gaming application. In this embodiment, the substitute stimulations do not need to be updated with sequence numbers or identifiers so long as the order of gaming action results submitted by the gaming application to the AMS application remain in the same order as the substitute stimulations were originally submitted.

[0070] For example, if a first stimulation sent to the gaming application by the AMS application is a command to shoot, and a second stimulation sent to the gaming application is a command to shoot again, then so long as the gaming application provides a first a game action result for the first shot, followed by a game action result for the second shot, then the substitute stimulations will not require updating with sequence numbers since the game action results are reported in the order that the stimulations were sent. If on the other hand, the game action results can be submitted out of order, then updating the stimulations with sequence numbers or another suitable identifier would be required to enable the AMS application to properly track and correlate stimulations and corresponding gaming action results.

[0071] Referring back to step 722, if the detected stimulation(s) do not match an association in the profile(s), then the AMS application proceeds to one of steps 744 or 746 in order to track the stimulations of the accessory as described above. In another embodiment, tracking of original stimulations or substitute stimulations can be bypassed by skipping steps 744 or 746 and proceeding to step 734.

[0072] Once the stimulations received in step 720 have been substituted with other stimulations at step 742 responsive to a detected association, or maintained unchanged responsive to detecting no association with substitute stimuli, and (optionally) the AMS application has chosen a proper tracking methodology for correlating gaming action results with stimulations, the AMS application can proceed to step 748 where it supplies to the OS of the computing device 206 a gaming action (i.e., one or more stimulations). The gaming action supplied to the OS at step 748 can be an unadulterated “original”gaming action or an alternative generated gaming action. At step 734, the OS determines whether to invoke in step 736 a software application identified in the stimulation(s) (e.g., gamer says “turn on team chat”, which invokes a chat application), whether to forward the received stimulation(s) to the gaming software application in step 738, or combinations thereof. Step 734 may also represent a bypass of the OS whereby stimuli signals are directed to a software application of either steps 736 or 738.

[0073] Contemporaneous to the embodiments described above, the AMS application can monitor in step 750 for game action results supplied by the gaming application via API messages previously described. For instance, suppose the stimulation sent to the gaming application in step 738 is a command to shoot a pistol. The gaming application can determine that the shot fired resulted in a miss of a target or a hit. The gaming application can respond with a message which is submitted by way of the API to the AMS application that indicates the shot fired resulted in a miss or a hit. If IDs such as GUIDs were sent with each stimulation, the gaming application can submit game action results with their corresponding GUID to enable the AMS application to correlate the gaming action results with stimulations having the same GUID.

[0074] For example, if the command to shoot included the ID “1234”, then the game action result indicating a miss will include the ID “1234”, enabling the AMS application in step 752 to correlate the game action result to the stimulation having the same ID. If on other hand, the order of game action results can be maintained consistent with the order of the stimulations, then the AMS application can correlate in step 754 stimulations with game action results by the order in which stimulation were submitted and the order in which game action results are received. In step 756, the AMS application can catalogue stimulations and game action results. In another embodiment, the AMS application can be adapted to catalogue the stimulations in step 760. In this embodiment, step 760 can be performed as an alternative to steps 750 through 756. In another embodiment, step 760 can be performed in combination with steps 750 through 756 in order to generate a catalogue of stimulations, and a catalogue for gaming action results correlated to the stimulations.

[0075] FIGs. 7B and 7C illustrate embodiments of a system with a corresponding communication flow diagram for correlating stimulations and gaming action results. In this illustration a user clicks the left button 119 of the gaming controller 115. The gaming controller 115 can include firmware (or circuitry), which creates an event as depicted by event 2 in FIG. 7B. The button depression and the event creation are depicted in FIG. 7C as steps 782 and 784. In step 784, the firmware of the gaming controller 115 can, for example, generate an event type “left button #3”, and a unique GUID with a time stamp which is submitted to the AMS application. Referring back to FIG. 7B, the AMS application catalogues event 3, and if a substitute stimulation has been predefined, remaps the event according to the substitution. The remapped event is then transmitted to the gaming application at event 4. Event 3 of FIG. 7B is depicted as step 786 in FIG. 7C. In this illustration, the AMS application substitutes the left button #3 depression stimulus with a “keyboard ‘F’” depression which can be interpreted by the gaming application as a fire command. The AMS application in this illustration continues to use the same GUID, but substitutes the time stamp for another time stamp to identify when the substitution took place.

[0076] Referring back to event 4, the gaming application processes the event and sends back at event 5 a game action result to the AMS application which is processed by the AMS application at event 6. The AMS application then submits the results to the accessory at event 7. Events 4 and 5 are depicted as step 788 in FIG. 7C. In this step, the gaming application processes “F” as tin action to fire the gamer’s gun, and then determines from the action the result from logistical gaming results generated by the gaming application. In the present illustration, the action of firing resulted in a hit. The gaming application can submit to the AMS application the result type “Hit” with a new time stamp, while utilizing the same GUID for tracking purposes. At step 790, the AMS application correlates the stimulation “left button #3 (and / or the substitute stimulation keyboard “F”) to the game result “Hit” and catalogues them in memory. The AMS application then submits to the accessory (e.g., gaming controller 115) in step 790 the game action results “Hit” with the same GUID, and a new time stamp indicating when the result was received. Upon receiving the message from the AMS application, the accessory in step 792 processes the “Hit” by asserting a red LED on the accessory(e.g., left buton 119 illuminates in red or other LED of the gaming controller 115 illuminates in red) to indicate a hit. Other notification notices can be used such as another color for the LED to indicate misses, a specific sound for a hit, or kill, a vibration or other suitable technique for notifying the gamer of the game action result.

[0077] FIG. 8A is perspective view of an example, non-limiting embodiment of a scroll wheel assembly 800 of a user input device 800m in one operating state, in accordance with various aspects described herein. FIG. 8B is another perspective view of the scroll wheel assembly 800 of FIG. 8A in another operating state, in accordance with various aspects described herein. FIG. 8C is an exploded view of the scroll wheel assembly 800 of FIG. 8A, in accordance with various aspects described herein. FIGs. 8D to 8H are various other views of the scroll wheel assembly 800 of FIG. 8A. FIG. 81 is a cross-sectional view of the scroll wheel assembly 800 of FIG. 8A, in accordance with various aspects described herein. FIG. 8J is another cross-sectional view of the scroll wheel assembly 800 of FIG. 8A, in accordance with various aspects described herein. FIG. 8K is a cross-sectional view of a scroll wheel of the scroll wheel assembly 800 of FIG. 8A (e.g., taken along a line C-C shown in FIG. 8G, but without showing other components of the scroll wheel assembly 800).

[0078] In one or more embodiments, the user input device 800m may correspond to, or may be included in, the mouse 110, the keyboard 108, or the game controller 115 of FIG. 1. As variously depicted in one or more of FIGs. 8A to 8K, the scroll wheel assembly 800 may be generally coupled to an inner side of a bottom case (or casing) 802 of the user input device 800m. In various embodiments, the scroll wheel assembly 800 may include a moveable rack 804, a slider cover 806, a printed circuit board assembly (PCBA) 808, wheel supports 810s, an axle 810a, a scroll wheel 81 , an elastic member holder 814, an elastic member 816, a motor (e.g., mini motor) 818, and a gear (e.g., mini gear) 820. The rack 804 may be arranged on an inner surface of the bottom case 802. At least a portion of the rack 804 may be configured with teeth (or a toothed section) 804t that engages with the gear 820. The slider cover 806 may be disposed over the rack 804 (or coupled to or integrated with the rack 804), and may have openings 806h that are configured to engage with platforms 806p positioned on the botom case 802. The slider cover 806 may have rails under which lips of the elasticmember holder 814 may be aligned and slid for coupling / securing the elastic member holder 814 to the slider cover 806 (see FIG. 8C).

[0079] As depicted, the PCBA 808 may be defined with an opening 808h through which various components, such as the supports 810s, the scroll wheel 812, the elastic member holder 814, and / or the elastic member 816 may be disposed. The PCBA 808 may be configured to route signals between electrical and electronic components that are connected to or fabricated / mounted on the board. The PCBA 808 may be composed of layers of dielectric material and conductive material, where conductive traces are formed to provide electrical connectivity between the components. The PCBA 808 may have multiple layers (e.g., two layers, four layers, six layers, etc.), some or each of which may bear circuitry. The PCBA 808 may include two opposing external surfaces, one or both of which may also bear circuitry. Circuitry may include any form of electrical or electronic components, including analog components, digital components, ground planes, and simple conductors, such as copper or other conductive traces. In various embodiments, the user input device 800m may correspond to the device 400 of FIG. 4, in which case the PCBA 808 may include or encompass some or all of the components shown in FIG. 4.

[0080] Returning to FIGs. 8A to 8K, a container 818c may be coupled to the inner surface of the bottom case 802 for storing the motor 818. The motor 818 may include or may be coupled to the gear 820 (via a rod or shaft), and may be controlled to provide rotational force(s) to the gear 820 to drive linear movement of the rack 804. It will be understood and appreciated that alternative actuating mechanism designs may be used to implement linear driving of the rack 804. For instance, the motor and drive assembly may include any of a variety of actuating mechanisms, ranging from linear actuation systems to servo motors, such as linear actuators, brushed servo motors, brushless servo motors, and / or linear motors that feature any type of shaft and gear implementation for linear motion. In one or more embodiments, the motor 818 may be communicatively coupled (e.g., via one or more wires or wirelessly) to a control unit (not shown), such as a microprocessor, microcontroller, or the like, on the PCBA 808. In these embodiments, the PCBA 808 may be accessible to the AMS application (e.g., via one or more wires that connect the user input device to the computing device or via awireless connection), which can issue commands to the control unit on the PCBA 808 for controlling rotary motions of the motor 818, the speed of the rotary motions, etc. It will be understood and appreciated that implementation of the scroll wheel assembly may not be limited to the rack / gear configuration described above. For instance, in certain alternative embodiments, the scroll wheel assembly may be configured with a wheel / belt system or any other type of system that includes component(s) for facilitating transfer of drive forces from the motor 818 to the elastic member 816.

[0081] The elastic member 816 may be composed of any suitable elastic material — e.g., metal (such as a metal spring or coil), rubber (such as silicone rubber), a synthetic elastic compound, or a combination thereof. As is more clearly shown in FIG. 8C, in certain exemplary embodiments, the elastic member 816 may include a structure 816s that has a symmetrical shape. Particularly, the structure 816s may be U-shaped with two arms 816a that bend over. The arms 816a may include extensions 816e with engagement portions 816c that are curved as shown.

[0082] The scroll wheel 812 may be configured with a patterned contact portion 812c. In exemplary embodiments, the contact portion 812c may have a gradient pattern (or spatial gradient), where adjacent surfaces 812x and 812w are angularly arranged so as to form valleys 812y in a repeated manner throughout the contact portion 812c. In other words, the contact portion 812c may have a gradual change or progression in a physical attribute (such as intensity or density) across its surface. In various embodiments, the scroll wheel 812 may be configured with the same or a similar gradient pattern 812c on both sides of the wheel for engaging with the two arms 816a of the elastic member 816. The scroll wheel 812 and its gradient patterning may be fabricated in any suitable manner, such as via injection molding, three-dimensional (3D) printing, die casting, computer numerical control (CNC) machining, etc.

[0083] In one or more embodiments, one or more of the engagement portions 816c of the elastic member 816 may be moveably adjusted to different radial sections of the contact portion 812c to provide different tactile feedback or effects (e.g., to a user) during use of the scroll wheel 812. In exemplary embodiments, the rack 804, the slider cover 806, and the elastic member holder 814 (e.g., some or all of these may be considered intermediate components), and thus the elastic member 816, may bemoveable or slidable along the X-axis (in the -X and +X directions) to assume different positions (or operating states). In various embodiments, the movement of these components may be limited by the extent of the engagements between the openings 806h of the slider cover 806 and the platforms 806p of the bottom case 802. FIGs. 8A, 8B, and 8D show three (e.g., of many) possible operating states of the scroll wheel assembly. In a first operating state, the rack 804, the slider cover 806, the elastic member holder 814, and the elastic member 816 may be positioned in the extreme in the +X direction (i.e., position h). Here, the engagement portions 816c of the elastic member 816 may contact radial sections of the opposite patterned contact portions 812c that are closer to (or at or within a threshold distance from) a circumference of the scroll wheel 812. Rotation of the scroll wheel 812 in this case may result in a level of tactile feedback or effect that is relatively strong or more intense. In a second operating state, the rack 804, the slider cover 806, the elastic member holder 814, and the elastic member 816 may be positioned in the extreme in the -X direction (i.e., position f). Here, the engagement portions 816c of the elastic member 816 may contact opposite flat or planar surfaces of a core (or center core) 812r of the scroll wheel 812. Rotation of the scroll wheel 812 in this case may result in minimal to no tactile feedback or effect. In a third operating state, the rack 804, the slider cover 806, the elastic member holder 814, and the elastic member 816 may be positioned somewhere in between the two extreme positions (i.e., position i). Here, the engagement portions 816c of the elastic member 816 may contact radial sections of the opposite patterned contact portions 812c of the scroll wheel 812 that are closer to (or at or within a threshold distance from) the center of the scroll wheel 812. Rotation of the scroll wheel 812 in this case may result in a level of tactile feedback or effect that is relatively weak or less intense. The different levels of tactile feedback or effect associated with positions h and i can be appreciated by imagining a person physically traversing (or “riding” on) the surface of the contact portion 812c at a radial section thereof that is closer to the outer circumference of the scroll wheel 812 versus at a radial section thereof that is closer to the center of the scroll wheel 812, with both scenarios at the same speed. It will be easily observed that the peaks and valleys (“bumps” or “bumpiness”) of traversal at the radial section that is closer to the outer circumference of the scroll wheel 812 would“feel” more pronounced or intense as compared to traversal at the radial section that is closer to the center of the scroll wheel 812, since a larger portion of the person (analogously, a larger portion of the engagement portion 816c) would dip into and rise out of the valleys 812y in the former scenario than in the latter.

[0084] FIG. 80 shows side and top down views of scroll wheel 812 in accordance with various aspects described herein. In some embodiments, a core 812r’ of the scroll wheel 812 may be configured with an annular groove or recess 812g’ in one or more of its side surfaces. In these embodiments, the annular groove 812g’ may align with a corresponding engagement portion 816c of the elastic member 816 when the operating state of the scroll wheel assembly 800 is such that the elastic member 816 is in position j. In such a position, and by virtue of the groove 812g’, the engagement portion 816c may not contact any portion of the scroll wheel, thereby resulting in no tactile feedback or effect during rotation of the scroll wheel.

[0085] Although the scroll wheel assembly 800 has been described above to assume three positions (h, i, and J), the assembly can be adjusted to assume any desired number of positions that each has the engagement portions 816c engaging with a different radial section of the contact portions 812c or even a different radial section of the core 812r. In certain embodiments, the scroll wheel assembly 800 may be limited to operating states that correspond to just two of the three described positions. For instance, the scroll wheel assembly 800 may operate in positions h and i, but not j. As another example, the scroll wheel assembly 800 may operate in position h and j, but not i. As yet another example, the scroll wheel assembly 800 may operate in positions i and j, but not h.

[0086] In exemplary embodiments, the motor 818 may be controlled to facilitate linear movement of the rack 804, and thus the elastic member 816, in a continuous maimer, thereby allowing for stepless adjustments to the level of tactile feedback provided by the scroll wheel 812 during rotation thereof. In some embodiments, the motor 818 may be controlled to rotate by specific amounts that correspond to the various positions, such as positions h, i,j, etc. In alternative embodiments, the motor 818 may be controlled to facilitate linear movement of the rack 804, and thus the elastic member 816, in any desired increments — e.g., 1 millimeter (mm) increments, 2 mmincrements, 5 mm increments, etc., which may correspond to particular angular increments or “rotations,” such as 1 -degree increments, 5-degree increments, 20-degree increments, 90-degree increments, etc. In some embodiments, positioning circuitry (not shown) may be included for monitoring the position of the elastic member 816, the position of the elastic member holder 814, the position of the slider cover 806 / rack 804, the rotational position of the motor 818, or a combination thereof. In these embodiments, the positioning circuitry may communicate with the AMS application (e.g., via the PCBA 808) to update the AMS application on the monitored position.

[0087] In one or more embodiments, a user may input commands for adjusting the level of tactile feedback for the scroll wheel assembly and / or set preferences that associate different operating states of the scroll wheel assembly 800, and thus the different positions of the elastic member 816, with different applications. In various embodiments, the AMS may provide one or more UIs (e.g., within the GUI 101 of FIG. 1 or in one or more other GUIs therein or separate therefrom) that enable the user to input such commands or preferences. Adjustment to the level of tactile feedback may correspond to rotational increments of the motor 818 and different positions of the elastic member 816 relative to the scroll wheel 812. For instance, tactile feedback levels can range from a scale of 1 to 10, with each step corresponding to one often rotational increments of the motor 818 and corresponding to one of ten different positions of the elastic member 816 relative to the scroll wheel 812. Examples of tactile feedback level preferences may include a default level of tactile feedback (e.g., corresponding to position i or J), which can be set for certain application(s) (e.g., a word processing application, a web browsing application, etc.), and a different level of tactile feedback (e.g., corresponding to position h) for other application(s) (e.g., a gaming application). More or fewer preferences (e.g., for one or more other levels of tactile feedback) may also be set. It will thus be understood and appreciated that embodiments of the scroll wheel assembly 800 and associated system(s) advantageously allow a user to customize different levels of tactile feedback as desired.

[0088] In various embodiments, the rack 804 may be configured with a lever 804v (see FIG. 8C) to allow for manual switching or adjustment (i.e., manually-induced linear movement) of the rack 804. FIGs. 8L and 8M are various bottom perspectiveviews of the user input device 800m of FIG. 8A, illustrating different lever positions for selecting different operating states of the scroll wheel assembly 800, in accordance with various aspects described herein. Different positions of the lever 804v may correspond to different positions of the elastic member 816. As an example, in a case where the lever 804v is configured to assume only two positions, one position of the lever 804v may correspond to the above-described position h and the other position of the lever 804v may correspond to the above-described position i or j. As another example, in a case where the lever 804v is configured to assume more than two positions, the different positions of the lever 804v may correspond to the individual positions h, i,j, and / or other positions of the elastic member 816.

[0089] While the scroll wheel assembly 800 may include both a manual adjustment mechanism (i.e., lever) and an electrically-controllable adjustment mechanism (i.e., motor and drive assembly), as described above, it will be understood that the user input device can alternatively include either of the mechanisms but not both. For instance, the scroll wheel assembly 800 may include the manual adjustment mechanism, but not the electrically-controllable adjustment mechanism, in which case integration or communication with the AMS may not be implemented or needed. In some embodiments, the scroll wheel assembly 800 may include one or more other types of adjustment mechanisms.

[0090] Also, although the elastic member 816 has been described above as having a certain shape with two arms, it is to be understood and appreciated that the elastic member 816 can have any other shape or combination of shapes so long as it includes one or more structural elements that are defined to interact with the gradient pattern 812c. For instance, in one or more embodiments, the elastic member may be V-shaped or may have any other curved or angled configuration. As another example, the elastic member may be composed of just a single arm or two separate arms that are not directly joined together. FIG. 8N depicts a non-limiting example alternative elastic member 816’ in accordance with various aspects described herein. As shown in FIG. 8N, the structure of the elastic member 816’ may be just a single arm. In this case, the scroll wheel assembly may be configured with one elastic member 816’ for contacting the gradient pattern of just one side of the scroll wheel. Here, the scroll wheel may or maynot have a gradient pattern on its other side. Alternatively, the scroll wheel assembly may be configured with two elastic members 816’ for contacting the gradient patterns of both sides of the scroll wheel.

[0091] It will thus be seen that, with a scroll wheel having a side surface with “bumps” that are arranged such that the height or level of protrusion of these bumps changes gradually in a radial direction of the scroll wheel, stepless adjustment of the “clicking” feel or sensation during wheel scrolling can be achieved by shifting an engagement point between a spring-loaded object and the side surface of the scroll wheel towards or away from the center of the scroll wheel.

[0092] It is to be understood and appreciated that, although one or more of FIGs. 1 to 80 might be described above as pertaining to various processes and / or actions that are performed in a particular order, some of these processes and / or actions may occur in different orders and / or concurrently with other processes and / or actions from what is depicted and described above. Moreover, not all of these processes and / or actions may be required to implement the systems and / or methods described herein. Furthermore, while various systems, devices, components, etc. may have been illustrated in one or more of FIGs. 1 to 80 as separate systems, devices, components, etc., it will be appreciated that multiple systems, devices, components, etc. can be implemented as a single system, device, component, etc., or a single system, device, component, etc. can be implemented as multiple systems, devices, components, etc. Additionally, functions described as being performed by one system, device, component, etc. may be performed by multiple systems, devices, components, etc., or functions described as being performed by multiple systems, devices, components, etc. may be performed by a single system, device, component, etc.

[0093] FIG. 9A depicts an illustrative embodiment of a method 900 in accordance with various aspects described herein.

[0094] At 901a, the method can include receiving a user instruction to adjust a level of tactile feedback that is provided during rotation of a scroll wheel of a user input device. For example, similar to that described above with respect to one or more of FIGs. 8A to 80, the AMS application may receive a user instruction to adjust a levelof tactile feedback that is provided during rotation of a scroll wheel of a user input device.

[0095] At 901b, the method can include, responsive to the receiving, transmitting one or more commands to a control unit in the user input device, wherein the scroll wheel has a contact portion that is configured with a gradient pattern, wherein the user input device includes an elastic member having an engagement portion, wherein the control unit is configured to cause the elastic member to linearly displace relative to the scroll wheel in accordance with the one or more commands, and wherein, in different positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to the level of tactile feedback. For example, similar to that described above with respect to one or more of FIGs. 8A to 80, the AMS application may, responsive to the receiving, transmit one or more commands to a control unit in the user input device, wherein the scroll wheel has a contact portion that is configured with a gradient pattern, wherein the user input device includes an elastic member having an engagement portion, wherein the control unit is configured to cause the elastic member to linearly displace relative to the scroll wheel in accordance with the one or more commands, and wherein, in different positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to the level of tactile feedback.

[0096] While for purposes of simplicity of explanation, the respective processes are shown and described as a series of blocks in FIG. 9A, it is to be understood and appreciated that the claimed subject matter is not limited by the order of the blocks, as some blocks may occur in different orders and / or concurrently with other blocks from what is depicted and described herein. Moreover, not all illustrated blocks may be required to implement the methods described herein.

[0097] FIG. 9B depicts an illustrative embodiment of a method 910 in accordance with various aspects described herein.

[0098] At 910a, the method can include receiving, by an elastic member residing in a user input device, one or more forces. For example, similar to that described above with respect to one or more of FIGs. 8A to 80, the elastic member 816, residing in auser input device 800m, may receive one or more forces (whether via the lever 804v or the motor 818).

[0099] At 910b, the method can include linearly shifting, by the elastic member, from a first position of a plurality of positions of the elastic member to a second position of the plurality of positions, wherein the user input device includes a scroll wheel having a contact portion that is configured with a gradient pattern, wherein the elastic member has an engagement portion, and wherein the elastic member is linearly shiftable relative to the scroll wheel such that, in the plurality of positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to a level of tactile feedback that is provided during rotation of the scroll wheel. For example, similar to that described above with respect to one or more of FIGs. 8A to 80, the elastic member 816 may linearly shift between different positions, such as positions h, i,j, etc.[000100] While for purposes of simplicity of explanation, the respective processes are shown and described as a series of blocks in FIG. 9B, it is to be understood and appreciated that the claimed subject matter is not limited by the order of the blocks, as some blocks may occur in different orders and / or concurrently with other blocks from what is depicted and described herein. Moreover, not all illustrated blocks may be required to implement the methods described herein.[000101] Upon reviewing the aforementioned embodiments, it would be evident to an artisan with ordinary skill in the art that the embodiments of the subject disclosure can be modified, reduced, or enhanced without departing from the scope of the claims described below. For example, the AMS application can be executed from an accessory (e.g., 110, 114, 115, etc.) or a computing device (e.g., gaming console 206 and / or computer 208) to perform the embodiments described in the subject disclosure. The AMS application can also be operated from a remote server (“cloud services”). In yet another embodiment, functions of the AMS application can be distributed between devices. In yet another embodiment, the AMS application can be configured to track the performance of a gamer and adapt a threshold as the gamer improves or declines in performance.[000102] It should be understood that devices described in the exemplary embodiments can be in communication with each other via various wireless and / or wired methodologies. The methodologies can be links that are described as coupled, connected and so forth, which can include unidirectional and / or bidirectional communication over wireless paths and / or wired paths that utilize one or more of various protocols or methodologies, where the coupling and / or connection can be direct (e.g., no intervening processing device) and / or indirect (e.g., an intermediary processing device such as a router).[000103] FIG. 10 depicts an exemplary diagrammatic representation of a machine in the form of a computer system 1000 within which a set of instructions, when executed, may cause the machine to perform any one or more of the methods described above. The computer system 1000 may facilitate adjusting of scroll wheel tactile sensations. One or more instances of the machine can operate, for example, as an accessory, computing device or combinations thereof. For example, the machine can be embodied as a laptop computer. In some embodiments, the machine may be connected (e.g., using a network 1026) to other machines. In a networked deployment, the machine may operate in the capacity of a server or a client user machine in a server-client user network environment, or as a peer machine in a peer-to-peer (or distributed) network environment.[000104] The machine may comprise a server computer, a client user computer, a personal computer (PC), a tablet, a smart phone, a laptop computer, a desktop computer, a control system, a network router, switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. It will be understood that a communication device of the subject disclosure includes broadly any electronic device that provides voice, video, or data communication. Further, while a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methods discussed herein.[000105] The computer system 1000 may include a processor (or controller) 1002 (e.g., a central processing unit (CPU)), a graphics processing unit (GPU, or both), amain memory 1004 and a static memory 1006, which communicate with each other via a bus 1008. The computer system 1000 may further include a display unit 1010 (e.g., a liquid crystal display (LCD), a flat panel, or a solid-state display). The computer system 1000 may include an input device 1012 (e.g., a keyboard), a cursor control device 1014 (e.g., a mouse), a disk drive unit 1016, a signal generation device 1018 (e.g., a speaker or remote control) and a network interface device 1020. In distributed environments, the embodiments described in the subject disclosure can be adapted to utilize multiple display units 1010 controlled by two or more computer systems 1000. In this configuration, presentations described by the subject disclosure may in part be shown in a first of the display units 1010, while the remaining portion is presented in a second of the display units 1010.[000106] The disk drive unit 1016 may include a tangible computer-readable storage medium 1022 on which is stored one or more sets of instructions (e.g., software 1024) embodying any one or more of the methods or functions described herein, including those methods illustrated above. The instructions 1024 may also reside, completely or at least partially, within the main memory 1004, the static memory 1006, and / or within the processor 1002 during execution thereof by the computer system 1000. The main memory 1004 and the processor 1002 also may constitute tangible computer-readable storage media.[000107] Dedicated hardware implementations including, but not limited to, application specific integrated circuits, programmable logic arrays and other hardware devices can likewise be constructed to implement the methods described herein. Application specific integrated circuits and programmable logic array can use downloadable instructions for executing state machines and / or circuit configurations to implement embodiments of the subject disclosure. Applications that may include the apparatus and systems of various embodiments broadly include a variety of electronic and computer systems. Some embodiments implement functions in two or more specific interconnected hardware modules or devices with related control and data signals communicated between and through the modules, or as portions of an application-specific integrated circuit. Thus, the example system is applicable to software, firmware, and hardware implementations.[000108] In accordance with various embodiments of the subject disclosure, the operations or methods described herein are intended for operation as software programs or instructions running on or executed by a computer processor or other computing device, and which may include other forms of instructions manifested as a state machine implemented with logic components in an application specific integrated circuit or field programmable gate array. Furthermore, software implementations (e.g., software programs, instructions, etc.) including, but not limited to, distributed processing or component / object distributed processing, parallel processing, or machine processing can also be constructed to implement the methods described herein. It is further noted that a computing device such as a processor, a controller, a state machine or other suitable device for executing instructions to perform operations or methods may perform such operations directly or indirectly by way of one or more intermediate devices directed by the computing device.[000109] While the tangible computer-readable storage medium 1022 is shown in an example embodiment to be a single medium, the term "tangible computer-readable storage medium" should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and / or associated caches and servers) that store the one or more sets of instructions. The term "tangible computer-readable storage medium" shall also be taken to include any non-transitory medium that is capable of storing or encoding a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methods of the subject disclosure. The term “non-transitory” as in a non-transitory computer-readable storage includes without limitation memories, drives, devices and anything tangible but not a signal per se.[000110] The term "tangible computer-readable storage medium" shall accordingly be taken to include, but not be limited to solid-state memories such as a memory card or other package that houses one or more read-only (non-volatile) memories, random access memories, or other re-writable (volatile) memories, a magneto-optical or optical medium such as a disk or tape, or other tangible media which can be used to store information. Accordingly, the disclosure is considered to include any one or more of a tangible computer-readable storage medium, as listed herein and including art-recognized equivalents and successor media, in which the software implementations herein are stored.[000111] Although the present specification describes components and functions implemented in the embodiments with reference to particular standards and protocols, the disclosure is not limited to such standards and protocols. Each of the standards for Internet and other packet switched network transmission (e.g., TCP / IP, UDP / IP, HTML, HTTP) represent examples of the state of the art. Such standards are from time- to-time superseded by faster or more efficient equivalents having essentially the same functions. Wireless standards for device detection (e.g., RFID), short-range communications (e.g., Bluetooth®, WiFi, Zigbee®), and long-range communications (e.g., WiMAX, GSM, CDMA, LTE) can be used by computer system 1000.[000112] The illustrations of embodiments described herein are intended to provide a general understanding of the structure of various embodiments, and they are not intended to serve as a complete description of all the elements and features of apparatus and systems that might make use of the structures described herein. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. The exemplary embodiments can include combinations of features and / or steps from multiple embodiments. Other embodiments may be utilized and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. Figures are also merely representational and may not be drawn to scale. Certain proportions thereof may be exaggerated, while others may be minimized. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.[000113] Although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, can be used in the subject disclosure. In one or more embodiments, features that are positively recited can also be excluded from the embodiment with or without replacement by another component or step. The steps or functions described withrespect to the exemplary processes or methods can be performed in any order. The steps or functions described with respect to the exemplary processes or methods can be performed alone or in combination with other steps or functions (from other embodiments or from other steps that have not been described).[000114] Less than all of the steps or functions described with respect to the exemplary processes or methods can also be performed in one or more of the exemplary embodiments. Further, the use of numerical terms to describe a device, component, step or function, such as first, second, third, and so forth, is not intended to describe an order or function unless expressly stated so. The use of the terms first, second, third and so forth, is generally to distinguish between devices, components, steps or functions unless expressly stated otherwise. Additionally, one or more devices or components described with respect to the exemplary embodiments can facilitate one or more functions, where the facilitating (e.g., facilitating access or facilitating establishing a connection) can include less than every step needed to perform the function or can include all of the steps needed to perform the function.[000115] In one or more embodiments, a processor (which can include a controller or circuit) has been described that performs various functions. It should be understood that the processor can be multiple processors, which can include distributed processors or parallel processors in a single machine or multiple machines. The processor can be used in supporting a virtual processing environment. The virtual processing environment may support one or more virtual machines representing computers, servers, or other computing devices. In such virtual machines, components such as microprocessors and storage devices may be virtualized or logically represented. The processor can include a state machine, application specific integrated circuit, and / or programmable gate array including a Field PGA. In one or more embodiments, when a processor executes instructions to perform “operations”, this can include the processor performing the operations directly and / or facilitating, directing, or cooperating with another device or component to perform the operations.[000116] The Abstract of the Disclosure is provided with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are groupedtogether in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus, the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separately claimed subject matter. It is also to be understood and appreciated that the subject matter in one or more dependent claims may be combined with that in one or more other dependent claims.

Claims

CLAIMSWhat is claimed is:

1. An apparatus, comprising: a scroll wheel having a contact portion, the contact portion being configured with a gradient pattern; and an elastic member having an engagement portion, the elastic member being linearly displaceable relative to the scroll wheel such that, in different positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to a level of tactile feedback that is provided during rotation of the scroll wheel.

2. The apparatus of claim 1, wherein the apparatus comprises a user input device, and wherein the adjustments are stepless.

3. The apparatus of claim 1, wherein the elastic member is composed of metal, rubber, a synthetic elastic compound, or a combination thereof.

4. The apparatus of claim 1, wherein the different positions of the elastic member comprise one or more of: a first position in which the engagement portion contacts a first radial section of the gradient pattern that is at or within a threshold distance from an outer circumference of the scroll wheel; a second position in which the engagement portion contacts a second radial section of the gradient pattern that is at or within a threshold distance from a center of the scroll wheel; or a third position in which the engagement portion contacts a surface of a core of the scroll wheel or aligns with, but does not contact, an annular groove defined in the core of the scroll wheel.

5. The apparatus of claim 1, wherein the contact portion is on one side ofthe scroll wheel, wherein the scroll wheel has a second contact portion on an opposite side thereof, and wherein the second contact portion is configured with a second gradient pattern.

6. The apparatus of claim 5, wherein the elastic member has a second engagement portion that, in different positions of the elastic member, interacts with different radial sections of the second gradient pattern.

7. The apparatus of claim 1, further comprising: a rack that is linearly displaceable relative to the scroll wheel; a slider cover coupled to or integrated with the rack; and an elastic member holder secured to the slider cover, wherein the elastic member is arranged in the elastic member holder.

8. The apparatus of claim 7, further comprising: a controller; a motor; and a drive assembly coupled to the motor and the rack, the controller being configured to receive commands from an application to operate the motor, wherein operation of the motor drives the drive assembly to effect linear displacement of the rack.

9. The apparatus of claim 8, wherein the rack comprises a toothed section, wherein the drive assembly comprises a shaft and a gear, and wherein the gear is arranged to engage with the toothed section.

10. The apparatus of claim 7, wherein the rack includes a user-operable lever for facilitating manually-controlled linear displacement of the rack.

11. A non-transitory machine-readable storage medium, comprising instructions, wherein responsive to executing the instructions, a processor performs operations comprising: receiving a user instruction to adjust a level of tactile feedback that is provided during rotation of a scroll wheel of a user input device; and responsive to the receiving, transmitting one or more commands to a control unit in the user input device, wherein the scroll wheel has a contact portion that is configured with a gradient pattern, wherein the user input device includes an elastic member having an engagement portion, wherein the control unit is configured to cause the elastic member to linearly displace relative to the scroll wheel in accordance with the one or more commands, and wherein, in different positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to the level of tactile feedback.

12. The non-transitory machine-readable storage medium of claim 11, wherein the elastic member is composed of metal, rubber, a synthetic elastic compound, or a combination thereof.

13. The non-transitory machine-readable storage medium of claim 11, wherein the adjustments are stepless.

14. The non-transitory machine-readable storage medium of claim 11, wherein the different positions of the elastic member comprise one or more of: a first position in which the engagement portion contacts a first radial section of the gradient pattern that is at or within a threshold distance from an outer circumference of the scroll wheel; a second position in which the engagement portion contacts a second radial section of the gradient pattern that is at or within a threshold distance from a center of the scroll wheel; or a third position in which the engagement portion contacts a surface of a core of the scroll wheel or aligns with, but does not contact, an annular groove defined in the core of the scroll wheel.

15. The non-transitory machine-readable storage medium of claim 11, wherein the user input device further includes a motor and a drive assembly coupled to the motor, wherein the drive assembly is coupled to the elastic member via one or more intermediate components, and wherein the control unit is configured to control rotary motion of the motor based on the one or more commands so as to effect linear displacement of the elastic member via the one or more intermediate components.

16. The non-transitory machine-readable storage medium of claim 11, wherein the user input device further includes a lever for manual adjustment of the elastic member.

17. A method, comprising: receiving, by an elastic member residing in a user input device, one or more forces; and linearly shifting, by the elastic member, from a first position of a plurality of positions of the elastic member to a second position of the plurality of positions, wherein the user input device includes a scroll wheel having a contact portion that is configured with a gradient pattern, wherein the elastic member has an engagement portion, and wherein the elastic member is linearly shiftable relative to the scroll wheel such that, in the plurality of positions of the elastic member, the engagement portion interacts with different radial sections of the gradient pattern, thereby enabling adjustments to a level of tactile feedback that is provided during rotation of the scroll wheel.

18. The method of claim 17, wherein the one or more forces are manually provided by a user or originate from rotary motion of a motor disposed in the user input device.

19. The method of claim 17, wherein the adjustments are stepless, and wherein the elastic member is composed of metal, rubber, a synthetic elastic compound, or a combination thereof.

20. The method of claim 17, wherein the first position is associated with a first type of computer application, and wherein the second position is associated with a second type of computer application.

Citation Information

Patent Citations

  • Scroll wheel module

    US20180267629A1

  • Adustable haptic scroll wheel

    US20210096663A1

  • Input device

    US20220155879A1

Cited By

  • Mouse scroll wheel mechanism

    US12645312B1