Technology for a mobile device is described. The mobile device can include a vibration motor operable to generate a vibration, and a sensor operable to capture a plurality of vibration signals that result from the vibration. The mobile device can provide the plurality of vibration signals to a model running on the mobile device. The model can include a plurality of predefined patterns that correspond to vibration signals produced by mobile devices residing on different surfaces. The mobile device can identify, using the model, a predefined pattern in the plurality of predefined patterns that substantially corresponds to the plurality of vibration signals based on a confidence level that exceeds a threshold. The mobile device can determine a type of surface on which the mobile device resides based on the predefined pattern identified using the model.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A controller in a mobile device, the controller comprising: an interface to communicate with a vibration motor of the mobile device to generate a vibration when the mobile device is in a state of non-use by a user; and logic to: provide first vibration signals to a model, the first vibration signals corresponding to the vibration, the model to include a plurality of predefined patterns that correspond to second vibration signals produced by mobile devices in different environments; identify, using the model, one of the predefined patterns that corresponds to the first vibration signals based on a confidence level that exceeds a threshold; determine an environment of the mobile device based on the one of the predefined patterns; and modify a functionality of the mobile device based on the environment.
2. The controller of claim 1 , wherein the logic is to: modify a user preference or setting based on the environment of the mobile device.
3. The controller of claim 1 , wherein the logic to modify the functionality of the mobile device based on the environment by one or more of: turning on or off a wireless module in the mobile device, locking or unlocking the mobile device, increasing or decreasing a volume of the mobile device, turning on or off audio notifications for the mobile device, or turning on or off vibratory notifications of the mobile device.
4. The controller of claim 1 , wherein the model includes a plurality of predefined device orientations.
5. The controller of claim 4 , wherein the logic is to: provide orientation information of the mobile device to the model; identify an orientation of the mobile device, using the orientation information provided to the model; and determine the environment of the mobile device based on a combination of the one of the predefined patterns and the orientation of the mobile device.
6. The controller of claim 1 , wherein ones of the predefined patterns correspond to different environments, at least some of the predefined patterns to account for whether the mobile device includes a case, the different environments to include one or more of: a clothing surface, a container surface, a soft surface, a rigid surface, a hand surface, a leather surface, a wood surface or a paper surface.
7. The controller of claim 1 , wherein the first vibration signals correspond to an orientation and a position of the mobile device.
8. The controller of claim 1 , wherein the logic is to determine a type of the environment of the mobile device when the mobile device is in an idle mode.
9. The controller of claim 1 , wherein the logic is to receive the first vibration signals in response to a trigger event that triggers the vibration, the trigger event to include an incoming voice call at the mobile device or an incoming electronic message at the mobile device.
10. The controller of claim 1 , wherein the logic is to execute an application that is configured to determine a composition of an object on which the mobile device is located based on the one of the predefined patterns.
11. The controller of claim 1 , wherein the model is a neural network or a machine learning model.
12. A mobile device, comprising: a vibration motor operable to generate a vibration; a sensor operable to capture first vibration signals that result from the vibration; and one or more processors to: communicate with the vibration motor to generate a vibration when the mobile device is in a state of non-use by a user; provide the first vibration signals to a model running on the mobile device, the model to include a plurality of predefined patterns that correspond to second vibration signals produced by mobile devices in different environments; identify, using the model, one of the predefined patterns that corresponds to the first vibration signals based on a confidence level that exceeds a threshold; determine an environment of the mobile device based on the one of the predefined patterns; and modify a functionality of the mobile device based on the environment.
13. The mobile device of claim 12 , wherein the one or more processors are further to: modify a user preference or setting based on the environment of the mobile device.
14. The mobile device of claim 13 , wherein the one or more processors are further to modify the functionality of the mobile device based on a type of the environment to include one or more of: turning on or off a wireless module in the mobile device, locking or unlocking the mobile device, increasing or decreasing a volume of the mobile device, turning on or off audio notifications for the mobile device, or turning on or off vibratory notifications for the mobile device.
15. The mobile device of claim 12 , wherein the vibration motor is to generate the vibration in response to a trigger event, the trigger event to include an incoming voice call or an incoming electronic message.
16. The mobile device of claim 12 , wherein the one or more processors are further to execute an application that is configured to determine a composition of an object on which the mobile device is located based on the predefined patterns.
17. The mobile device of claim 12 , wherein the first vibration signals correspond to an orientation and a position of the mobile device.
18. The mobile device of claim 12 , wherein the one or more processors are further to receive the model that includes the predefined patterns from a server.
19. The mobile device of claim 12 , further including: a gyroscope operable to capture orientation information of the mobile device, the one or more processors further to: receive the orientation information of the mobile device; provide the orientation information to the model running on the mobile device; identify an orientation of the mobile device using the orientation information provided to the model; and determine the environment of the mobile device based on a combination of the one of the predefined patterns and the orientation information.
20. The mobile device of claim 12 , wherein the plurality of predefined patterns correspond to different environments, at least some of the predefined patterns to account for whether the mobile device includes a case, the different environments to include one or more of: a clothing surface, a container surface, a soft surface, a rigid surface, a leather surface, a wood surface or a paper surface.
21. The mobile device of claim 12 , wherein the model is a neural network or a machine learning model.
22. The mobile device of claim 12 , wherein the one or more processors are to determine a type of the environment of the mobile device when the mobile device is idle.
23. A server operable to determine an environment of a mobile device, the server comprising: memory; and one or more processors to: provide first vibration signals to a model running on the server, the first vibration signals corresponding to a vibration generated at the mobile device when the mobile device is in a state of non-use by a user, the model to include a plurality of predefined patterns that correspond to second vibration signals produced by mobile devices in different environments; identify, using the model, one of the predefined patterns that corresponds to the first vibration signals based on a confidence level that exceeds a threshold; determine an environment of the mobile device based on the one of the predefined patterns; and send an instruction to the mobile device to modify a functionality of the mobile device.
24. The server of claim 23 , wherein the one or more processors are further to generate the model to include ones of the predefined patterns that correspond to different environments.
25. The server of claim 23 , wherein the one or more processors are further to: receive training vibration signals generated for the environment; apply linear predictive coding (LPC) to the training vibration signals; generate the one of the predefined patterns that corresponds to the environment using the training vibration signals; and train or test the model using the one of the predefined patterns that corresponds to the environment.
26. The server of claim 23 , wherein the one or more processors are further to: receive orientation information from the mobile device, the orientation information to indicate an orientation of the mobile device; provide the orientation information to the model running on the server; identify the orientation of the mobile device using the orientation information provided to the model; and determine the environment of the mobile device based on a combination of the one of the predefined patterns and the orientation information.
27. The server of claim 23 , wherein the plurality of predefined patterns corresponds to different environments, at least some of the predefined patterns to account for whether the mobile device includes a case, the different environments to include one or more of: a clothing surface, a container surface, a soft surface, a rigid surface, a leather surface, a wood surface or a paper surface.
28. The server of claim 23 , wherein the model is a neural network or a machine learning model.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
March 31, 2020
March 2, 2021
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.