US Pat. No. 9,497,703

RADIO COMMUNICATION DEVICES AND METHODS FOR CONTROLLING A RADIO COMMUNICATION DEVICE

RAZER (ASIA-PACIFIC) PTE....

1. A radio communication device, comprising:
a memory circuit configured to store data to be broadcasted;
a communication circuit configured to establish a wireless connection with a first further radio communication device; and
a transmitter configured to at least one of broadcast signals based on the stored data or transmit a signal based on the stored
data to the first further radio communication device using the communication circuit;

wherein the communication circuit is configured to receive information from the first further radio communication device based
on a signal broadcasted by a second further radio communication device, free from the communication circuit receiving the
signal from the second further radio communication device;

wherein the transmitter is configured to broadcast signals according to a pre-determined timing scheme, the pre-determined
timing scheme comprising a pre-determined number of transmission in a pre-determined period of time;

the radio communication device further comprising:
a device determination circuit configured to determine whether another radio communication device is in a communication range
of the radio communication device; and

a controller configured to change the pre-determined timing scheme to increase the number of transmissions in the pre-determined
period of time if the device determination circuit determines that another radio communication device is in the communication
range of the radio communication device.

US Pat. No. 9,426,276

SYSTEM AND METHOD FOR PERFORMING MOBILE TELEPHONE CALLING AND/OR MESSAGING OPERATIONS IN-GAME DURING COMPUTER GAME APPLICATION EXECUTION

RAZER (ASIA-PACIFIC) PTE....

1. A method for providing mobile telephony operations provided by a mobile telephone to a computer gamer while the gamer plays
a computer game by way of execution of a computer game application on a computer system, the mobile telephony operations including
at least one of mobile telephone calling operations and mobile telephone messaging operations, the method comprising:
providing a wireless communication interface between the mobile telephone and the computer system, the computer system being
separate from the mobile telephone;

providing a remote mobile application in the mobile telephone;
sending at least one of mobile telephony notifications or mobile telephony content to the computer system using the remote
mobile application, by way of the wireless communication interface;

providing a computer game user interface responsive to input received from the gamer during execution of the computer game
application, the computer game user interface presenting a game environment including a visual game environment to the gamer;

providing a mobile telephony module in the computer system, the mobile telephony module configured to provide a mobile telephony
user interface responsive to input received from the gamer during execution of the computer game application, the mobile telephony
user interface for selectively controlling the mobile telephony operations, wherein the mobile telephony module is configured
to receive the at least one of mobile telephony notifications or mobile telephony content from the mobile telephone and further
configured to update the mobile telephony user interface based on the received at least one of mobile telephony notifications
or mobile telephony content; and
performing the mobile telephony operations by way of the mobile telephony user interface in a manner that at least substantially
avoids interrupting (a) gamer perception of ongoing game play, and (b) gamer interaction with the visual game environment.

US Pat. No. 9,396,892

KEYBOARD STRUCTURE FOR IMPROVED ILLUMINATION CHARACTERISTICS

RAZER (ASIA-PACIFIC) PTE....

1. A keyboard structure for improved illumination characteristics, the structure comprising:
a substrate having a reflective surface; and
a key switch assembly disposed adjacent the substrate, the key switch assembly comprising:
a keycap;
a contact assembly; and
a light emitting means, the light emitting means disposed adjacent the contact assembly,
wherein light emitted from the light emitting means is incident on the reflective surface of the substrate and is reflected
to areas surrounding the key switch assembly including gaps between adjacent keycaps;

wherein the substrate comprises perforations shaped and dimensioned to accommodate the key switch assembly therethrough; and
wherein the keycap comprises an internal surface, and wherein incident light is reflected by the internal surface onto the
reflective surface of the substrate and is further reflected by the reflective surface to the areas surrounding the key switch
assembly.

US Pat. No. 9,531,859

WRISTBANDS, METHODS FOR CONTROLLING A WRISTBAND, AND COMPUTER READABLE MEDIA

RAZER (ASIA-PACIFIC) PTE....

1. A wristband comprising:
a receiver configured to receive data;
a first display;
a second display;
a display controller configured to control the first display to display first abstract information of a first level of detail
based on the received data, and further configured to control the second display to display second abstract information of
a second level of detail based on the received data; and

a sensor configured to determine a condition of the wristband;
wherein the display controller is further configured to control at least one of the first display or the second display based
on the determined condition;

wherein the display controller is further configured to activate the second display to display the second abstract information
if the wristband is in a condition in which the second display faces a user of the wristband.

US Pat. No. 9,454,943

COMPUTING SYSTEMS AND METHODS FOR CONTROLLING A COMPUTING SYSTEM

RAZER (ASIA-PACIFIC) PTE....

1. A computing system comprising:
a circuit configured to operate at a plurality of operation frequencies; a graphics output configured to output image data
for display; a rate determiner configured to determine a frame rate of the graphics output; and

a frequency setter configured to set an operation frequency of the circuit based on the determined frame rate;
wherein the frequency setter is further configured to increase the operation frequency of the circuit if the determined frame
rate is below a pre-determined first threshold;

wherein the frequency setter is further configured to decrease the operation frequency of the circuit if the determined frame
rate is above a pre-determined second threshold; and

wherein the first threshold is lower than the second threshold.

US Pat. No. 9,858,052

DECENTRALIZED OPERATING SYSTEM

RAZER (ASIA-PACIFIC) PTE....

1. A method for managing multiple computing devices to interoperate to execute an instruction, the method comprising:
receiving, by a first instance of a decentralized operating system (“DCOS”), the instruction to be executed, wherein the first
instance of the DCOS is executing using resources associated with the multiple computing devices, each of the multiple computing
devices comprising a portion of the DCOS and an associated local operating system (“OS”) kernel that manages a given resource
associated with the computing device;

determining, by the first instance of the DCOS, an available resource to execute the instruction from the resources associated
with the multiple computing devices;

allocating, by the first instance of the DCOS, a portion of the available resources to execute the instruction, the allocation
comprising a notification to one or more of the multiple computing devices having associated resources that form a part of
the allocated portion of the available resource to execute the instruction;

gathering, by the first instance of the DCOS, a data block required to initiate execution of the instruction, wherein the
data block is stored in a memory of a particular computing device of the multiple computing devices;

executing, by the first instance of the DCOS, the instruction using the gathered data block and the allocated portion of the
available resource in the one or more of the multiple computing devices;

querying the local OS kernel of each computing device of the multiple computing devices, to determine a first local state
of one or more applications executed on the first instance of the DCOS;

detecting a set of computing devices managed by a second instance of the DCOS, wherein a second local state of the one or
more applications is logged by the second instance of the DCOS;

determining that the first local state and the second local state are out of sync; and
synchronizing the first local state with the second local state to obtain a consensus state of the one or more applications.

US Pat. No. 9,811,329

CLOUD BASED FILE SYSTEM SURPASSING DEVICE STORAGE LIMITS

RAZER (ASIA-PACIFIC) PTE....

1. A method for managing a device file system integrated with a storage server, comprising:
storing, at a computing device, metadata of a plurality of storage objects in a file system of the computing device without
permanently storing content data of the plurality of storage objects, wherein a storage server stores the content data of
the plurality of storage objects, wherein a file system manager controls the plurality of storage objects and handles file
system operations to the plurality of storage objects, wherein the file system manager is capable of controlling storage objects
having a total size exceeding a physical storage limit of the computing device;

visualizing a preview of one or more of the plurality of storage objects using the metadata of the one or more storage objects
as if the content data of the one or more storage objects are stored locally at the computing device, wherein the metadata
includes a sample presentation of the content data of the one or more storage objects, the sample presentation including at
least one of:

one or more bytes of a set of streaming data corresponding to a portion of the content data, or
a reduced-data-rate version of the content data;
identifying, at the computing device, at least one storage object of the plurality of storage objects that has a high possibility
to be read by the computing device;

retrieving content data of the at least one storage object from the storage server after the at least one storage object is
identified; and

storing, at the computing device, the content data of the at least one storage object for a time period.

US Pat. No. 9,841,825

KEYS DEACTIVATION SYSTEM AND METHOD

RAZER (ASIA-PACIFIC) PTE....

1. A system for controlling keys of human interface devices communicable with a computing device, the system comprising:
a first human interface device comprising a plurality of keys for communicating with a computing device, each of the plurality
of keys having a function associated therewith, the function associated with each of the plurality of keys executable by the
computing device;

wherein the plurality of keys are a set of undefined keys for deactivation;
a controller configured to communicatively intercouple the plurality of keys with the computing device, wherein the controller
is configured to disable any key of the plurality of keys by preventing electrical signals corresponding to actuation of the
key from being transmitted to the computing device;

a deactivation key;
wherein the deactivation key is configured to define at least one key of the set of undefined keys for deactivation upon actuating
the deactivation key a first time simultaneously with the at least one key of the set of undefined keys and thereafter releasing
the deactivation key and the at least one key of the set of undefined keys;

wherein actuating the deactivation key a second time disables the at least one key of the set of undefined keys that has been
defined;

an input means operable for activating a software application;
wherein the software application provides options for a user to control the disabling or changing of the function of a user-defined
key from the plurality of keys, the options comprising:

an option to allow the user to define a new function assignable to the user-defined key; and
an option to load a key-profile corresponding to the defined new function into a memory of the computing device upon system
startup.

US Pat. No. 9,569,073

METHOD FOR OUTPUTTING A MODIFIED AUDIO SIGNAL AND GRAPHICAL USER INTERFACES PRODUCED BY AN APPLICATION PROGRAM

RAZER (ASIA-PACIFIC) PTE....

1. A method for outputting a modified audio signal, the method comprising:
receiving from a user an input indicating an angle using a graphical user interface;
determining a parameter for a head-related transfer function based on the received input indicating the angle;
modifying an audio signal in accordance with the head-related transfer function based on the determined parameter; and
outputting the modified audio signal;
wherein the input indicating the angle is a graphical input indicating the angle by adjusting a position of a calibration
marker of the graphical user interface;

wherein the calibration marker of the graphical user interface is associated to an immovable virtual speaker location of the
graphical user interface;

wherein the calibration marker of the graphical user interface and the immovable virtual speaker location of the graphical
user interface lie on a geometric shape;

wherein the position of the calibration marker of the graphical user interface corresponds to a perceived audio origination
point;

wherein the immovable virtual speaker location of the graphical user interface represents a predetermined position of a surround
sound system; and

receiving from the user a further input indicating a head shape of the user;
wherein the parameter for the head-related transfer function is determined further based on the received further input indicating
the head shape of the user.

US Pat. No. 10,083,177

DATA CACHING AMONG INTERCONNECTED DEVICES

Razer (Asia-Pacific) Pte....

1. A method for caching data among multiple interconnected computing devices, the method comprising:transmitting, from a storage server, a first data set to a first computing device;
identifying a second computing device and a third computing device from a plurality of computing devices sharing a local area network with the first computing device;
determining, at the storage server, whether a first confirmation to store cache data for the first computing device at the second computing device is received from the second computing device and whether a second confirmation to store the cache data for the first computing device at the third computing device is received from the third computing device in response to requests to store the cache data for the first computing device at the second computing device and the third computing device;
in response to failing to receive the first confirmation from the second computing device or failing to receive the second confirmation from the third computing device, reinitiating identification of another computing device sharing the local area network with the first computing device;
in response to receiving the first confirmation from the second computing device and receiving the second confirmation from the third computing device, identifying a second data set as relevant to the first data set;
transmitting, from the storage server, the identified second data set to the second computing device and the third computing device; and
transmitting, from the storage server, an instruction to the first computing device, the instruction indicating that the second computing device and the third computing device store the cache data for the first computing device.

US Pat. No. 9,747,000

LAUNCHING APPLICATIONS ON AN ELECTRONIC DEVICE

RAZER (ASIA-PACIFIC) PTE....

1. A electronic device comprising:
one or more processors;
a display coupled to the one or more processors; and
one or more computer-readable media storing instructions executable by the one or more processors, wherein the instructions
program the one or more processors to:

save at least one of application state information or application data obtained, at least in part, from execution of an application
on the electronic device;

offload the application from the electronic device to a computing device over a network;
present, on the display, an application launcher user interface (UI);
receive, via the application launcher UI, a selection of the offloaded application;
send a request to the computing device based on the selection of the application;
receive, over the network, an application file corresponding to the application;
onload the application on the electronic device; and
execute the application on the electronic device in response, at least in part, to the selection of the application received
via the application launcher UI.

US Pat. No. 9,662,567

OPTIMIZING GAMING APPLICATIONS ACCESSED BY ELECTRONIC DEVICES

RAZER (ASIA-PACIFIC) PTE....

1. A method for prefetching gaming application data for an electronic device, the method comprising:
tracking, by a processor of the electronic device, access data for one or more gaming applications that have been accessed
by a user of the electronic device, wherein gaming data files associated with the one or more gaming applications are stored
in a remote storage server, the access data including information associated with access of the gaming data files by the one
or more gaming applications;

sending the access data to a server, wherein an analysis is performed by the server on the access data provided by the electronic
device;

receiving a prefetching profile from the server, wherein the prefetching profile identifies, based on the analysis, the gaming
data files that are likely to be accessed by the user of the electronic device, and further wherein the prefetching profile
identifies a likelihood that each of the gaming data files are to be accessed and a timeframe for which the likelihood of
access applies, the likelihood of access of the gaming data files being based on a first amount of time spent by the user
playing one or more game levels of the one or more gaming applications compared to a second amount of time spent by one or
more other users playing the one or more game levels;

storing the prefetching profile in a first storage of the electronic device;
for each gaming data file having a likelihood of access that is greater than a threshold likelihood, determining if the timeframe
specified by the prefetching profile for the likelihood of access of the gaming data files applies at a time when the determination
is made;

responsive to a determination that the timeframe for a specific gaming data file applies, prefetching a specific gaming data
file if the specific gaming data file is not available in a memory of the electronic device;

storing the prefetched gaming data file in a second storage of the electronic device; and
serving the prefetched gaming data file upon request by the user of the electronic device.

US Pat. No. 9,571,918

AUDIO SIGNAL OUTPUT DEVICE AND METHOD OF PROCESSING AN AUDIO SIGNAL

RAZER (ASIA-PACIFIC) PTE....

1. A method of processing an audio signal comprising:
processing a first audio signal based on an adaptive filter;
outputting the processed first audio signal through a speaker of a headset as an output signal;
picking up a second audio signal with a microphone, the second audio signal comprising a reflection of the output signal from
a pinna of a wearer of the headset;

generating a desired audio signal based on the first audio signal and a desired transfer function;
delaying the desired audio signal;
comparing the delayed desired audio signal and the second audio signal; and
modifying the adaptive filter based on the comparison and further based on a head-related transfer function.

US Pat. No. 9,087,659

OPTICALLY TRANSMISSIVE KEY SWITCH MECHANISM FOR DISPLAY-CAPABLE KEYBOARDS, KEYPADS, OR OTHER USER INPUT DEVICES

RAZER (ASIA-PACIFIC) PTE....

1. A key switch mechanism comprising a circuit module, a key cap having a top portion and a side wall extending therefrom,
and a linkage mechanism for guiding travel of the key cap substantially along a travel axis between a depressed position and
a released position, the linkage mechanism comprising:
a positioning board spatially displaced from the circuit module, the positioning board defining an aperture shaped and dimensioned
for receiving the key cap therethrough; and

a main link pivotably coupled to the positioning board, the main link further being pivotably coupled to the exterior of the
side wall of the key cap, the main link for substantially impeding tilt of the key cap away from the travel axis during travel
of the key cap through the aperture of the positioning board,

wherein the circuit module biases the key cap towards the released position and generates a control signal when the key cap
is displaced to the depressed position.

US Pat. No. 10,121,614

INPUT DEVICES

RAZER (ASIA-PACIFIC) PTE....

1. An input device comprising:a housing comprising an upper portion and a lower portion;
a key top provided at the upper portion;
a switch coupled to the key top;
a biasing element configured to provide a resistance, the biasing element comprising a first end and a second end, wherein the first end is coupled to the key top, and wherein the second end is coupled to the lower portion;
an adjustment mechanism configured to adjust the resistance of the biasing element by at least one of compressing or expanding the biasing element at the second end, in a direction at least substantially parallel to a distance between the upper portion and the lower portion;
wherein the second end is coupled to the lower portion via a lever member;
wherein the lever member comprises a joint at the lower portion, the lever member configured to rotate around the joint;
wherein the biasing element is attached to the lever member; and
wherein the lever member is coupled to the key top so that when the key top is depressed, the biasing element is depressed.

US Pat. No. 9,998,911

TRANSFERRING INFORMATION TO A MOBILE DEVICE

Razer (Asia-Pacific) Pte....

1. A mobile device comprising:a communication interface device; and
one or more processors, coupled to the communication interface device and configured to:
send a user information comprising a user communication identifier (ID) to a second mobile device, the user communication ID being used in place of a device communication ID associated with the communication interface device for a short-range radio communication sent via the communication interface device;
receive an indication that the user information has been received by the second mobile device; and
cease using the user communication ID on the mobile device based at least in part on the received indication.

US Pat. No. 9,776,078

APPLICATION STATE BACKUP AND RESTORATION ACROSS MULTIPLE DEVICES

RAZER (ASIA-PACIFIC) PTE....

1. A computer-implemented method comprising:
running an instance of a computer application at a first electronic device;
determining a backup event that occurs in the first electronic device, wherein the backup event suggests a backup of application
state data and the application state data represents an application state of the computer application at the backup event;

transmitting the application state data of the computer application to a remote storage service, in response to the backup
event;

determining a restore event that occurs in a second electronic device, wherein the restore event suggests a restore of the
application state of the computer application at the second electronic device; and

instructing the remote storage service to transmit the application state data of the computer application to the second electronic
device, in response to the restore event, so that the second electronic device restores the computer application to the application
state using the application state data,

wherein the step of transmitting includes transmitting the application state data of the computer application to a remote
storage service at a schedule depending on a type and a speed of a connection between the first electronic device and the
remote storage service, in response to the backup event.

US Pat. No. 9,712,985

REPURPOSING A MOBILE DEVICE

RAZER (ASIA-PACIFIC) PTE....

1. A mobile device comprising:
one or more processors; and
one or more computer-readable media storing instructions executable by the one or more processors, wherein the instructions
program the one or more processors to:

receive data comprising at least one of:
image data from an image sensor;
temperature data from a temperature sensor; or
sound data from a microphone;
determine, based at least in part on the received data that a fire is proximate to the mobile device by:
performing at least one recognition operation on the sound data received from the microphone to recognize a sound indicative
of the fire comprising at least one of a smoke alarm sound indicative of the fire, or a crackling or popping sound indicative
of the fire; and

based at least in part on recognizing the sound indicative of the fire, determining that the fire is proximate to the mobile
device; and

send, to an electronic device, a notification of the fire.

US Pat. No. 9,654,556

MANAGING APPLICATIONS ON AN ELECTRONIC DEVICE

RAZER (ASIA-PACIFIC) PTE....

1. An electronic device comprising:
one or more processors; and
one or more computer-readable media storing instructions executable by the one or more processors, wherein the instructions
program the one or more processors to:

save at least one of application state information or application data obtained, at least in part, from execution of an application
on the electronic device;

offload the application from the electronic device;
send an application file associated with the application from the electronic device to a computing device over a network;
send a request to the computing device for the application file;
receive the application file from the computing device;
onload the application on the electronic device; and
configure the application for execution on the electronic device with at least one of the application state information or
the application data,

wherein the instructions further program the one or more processors to onload the application by reinstalling the application
onto the electronic device, wherein the reinstalling retains the at least one of the saved application state information or
the saved application data saved on the electronic device.

US Pat. No. 9,513,726

ILLUMINATION BASED USER MOTION TRACKING DEVICES AND METHODS

RAZER (ASIA-PACIFIC) PTE....

1. A system comprising:
a surface comprising:
a first layer comprising a first luminescent composition of a first set of luminescent properties; and
a second layer distinct from the first layer, the second layer comprising a second luminescent composition of a second set
of luminescent properties, the first and second luminescent compositions providing the surface with a resultant set of luminescent
properties,

wherein portions of the surface are able to illuminate with the resultant set of luminescent properties,
wherein a profile of the surface illumination corresponds to a motion profile of an input source relative to the surface;
wherein the first layer is arranged over the second layer; and
wherein the second layer is configured to activate the first luminescent composition to illuminate, by emitting light for
receiving by the first layer.

US Pat. No. 10,114,472

SYSTEM AND METHOD FOR KEY FUNCTION SWITCHING

RAZER (ASIA-PACIFIC) PTE....

1. A first input device comprising:a communication interface configured to couple the first input device to a computing device, the computing device running an application, wherein the computing device is in communication with a second input device, the second input device comprising a key configured to trigger a first process in the application upon actuation of the key;
a button configured to trigger execution of a second process in the application upon actuation of the button; and
a switch configured to activate a re-configuration of each of the key and the button such that after the re-configuration, the key is configured to trigger a third process in the application upon actuation of the key and the button is configured to trigger a fourth process in the application upon actuation of the button;
wherein the second input device is different from the first input device;
wherein the switch of the first input device is different from the button of the first input device.

US Pat. No. 10,042,623

CLOUD BASED FILE SYSTEM SURPASSING DEVICE STORAGE LIMITS

Razer (Asia-Pacific) Pte....

1. A method for managing a device file system integrated with a storage server, the method comprising:storing, at a computing device, metadata of a plurality of storage objects in a file system of the computing device, wherein the storage server stores content data of the plurality of storage objects;
providing access to one or more of the plurality of storage objects as if the content data of the one or more storage objects are stored locally in the computing device;
receiving, at the computing device, a prefetching profile from a prefetching server, the prefetching profile specifying a set of the plurality of storage objects to be prefetched to the computing device, the prefetching profile comprising:
a likelihood of access within a first predetermined timeframe for each storage object of a first subset the set of storage objects; and
a likelihood of access within a second predetermined timeframe for each storage object of a second subset of the set of storage objects;
determining, at the computing device, at least one storage object of the set of storage objects that has the highest likelihood or the shortest predetermined timeframe of being accessed at the computing device based on the prefetching profile; and
caching, at the computing device, the content data of at least a portion of the at least one storage object.

US Pat. No. 9,836,287

STORAGE OPTIMIZATION IN COMPUTING DEVICES

RAZER (ASIA-PACIFIC) PTE....

1. A computer-implemented method for optimizing storage capacity of a computing device of a user, the method comprising:
receiving, at a server coupled to the computing device, a request to download multiple data files of the user to the computing
device;

determining, by the server, a device classification associated with the computing device and a user access pattern associated
with the multiple data files, wherein the user access pattern includes data associated with a frequency of access of a particular
data file associated with the multiple data files using the computing device;

determining a storage optimization policy to be performed in association with the request for downloading based on the user
access pattern and the device classification;

performing, by the server, a downsampling of a subset of the multiple data files based on the storage optimization policy
in response to the request; and

transmitting, by the server, the downsampled subset of the multiple data files to the computing device and the remaining set
of the multiple data files in original format.

US Pat. No. 9,817,442

SYSTEMS AND METHODS FOR PRESENTING VISUAL INTERFACE CONTENT

RAZER (ASIA-PACIFIC) PTE....

1. An automated method for presenting visual interface content comprising adjunct visual interface content during application
program execution, the adjunct visual interface content providing visual information associated with an application program
being run on a computing system, the method comprising:
coupling a keyboard to the computing system via a first connection port, the keyboard comprising:
a first interface comprising a first set of tactile keys and a touch sensor, the first set of tactile keys comprising a set
of QWERTY keys;

a second interface comprising a second set of display-enabled tactile keys, wherein each display-enabled key comprises a tactile
key and a display element;

the first connection port; and
a second connection port;
displaying the adjunct visual interface content using the first interface and the second interface;
receiving user input using at least one of the first set of tactile keys, the second set of display-enabled tactile keys or
the touch sensor;

transmitting user input through the first set of tactile keys and the second set of display-enabled tactile keys to a corresponding
Computer Programmable Logic Device;

displaying updated adjunct visual interface content on at least one of the first interface and the second interface in response
to an updated event in the application program execution,

wherein the updated event is triggerable by user input on at least one of the first interface and the second interface;
coupling an external device to the keyboard via the second connection port;
controlling the external device using at least one of the first set of tactile keys, the second set of display-enabled tactile
keys or the touch sensor; and

displaying at least one of digital content and controls corresponding to the external device, on the touch sensor.

US Pat. No. 10,110,331

RADIO COMMUNICATION DEVICES AND METHODS FOR CONTROLLING A RADIO COMMUNICATION DEVICE

RAZER (ASIA-PACIFIC) PTE....

1. A first set top box comprising:a Received Signal Strength Indication determination circuit configured to determine a Received Signal Strength Indication of a transmission from a radio communication device to the first set top box;
a Received Signal Strength Indication transmitter configured to transmit a first information indicating the determined Received Signal Strength Indication to a second set top box;
a Received Signal Strength Indication receiver configured to receive from the second set top box a second information indicating a Received Signal Strength Indication of a transmission from the radio communication device to the second set top box;
a pairing determination circuit configured to determine whether to pair with the radio communication device based on the first information and the second information; and
a pairing circuit configured to pair with the radio communication device based on the determination of the pairing determination circuit.

US Pat. No. 10,398,001

CONTROL METHODS, COMPUTER-READABLE MEDIA, AND CONTROLLERS

RAZER (ASIA-PACIFIC) PTE....

1. A control method comprising:determining geometric information about respective geometries of respective housings of a plurality of light sources, wherein the geometric information comprises positions of one or more lighting elements on each of the plurality of light sources;
determining a photographic representation of an environment in which the plurality of light sources are provided;
determining spatial information about the plurality of light sources based on the geometric information and based on the photographic representation;
determining control information for the plurality of light sources based on the spatial information,
wherein determining the control information comprises mapping a lighting effect to the plurality of light sources based on the spatial information, and modulating timing and color space parameters of the plurality of light sources to smoothly span the lighting effect across the environment based on the spatial information; and
controlling the plurality of light sources based on the control information to operate sequentially, so as to create the lighting effect, wherein the lighting effect appears to travel across the plurality of light sources.

US Pat. No. 10,114,440

APPLYING POWER MANAGEMENT BASED ON A TARGET TIME

Razer (Asia-Pacific) Pte....

1. An electronic device comprising:one or more processors;
a display coupled to the one or more processors; and
one or more computer-readable media storing instructions executable by the one or more processors, for programming the one or more processors to:
determine a target time to which a battery charge is to last;
determine, at a first time instance, a first current amount of the battery charge;
determine a first set of user activities likely to occur between the first time instance and the target time;
determine a first amount of the battery charge predicted to be depleted between the first time instance and the target time based on the determined first set of user activities;
based at least partially on the first amount of the battery charge predicted to be depleted, apply a first set of power management restrictions to a first set of resources of the electronic device for a first category of applications, and apply a second set of power management restrictions to a second set of resources of the electronic device for a second category of applications;
determine, at a second time instance subsequent to the first time instance, a second current amount of the battery charge;
determine a second set of user activities likely to occur between the second time instance and the target time;
determine a second amount of the battery charge predicted to be depleted between the second time instance and the target time based on the determined second set of user activities; and
based at least partially on the second amount of the battery charge predicted to be depleted, apply a third set of power management restrictions to the first set of resources of the electronic device for the first category of applications, and apply a fourth set of power management restrictions to the second set of resources of the electronic device for the second category of applications,
wherein the third set of power management restrictions is less restrictive than the first set of power management restrictions, and the fourth set of power management restrictions is less restrictive than the second set of power management restrictions.

US Pat. No. 9,961,190

SYSTEM AND METHOD FOR PERFORMING MOBILE TELEPHONE CALLING AND/OR MESSAGING OPERATIONS IN-GAME DURING COMPUTER GAME APPLICATION EXECUTION

RAZER (ASIA-PACIFIC) PTE....

1. A method for providing mobile telephony operations, the method comprising:coupling a mobile telephone to a computer system separate from the mobile telephone, using a wireless communication interface,
providing at least one of mobile telephone calling operations and mobile telephone messaging operations using the mobile telephone;
providing a remote mobile application in the mobile telephone;
sending at least one of mobile telephony notifications or mobile telephony content from the remote mobile application to a mobile telephony module in the computer system, by way of the wireless communication interface, wherein the mobile telephony module is configured to provide a mobile telephony user interface responsive to input received from a gamer during execution of a computer game application in the computer system, for selectively controlling the at least one of mobile telephone calling operations and mobile telephone messaging operations, in a manner that at least substantially avoids interrupting (a) gamer perception of ongoing game play, and (b) gamer interaction with a visual game environment provided by the computer game application;
wherein the mobile telephony module is configured to update the mobile telephony user interface based on the at least one of mobile telephony notifications or mobile telephony content sent from the remote mobile application.

US Pat. No. 9,717,985

FRAGMENT-BASED MOBILE DEVICE APPLICATION STREAMING UTILIZING CROWD-SOURCING

RAZER (ASIA-PACIFIC) PTE....

1. A method comprising:
in response to an indication received at a server system associated with a first party to initiate a crowd sourced compute
task, sending, by the server system, one or more messages to identify a plurality of computing devices that can be used to
execute the crowd sourced compute task, the crowd sourced compute task including execution of a plurality of computer simulations
to determine a plurality of executable application fragments of a mobile game application, the identified computing devices
being made available for use in association with the crowd sourced compute task by a plurality of second parties;

sending, by the server system, at least one message to the identified computing devices to initiate execution of the crowd
sourced compute task at the identified computing devices and to distribute to the identified computing devices compute jobs
that are part of the crowd sourced compute task for determining the plurality of application fragments, including a first
application fragment and a second application fragment determined based on execution of the distributed compute jobs at the
identified computing devices,

wherein each application fragment of the plurality of application fragments corresponds to a portion of the mobile game application,
wherein the portion of the mobile game application that the first application fragment corresponds to is any of a scene in
the mobile game application, a level of the mobile game application, or a help portion of the mobile game application;

receiving, by the server system, fragment information associated with the application fragments from the identified computing
devices that executed the distributed compute jobs;

storing, by the server system, the fragment information at a storage device;
determining, by the server system, that the second application fragment follows the first application fragment based on a
fragments relationship data structure, the fragments relationship data structure associating the first application fragment
with the second application fragment, based on an analysis of the fragment information that indicates that the second application
fragment follows the first application fragment during operation of the mobile game application; and

streaming, by the server system, via a network component, the second application fragment to a mobile game computing device
based on the determination that the second application fragment follows the first application fragment,

wherein the first application fragment corresponds to an activity in a first operating system environment, wherein the second
application fragment corresponds to the activity in a second operating system environment, the first operating system environment
being a different type of operating system environment from the second operating system environment.

US Pat. No. 9,665,139

COOLING SYSTEM FOR A COMPUTER AND METHOD FOR ASSEMBLING THE SAME

RAZER (ASIA-PACIFIC) PTE....

1. A computer system comprising:
a housing with a protrusion,
wherein the protrusion has at least substantially vertical walls extending out of the housing to form a foot of the housing;
a heat generating device;
a heat exchanger;
a blower configured to provide an air flow through the heat exchanger; and
a heat pipe configured to transfer heat from a first end of the heat pipe to a second end of the heat pipe;
wherein the first end of the heat pipe is coupled to the heat generating device;
wherein the second end of the heat pipe is coupled to the heat exchanger;
wherein the second end of the heat pipe is arranged in the foot such that the air flow through the heat exchanger is free
from obstruction from the second end of the heat pipe;

wherein the at least substantially vertical walls hug the second end of the heat pipe.

US Pat. No. 10,252,159

APPLICATION STATE BACKUP AND RESTORATION ACROSS MULTIPLE DEVICES

Razer (Asia-Pacific) Pte....

1. A computer-implemented method comprising:running an instance of a computer application at a first electronic device;
determining a backup event that occurs in the first electronic device, wherein the backup event suggests a backup of application state data and the application state data represents an application state of the computer application at the backup event, wherein the backup event is an event from events including the instance of the computer application being closed, the instance of the computer application being paused, the instance of the computer application has been continuously running for a preconfigured period of time, the instance of the computer application being switched by another application, a battery level of the first electronic device being below a preconfigured value, the first electronic device turning off, the first electronic device switching to standby mode, a clock of the first electronic device reaching a preconfigured time of day, and the first electronic device being at a preconfigured location;
transmitting the application state data of the computer application to a remote storage service in response to the backup event;
determining a restore event that occurs in a second electronic device, wherein the restore event suggests a restoration of the application state of the computer application at the second electronic device; and
instructing the remote storage service to transmit the application state data of the computer application to the second electronic device in response to the restore event, wherein the second electronic device restores the computer application to the application state using the application state data.

US Pat. No. 9,965,489

PRIORITIZING FILE SYNCHRONIZATION IN A DISTRIBUTED COMPUTING SYSTEM

Razer (Asia-Pacific) Pte....

1. A computer-implemented method for synchronizing a computing device of a user with a distributed backup system, the method comprising:receiving, at a server in the distributed backup system, a request to synchronize the computing device with the server to download data files of the user to the computing device;
determining, by the server, whether there is previous synchronization between the server and the computing device with regard to the data files of the user;
responsive to determining that there is no previous synchronization between the server and the computing device with regard to the data files of the user, performing, by the server, a priority synchronization with the computing device, the priority synchronization identifying a first subset of the data files as priority files and a second subset of the data files as non-priority files, the priority files identified based at least in part on an access pattern of the data files by the user on a set of other computing devices associated with the user;
responsive to determining that there is previous synchronization between the server and the computing device with regard to the data files of the user, performing, by the server, a normal synchronization with the computing device, the data files having the same priority in the normal synchronization;
transmitting, by the server, the priority files to the computing device; and
generating, by the server, a downgraded format version of a non-priority data file of the non-priority files, the downgraded format version of the non-priority data file having a smaller file size than an original format version of the non-priority data file stored at the server, wherein the request is a first request and the non-priority data file includes an audio-video file stored at the server, the method further comprising:
receiving, by the server, a second request from the user to download the original format version of the audio-video file to the computing device; and
transmitting, by the server, in response to the second request, the original format version of the audio-video file to the computing device,
wherein transmitting the priority files to the computing device includes transmitting at least one of the priority files from one of the other computing devices that is within a threshold proximity to the computing device.

US Pat. No. 9,881,312

RADIO COMMUNICATION SYSTEMS AND RADIO COMMUNICATION METHODS

RAZER (ASIA-PACIFIC) PTE....

1. A radio communication system comprising:
a portable device;
and
a server;
wherein the portable device comprises:
a wearable device configured to repeatedly transmit signals to indicate presence of the wearable device to a beacon receiving
device in vicinity of the wearable device; and

a radio communication device in short range communication with the wearable device;
wherein the server comprises:
a receiver configured to receive an indication from the beacon receiving device, the indication indicative of the presence
of the wearable device;

a transmitter configured to transmit data to the radio communication device upon receiving the indication; and
a determination circuit configured to detect a further wearable device in vicinity of the wearable device;
wherein upon detection of the further wearable device, the transmitter is further configured to instruct the radio communication
device and a further radio communication device in short range communication with the further wearable device, to respectively
control the wearable device and the further wearable device to broadcast information.

US Pat. No. 9,720,665

UTILIZING USER DEVICES FOR BACKING UP AND RETRIEVING DATA IN A DISTRIBUTED BACKUP SYSTEM

RAZER (ASIA-PACIFIC) PTE....

1. A computer-implemented method comprising: receiving, at a server in a computing system where multiple data files of a user
are backed up based on multiple data backup policies to the server or across multiple computing devices associated with the
user, a request from a first computing device of the computing devices to access a data file of the data files stored at the
server, each of the computing devices associated with one or more of the data backup policies for storing the data files;
determining, by the server, whether a second computing device of the computing devices contains the data file; responsive
to a determination that the second computing device contains the data file, determining, by the server, whether the second
computing device is in proximity to the first computing device; and responsive to a determination that the second computing
device is in proximity to the first computing device, causing, by the server, the first computing device to access the data
file from the second computing device, the second computing device being an edge cache of the computing system for the data
file.

US Pat. No. 10,313,871

TRANSFERRING INFORMATION TO A MOBILE DEVICE

Razer (Asia-Pacific) Pte....

1. A method comprising:receiving, from a first mobile device, by a processor of a second mobile device, via a short-range radio connection with the first mobile device, at least a portion of application information for an application, the application information including saved application state information saved by the first mobile device;
installing, by the processor of the second mobile device, the application on the second mobile device;
configuring, by the processor of the second mobile device, a state of the application on the second mobile device based on the saved application state information received from the first mobile device;
receiving, by the processor of the second mobile device, from the first mobile device, a user communication identifier to use in place of a device communication identifier associated with a communication interface device on the second mobile device; and
sending a communication, via the communication interface device, to a third device previously paired with the first mobile device, the communication including the user communication identifier in place of the device communication identifier.

US Pat. No. 10,237,678

HEADSET DEVICES AND METHODS FOR CONTROLLING A HEADSET DEVICE

RAZER (ASIA-PACIFIC) PTE....

1. A headset device comprising:a display configured to provide a plurality of views of at least one of a virtual reality environment or a three-dimensional game to a user;
an orientation determination circuit configured to determine an orientation of the headset device;
a left emitter array comprising a first plurality of sound emitters;
a right emitter array comprising a second plurality of sound emitters; and
a controller configured to control for each sound emitter of the first plurality of sound emitters and of the second plurality of sound emitters at least one of elevation, depth, sound pressure level, or a head related transfer function of the sound emitted by the respective sound emitter based on the determined orientation,
wherein the determined orientation corresponds to a positional nature of the headset device within the at least one of the virtual reality environment or the three-dimensional game,
wherein each of the left emitter array and the right emitter array is configured to provide a sound curtain that covers a respective entire ear of a user via at least one baffle, the at least one baffle having at least one angled surface that is configured to direct sound to the respective entire ear.

US Pat. No. 10,207,182

HAPTICS DEVICES AND METHODS FOR CONTROLLING A HAPTICS DEVICE

RAZER (ASIA-PACIFIC) PTE....

1. A haptics device comprising:an input circuit configured to receive audio input;
a phase determination circuit configured to determine a phase of the audio input;
a peak amplitude determination circuit configured to determine a peak amplitude of the audio input; and
a haptics controller configured to control at least one actuator based on the determined phase of the audio input and based on the determined peak amplitude of the audio input, wherein the haptics controller is further configured to position a channel corresponding to the audio input based on the determined phase of the audio input and based on the determined peak amplitude of the audio input.

US Pat. No. 10,209,515

FILTERING DEVICES AND FILTERING METHODS

RAZER (ASIA-PACIFIC) PTE....

1. A filtering device coupled to a camera, the filtering device comprising:an ultraviolet light sensor configured to sense ultraviolet light;
an infra-red light sensor configured to sense infra-red light;
a visible light sensor configured to sense visible light;
at least one of a natural light determination circuit, an artificial light determination circuit, or a reflected light determination circuit, wherein the natural light determination circuit is configured to determine a portion of natural light in light received at the camera based on at least one of the ultraviolet light sensor or the visible light sensor, wherein the artificial light determination circuit is configured to determine a portion of artificial light in the light received at the camera based on at least one of the ultraviolet light sensor or the visible light sensor, wherein the reflected light determination circuit is configured to determine a portion of reflected light in the light received at the camera based on at least one of the ultraviolet light sensor or the visible light sensor;
a filter selection circuit configured to select a filter based on at least two outputs selected from a list of outputs consisting of: an output of the ultraviolet light sensor; an output of the infra-red light sensor; and an output of the visible light sensor, wherein the filter selection circuit is configured to select the filter based on at least one of the determined portion of natural light, the determined portion of artificial light, or the determined portion of reflected light; and
a filtering circuit configured to apply the selected filter to the light received at the camera to enhance images captured by the camera.

US Pat. No. 10,147,570

INPUT DEVICES

RAZER (ASIA-PACIFIC) PTE....

1. An input device comprising:a housing comprising an upper portion and a lower portion;
a key top provided at the upper portion;
a switch coupled to the key top;
a biasing element configured to provide a resistance, the biasing element comprising a first end and a second end, wherein the first end is coupled to the key top, and wherein the second end is coupled to the lower portion;
an adjustment mechanism configured to adjust the resistance of the biasing element by at least one of compressing or expanding the biasing element at the second end, in a direction at least substantially parallel to a distance between the upper portion and the lower portion;
wherein the second end is coupled to the lower portion via a lever member;
wherein the lever member comprises a joint at the lower portion, the lever member configured to rotate around the joint;
wherein the biasing element is attached to the lever member; and
wherein the lever member is coupled to the key top so that when the key top is depressed, the biasing element is depressed.

US Pat. No. 10,133,306

MOUNTING DEVICES

RAZER (ASIA-PACIFIC) PTE....

1. A head mounted display device comprising:a housing; and
a mounting device configured to mount a further device in the housing, the mounting device comprising:
a first arm, wherein the first arm is rotatable around an axis;
a second arm, wherein the second arm is rotatable around the axis;
wherein the first arm comprises at least one first engagement member configured to engage with the further device;
wherein the second arm comprises at least one second engagement member configured to engage with the further device;
wherein the mounting device further comprises a coiled spring provided in the axis and engaging to the first arm and the second arm;
wherein the coiled spring is configured to force the at least one first engagement member and the at least one second engagement member towards each other; and
wherein an angle between the first and second arms on one side of the axis is smaller than an opposing angle between the first and second arms on an opposite side of the axis when the first engagement member and the second engagement member engage with the further device.

US Pat. No. 10,115,303

METHODS FOR CONTROLLING A HEADSET DEVICE, HEADSET DEVICES, COMPUTER READABLE MEDIA, AND INFRARED SENSORS

RAZER (ASIA-PACIFIC) PTE....

1. A method for controlling a headset device, the method comprising:determining an opening of an input element in a program used by a user;
capturing an infrared image of a vicinity of the headset device upon the determination of the opening of the input element;
determining a presence of a pre-determined peripheral device in the vicinity of the headset device based on the infrared image that is captured upon the determination of the opening of the input element; and
controlling a display of the headset device to display a representation of the pre-determined peripheral device based on the determined presence of the pre-determined peripheral device and the determination of the opening of the input element.

US Pat. No. 10,067,578

PROFILE MANAGEMENT METHOD

RAZER (ASIA-PACIFIC) PTE....

1. A computing system comprising:a controller module configured to receive a client data from a computing system, wherein the computing system is in signal communication with a user-interface device;
a storage module having stored thereon a plurality of device profiles, each of the plurality of device profiles having configuration data associated therewith;
wherein the controller module is further configured to determine whether the plurality of device profiles comprise a matching device profile matching the client data,
wherein the controller module is further configured to determine in the plurality of device profiles, a closest matching device profile closest matching the client data, if the plurality of device profiles do not comprise a matching device profile;
a processor module configured to associate one of the matching device profile or the closest matching device profile with the client data;
wherein the configuration data associated with the one of the matching device profile or the closest matching device profile associated with the client data, is downloadable to the computing system for configuring operation of the user-interface device with the computing system.

US Pat. No. 9,973,591

HEADSET DEVICE AND A DEVICE PROFILE MANAGEMENT SYSTEM AND METHOD THEREOF

RAZER (ASIA-PACIFIC) PTE....

1. A profile management method comprising:receiving client data provided by a computing system, the client data comprising an identifier data, a device data and a platform data, wherein the identifier data is indicative of a user of an audio device in communication with the computing system, wherein the device data is descriptive of a type of the audio device and wherein the platform data is descriptive of an operating platform of the computing system;
matching a user identifier of a plurality of user identifiers with the identifier data, wherein each user identifier of the plurality of user identifiers is associated with a set of device profiles;
identifying one device profile of the set of device profiles associated with the user identifier matched with the identifier data, that corresponds to the device data, wherein each device profile of the set of device profiles has a configuration data associated therewith;
processing the configuration data based on the platform data to enable the configuration data that is processed to be operable with the computing system;
detecting coupling of the audio device to the computing system;
downloading the configuration data that is associated with the identified one device profile and that is processed, from a server to the computing system, upon the detection of the coupling; and
configuring the audio device for operation with the computing system in response to the ear pinnae configuration associated with the user of the audio device;
wherein the audio device is a computer peripheral audio device;
wherein the configuration data caters to the type of the audio device.

US Pat. No. 9,713,768

GAME CONTROLLER

RAZER (ASIA-PACIFIC) PTE....

1. A game controller comprising:
a housing;
a plurality of game controls disposed on a first side of the housing;
a lever comprising an orifice with a tapered edge;
a first switch configured to contact a first end region of the lever;
a second switch configured to contact a second end region of the lever;
a bracket configured to pivotably engage the lever;
a biasing means configured to provide a biasing force to the lever, the biasing means disposed within the orifice, wherein
a first end of the biasing means abuts the bracket and a second end of the biasing means abuts the tapered edge; and

a securing means anchoring against the biasing means, the securing means fastenable via the orifice to detachably secure the
lever to a second side of the housing;

wherein the lever is configured to pivot about the bracket, to a neutral position when no force is applied thereon,
wherein the lever is configured to pivot to a position, the position being one of a first position in which the first end
region contacts the first switch to activate the first switch, or a second position in which the second end region contacts
the second switch to activate the second switch, wherein the position depends on a force applied on the lever.

US Pat. No. 10,258,876

GAMING CONTROLLER FOR MOBILE DEVICE AND METHOD OF OPERATING A GAMING CONTROLLER

RAZER (ASIA-PACIFIC) PTE....

1. A gaming controller for a mobile device, comprising:a first hardware gaming controller comprising a first programmable controller and at least one input switch, the at least one input switch of the first hardware gaming controller configured to be manipulated by a user's left thumb and/or fingers to generate a left controller input with the first programmable controller; and
a second hardware gaming controller comprising a second programmable controller and at least one input switch, the at least one input switch of the second hardware gaining controller configured to be manipulated by a user's right thumb and/or fingers to generate a right controller input with the second programmable controller;
the first hardware gaming controller and the second hardware gaming controller each configured to be removably coupleable with the mobile device, the mobile device comprising a mobile device processor coupled to a memory module and configured to run a software application;
wherein the first hardware gaming controller is configured to be mechanically secured to a side portion of a housing of the mobile device, and the second hardware gaming controller is configured to be mechanically secured to an opposing side portion of the housing of the mobile device;
wherein the mobile device processor is configured to receive the left controller input and the right controller input as distinct data packets; and
wherein each of the data packets corresponding to the left controller input and the right controller input comprises a respective identifier to identify the corresponding data packet as being from the first hardware gaming controller or the second hardware gaming controller; and
a virtual controller module configured to combine the left controller input and the right controller input received in the mobile device processor into a single controller input representation for providing to the software application.

US Pat. No. 10,209,999

DEVICES, UPDATERS, METHODS FOR CONTROLLING A DEVICE, AND METHODS FOR CONTROLLING AN UPDATER

RAZER (ASIA-PACIFIC) PTE....

1. A system comprising:an updater;
a plurality of devices to be updated; wherein each device of the plurality of devices comprises:
a bootloader;
a memory configured to store firmware data for controlling the device;
a processor configured to operate in a device operation mode or in a bootloader mode;
an interface;
a validity checker configured to check whether the firmware data stored in the memory is valid;
a mode changer configured to change from the device operation mode to the bootloader mode if it is determined that the firmware data stored in the memory is not valid; and
at least one of a key or a combination of keys configured to invoke a user recovery mechanism when held as the device is plugged into a system;
wherein in the user recovery mechanism, the processor is configured to operate in the bootloader mode;
wherein the device operation mode is a mode in which the processor controls the bootloader to load the firmware data stored in the memory;
wherein the bootloader mode is a mode in which the processor controls the bootloader to send an identifier of the device using the interface, to receive firmware data from the updater using the interface and to store the firmware data in the memory;
wherein the updater is configured to detect the plurality of devices and determine from the plurality of devices that at least one device is in the bootloader mode and to automatically flash the at least one device in the bootloader mode with a matching firmware;
wherein each device comprises at least one of an input device or an output device; and
wherein the firmware data comprises data for controlling the at least one of the input device or the output device
wherein the bootloader is configured to protect manufacturing data during flashing of a matching firmware by the updater; and
wherein the manufacturing data includes tri-color light calibration values.

US Pat. No. 9,990,371

CLASSIFICATION OF DATA OBJECTS IN A DISTRIBUTED FILE SYSTEM BASED ON APPLICATION CREATION AND/OR ACCESS INFORMATION

Razer (Asia-Pacific) Pte....

1. A computer-implemented method comprising:retrieving, by a cloud-based server, data objects from a distributed file system;
processing, by the cloud-based server, the data objects to determine applications on one or more remote computing devices that created or accessed respective ones of the data objects;
classifying the data objects according to corresponding applications that created or accessed the data objects resulting in application classification information, the application classification information associating each data object with a set of applications that created or accessed the data object;
storing the application classification information in a cloud-based memory system associated with the cloud-based server;
identifying modified data objects in the distributed file based system;
accessing, by the cloud-based server, a synchronization priority scheme for a particular remote computing device, wherein the synchronization priority scheme indicates a priority for synchronizing the modified data objects to the particular remote computing device; and
modifying, by the cloud-based server, the synchronization priority scheme based on the application classification information and a plurality of applications installed on the particular remote computing device,
wherein a modified data object is deprioritized in the synchronization priority scheme when the plurality of applications installed on the particular remote computing device and the associated set of applications that created or accessed the modified data object are disjoint, wherein a regular modified data object is batched in a first synchronization batch, wherein a deprioritized modified data object is batched in a second synchronization batch, wherein data objects in the second synchronization batch are synchronized to the particular remote computing device based on a type of an access network, and wherein data objects in the first synchronization batch are synchronized to the particular remote computing device regardless of the type of the access network.

US Pat. No. 10,346,481

CUSTOMIZING OPERATING SYSTEM BASED ON DETECTED CARRIER

Razer (Asia-Pacific) Pte....

1. A computer-implemented method comprising:detecting, by a computing device, a first identity of a first carrier network to which the computing device is connected or is to be connected, during a network identification process executed on the computing device;
detecting, by the computing device, a second identity of a second carrier network to which the computing device is to be connected, the second identity of the second carrier network being different from the first identity of the first carrier network;
sending a request including the first identity of the first carrier network and the second identity of the second carrier network to a remote registration service;
receiving an instruction from the remote registration service identifying a first distribution of an operating system that meets carrier-specific requirements of the first carrier network, wherein the first distribution of the operating system is determined based on the first identity of the first carrier network;
loading the first distribution of the operating system on the computing device for connecting to the first carrier network;
receiving an instruction from the remote registration service identifying a second distribution of the operating system that meets carrier-specific requirements of the second carrier network, wherein the second distribution of the operating system is determined based on the second identity of the second carrier network;
determining that the computing device is connected to or is to be connected to the second carrier network; and
updating the operating system on the computing device by loading the second distribution of the operating system for connecting to the second carrier network, the second distribution of the operating system including one or more customized features including at least one of an icon, a user interface setting, or an application associated with an identity of an account of a user, the loading the second distribution including:
determining whether the loading the second distribution requires a reboot of the computing device; and
when the loading the second distribution requires the reboot, rebooting the computing device and loading the second distribution of the operating system with the one or more customized features,
when the loading the second distribution does not require a reboot, loading the second distribution of the operating system by applying the one or more customized features to the operating system currently running on the computing device.

US Pat. No. 10,311,108

CLOUD-BASED FILE PREFETCHING ON ELECTRONIC DEVICES

Razer (Asia-Pacific) Pte....

1. A method performed by a processor on a server that is connectable to a plurality of client devices over a network, the method comprising:receiving a usage profile from a first one of the client devices, wherein the usage profile includes access statistics of a plurality of applications or files at the first client device, wherein at least some of the plurality of applications or files are stored remotely from the first client device at a storage location over the network;
analyzing collectively a plurality of usage profiles received from the plurality of client devices, respectively, to determine a global access pattern based on the plurality of usage profiles;
generating a prefetching profile for the first client device based on the global access pattern, wherein the prefetching profile specifies at least a first application or file and a second application or file of the plurality of applications or files to prefetch from the storage location based at least partially on the first application or file and the second application or file being predicted to be accessed on the first client device and a sequence in which multiple applications or files of the plurality of applications or files were accessed on the first client device, wherein the prefetching profile specifies a first likelihood value of the first application or file being accessed within a first predetermined time period that starts from a present time and a second likelihood value of the second application or file being accessed within a second predetermined time period that starts from the present time, wherein the analyzing the usage profiles to generate the prefetching profile includes assigning a higher weight to more recent usage patterns determined across the plurality of client devices when generating the prefetching profile; and
sending the prefetching profile to the first client device, wherein files are prefetched from the storage location to the first client device based on the prefetching profile.

US Pat. No. 10,306,410

MOBILE DEVICES, METHODS FOR CONTROLLING A MOBILE DEVICE, AND COMPUTER READABLE MEDIA

RAZER (ASIA-PACIFIC) PTE....

1. A mobile device comprising:a location determination circuit configured to determine a location of the mobile device;
a goal determination circuit configured to determine an exercise amount goal of a user of the mobile device;
a target determination circuit configured to determine a plurality of target locations and a sequence of the plurality of target locations based on the determined location and based on the determined exercise amount goal, the sequence of the plurality of target locations defining an order in which the plurality of target locations is to be visited, wherein the target determination circuit is configured to determine the plurality of target locations and the sequence of the plurality of target locations so that the determined exercise amount goal is fulfilled if the user moves to the plurality of target locations according to the order; and
a notification circuit configured to notify the user about the plurality of target locations and the sequence.

US Pat. No. 10,275,696

INFORMATION ENCODING METHODS, INFORMATION DECODING METHODS, COMPUTER-READABLE MEDIA, INFORMATION ENCODERS, AND INFORMATION DECODERS

RAZER (ASIA-PACIFIC) PTE....

9. An information decoder comprising:a receiving circuit configured to receive a video comprising a plurality of frames, each frame comprising an image of a keyboard comprising backlit keys;
an identification circuit configured to identify corner backlit keys of the keyboard in the image;
a spacing determination circuit configured to determine spacing of each backlit key in the image based on relative distance of the corner backlit keys;
a first determination circuit configured to determine for each backlit key a color, so as to determine a plurality of colors;
a second determination circuit configured to determine sequentially, for the plurality of frames, from the plurality of colors an indicator for the frame and a subset information encoded in the frame based on the plurality of colors; and
a third determination circuit configured to determine an encoded information based on the subset information for the plurality of frames.

US Pat. No. 10,274,696

OPTICAL SYSTEMS AND HEAD MOUNTED DISPLAYS

RAZER (ASIA-PACIFIC) PTE....

1. A head mounted display comprising:an optical system comprising:
a first optical arrangement comprising a first optical axis;
a second optical arrangement comprising a second optical axis at least substantially parallel to the first optical axis;
a first movement member configured to move the first optical arrangement with respect to the second optical arrangement in a first direction and a second direction,
wherein the first direction is a direction at least substantially parallel to the first optical axis,
wherein the second direction is a direction at least substantially perpendicular to the first optical axis; and
a second movement member configured to move the second optical arrangement with respect to the first optical arrangement in the first direction and the second direction, wherein the first optical arrangement and the second optical arrangement are moved independently from each other in the first direction and the second direction.

US Pat. No. 10,275,053

INPUT DEVICE WITH A ROTATIONAL SIDE BUTTON

RAZER (ASIA-PACIFIC) PTE....

1. An input device comprising:a housing comprising an upper housing surface and a bottom housing surface, opposite the upper housing surface, wherein the bottom housing surface comprises an actuator opening;
a plurality of buttons; and
an actuator configured to rotate the plurality of buttons relative to the housing;
wherein the plurality of buttons is positioned on a side of the housing;
wherein the actuator is positioned at a bottom of the housing such that the actuator is operable from the actuator opening of the bottom housing surface;
wherein the plurality of buttons are provided on a dial;
wherein the actuator comprises a rotational wheel;
wherein the actuator is connected to an axis of the dial; and
wherein the actuator is fixed to the plurality of buttons.

US Pat. No. 10,152,263

DATA STORAGE SYSTEMS, COMPUTING SYSTEMS, METHODS FOR CONTROLLING A DATA STORAGE SYSTEM, AND METHODS FOR CONTROLLING A COMPUTING SYSTEM

RAZER (ASIA-PACIFIC) PTE....

1. A data storage system comprising:a first storage device;
a second storage device;
a data receiver configured to receive data to be stored in the data storage system and an indicator indicating a storage profile for the data, wherein the data comprises a computer program;
a data loader configured to load at least a part of the data to an application processor for execution of the computer program; and
a storage controller configured to:
store the data on the first storage device upon reception of the data and the indicator by the data receiver; and
determine, upon loading of the at least part of the data for the execution of the computer program, based on the indicator whether to store a portion of the data on the first storage device or to store the portion of the data on the second storage device.

US Pat. No. 10,134,549

OPTICALLY TRANSMISSIVE KEY ASSEMBLIES FOR DISPLAY-CAPABLE KEYBOARDS, KEYPADS, OR OTHER USER INPUT DEVICES

RAZER (ASIA-PACIFIC) PTE....

1. A device comprising:a body comprising a light permeable region, the body configured to be resiliently displaceable between a first position and a second position relative to a flexible display screen, the second position located in closer proximity to the flexible display screen than the first position, the flexible display screen one of comprising and associated with a set of surface magnets;
an optical film carried by or coupled to the light permeable region of the body, wherein the optical film is configured to enhance intensity of light transmitted through the light permeable region; and
a set of device magnets coupled to the body and configured to generate an electromagnetic field with the set of surface magnets, the electromagnetic field one of facilitates and effectuates biasing of the body at the first position, the set of device magnets positioned one of at a perimeter of the body and external to an area of the body defined the body's perimeter,
wherein the electromagnetic field generated between the set of surface magnets and the set of device magnets provides a resistance associated with displacement of the body from the first position towards the second position;
wherein a surface of the light permeable region is configured to follow a contour of the flexible display screen.

US Pat. No. 10,343,070

ACCESS GRANT DETERMINATION DEVICES AND METHODS FOR DETERMINING ACCESS GRANT

RAZER (ASIA-PACIFIC) PTE....

1. An access grant determination device comprising:a memory; and
at least one processor coupled to the memory and configured to:
transmit a notification of a challenge to a first user device;
determine whether a first user on the first user device accepts or rejects the challenge;
determine whether a request for providing a game is from a user who has lost a previous game in a pre-determined period of time;
provide the request to start the game to the first user on the first user device and to a second user on a second user device when the first user accepts the challenge and when the request for providing the game is not from a user who has lost a previous game in the pre-determined period of time, the first user device having a control of a third device before the providing of the request to start the game;
determine a winner of the game; and
grant the control of the third device from the first user device to the second user device when the second user is determined to be the winner of the game, the control of the third device being released by the first user device in response to the control being granted to the second user device.

US Pat. No. 10,146,790

GAME STATE SYNCHRONIZATION AND RESTORATION ACROSS MULTIPLE DEVICES

Razer (Asia-Pacific) Pte....

1. A computer-implemented method comprising:running, by a distributed system, a first instance of an application at a first device;
determining, by the distributed system, a sync event that occurs in the first device;
storing, by the distributed system, a state data of the first instance of the application, wherein the storing comprises transmitting a difference between a current state data of the first instance of the application and a previously stored state data of the first instance of the application in response to the sync event;
determining, by the distributed system, a second device to which the state data is to be synchronized;
sending, by the distributed system, the state data to the second device; and
synchronizing, by the distributed system, a second instance of the application at the second device with the state data, wherein the second instance of the application is paused during the synchronizing.

US Pat. No. 10,105,593

FILE PREFETCHING FOR GAMING APPLICATIONS ACCESSED BY ELECTRONIC DEVICES

Razer (Asia-Pacific) Pte....

1. A computer-implemented method comprising:tracking, by a processor of a first client device associated with a first user, a first access data for a gaming application that has been accessed on the first client device;
sending the first access data to a server, wherein the server is configured to perform a collective analysis of the first access data sent by the first client device and a second access data for the gaming application, wherein the second access data is received by the server from one or more other client devices associated with one or more other users that are different from the first user, wherein the collective analysis includes determining for the first client device, based on the first access data and the second access data, a prefetching profile that specifies a plurality of likelihood values for a plurality of gaming data files associated with the gaming application that are likely to be accessed on the first client device within a specific timeframe;
receiving the prefetching profile from the server;
based on the prefetching profile, determining a set of the plurality of gaming data files that are indicated to be likely to be accessed on the first client device that are not available at the first client device; and
prefetching and storing at the first client device the set of gaming data files prior to the set of gaming data files being requested to be accessed on the first client device.

US Pat. No. 10,057,726

MANAGING USER DATA ON AN ELECTRONIC DEVICE

Razer (Asia-Pacific) Pte....

1. An electronic device comprising:one or more processors; and
one or more computer-readable media storing instructions executable by the one or more processors,
wherein the instructions program the one or more processors to:
determine that the electronic device is to be out of communication with a network during at least a portion of an upcoming event;
determine, based at least in part on an event category of the upcoming event, one or more first pieces of user data stored at a network storage to download to the electronic device prior to the upcoming event; and
determine one or more second pieces of user data to delete from a local storage of the electronic device to, at least in part, make space available in the local storage for the one or more first pieces of user data,
wherein determining the one or more second pieces of user data to delete from the local storage of the electronic device is based, at least in part, on the event category and is further based, at least in part, on user data stored on, or to be stored on, another electronic device that is to be accessible during the upcoming event.

US Pat. No. 10,410,808

KEY ASSEMBLIES, KEYBOARDS AND METHODS FOR PROVIDING A KEY ASSEMBLY

RAZER (ASIA-PACIFIC) PTE....

1. A key assembly comprising:a housing comprising a sliding groove on an inner surface of the housing and further comprising a contact surface above the sliding groove;
a plunger at least partially fitted into the housing, the plunger comprising a protrusion, wherein the plunger has a first end and a second end opposite to the first end;
a sound producing member provided at least partially in the sliding groove, the sound producing member configured to produce sound by impacting the contact surface;
a key cap coupled to the first end of the plunger;
a rubber dome provided under the second end of the plunger;
a membrane switch arranged under the rubber dome;
wherein the sound producing member comprises a connecting portion obliquely extending to an abutting portion, the abutting portion arranged below the protrusion;
wherein the plunger is displaceable downwards to deform the connecting portion using the protrusion and to collapse the rubber dome such that pressure is exerted on the membrane switch, the deformed connecting portion being reboundable;
wherein the sound producing member is vertically displaceable along the sliding groove such that upon rebounding of the deformed connecting portion, the sound producing member displaces upwards to impact the contact surface;
wherein the housing is a contiguous structure comprising a lower wall, the contact surface, and an upper wall,
wherein the lower wall surrounds a bottom portion of the plunger,
wherein the contact surface extends from the lower wall towards the plunger,
wherein the upper wall extends from the contact surface towards the key cap; and
wherein the key cap at least partially envelopes the upper wall.

US Pat. No. 10,200,464

IN-APP APPLICATION CASTING

Razer (Asia-Pacific) Pte....

1. A computer-implemented method comprising:receiving, in response to user input received during an execution of a source application executing as a foreground process on an operating system of a source computing device, an invocation command;
in response to the invocation command:
causing a casting application process to execute as a foreground process of the operating system of the source computing device and thereby cause the source application to execute as a background process of the operating system of the source computing device, and
causing the source application to backup state data of the source application that indicates a set of properties of the source application execution at a first time;
capturing a screenshot of the source computing device executing the source application;
transmitting the state data to a set of destination computing devices via a server that synchronizes the state data with the set of destination computing devices;
displaying a selection menu representing each of the set of destination computing devices using the screenshot as a background image, wherein the selection menu is provided by the casting application process executing as a foreground process; and
transmitting, in response to a user selection of a destination computing device from the selection menu, a cast command to the destination computing device instructing the destination computing device to execute the source application on the destination computing device using the state data, whereby a user of the destination computing device can continue uninterrupted execution of the source application on the destination computing device at a second time.

US Pat. No. 10,123,189

ELECTRONIC DEVICE SYSTEM RESTORATION BY TAPPING MECHANISM

Razer (Asia-Pacific) Pte....

1. A computer-implemented method comprising:detecting, at a first computing device, that a second computing device is in proximity to the first computing device;
receiving a message from the second computing device;
determining, based on the received message, that the second computing device does not contain a user credential of the first computing device and the second computing device is a target device for a system restoration, wherein the first computing device is a source device for the system restoration;
transmitting, from the first computing device to the second computing device in response to the determining, the user credential of the first computing device; and
sending, from the first computing device to the second computing device in response to the determining, a location where a cloud storage service stores a copy of the system data of the first computing device such that the second computing device is able to access the location to receive the copy of the system data of the first computing device from the cloud storage service to restore the system state of the first computing device on the second computing device;
wherein the system data is stored in the first computing device, and the copy of the system data is backed up in the cloud storage service, wherein the second computing device uses the user credential received from the first computing device and the copy of the system data received from the cloud storage service to restore the system state of the first computing device on the second computing device,
wherein the user credential expires on the second computing device after a predetermined system event in the second computing device, and wherein a user logs in both the first computing device and the second computing device concurrently using the user credential before the user credential expires on the second computing device.