System and method for providing a magnetic-based controller for a mobile electronic device
A system comprises a mobile electronic device having a magnetometer sensor and one or more software modules executable by the mobile electronic device. The system further includes a controller having one or more magnets, where the controller may be detachably attached to the mobile electronic device or its case. The magnets and at least a portion of the controller may move relative to the mobile electronic device when attached to the mobile electronic device, where such relative movement is detectable by the magnetometer sensor. The software modules, when executed, may cause the mobile electronic device to perform an action based on magnetic field signals received from the magnetometer sensor that are generated in response to the relative movement of the magnets and at least the portion of the controller.
1 . A system comprising:
a mobile electronic device comprising a magnetometer sensor and one or more software modules executable by the mobile electronic device, wherein the magnetometer sensor is configured to measure a magnetic field and to generate magnetic field signals; and
a controller comprising a plurality of magnets, wherein the controller is configured to be detachably attached to a rear surface of the mobile electronic device or rear surface of a case of the mobile electronic device,
wherein the plurality of magnets and at least a portion of the controller are configured to be movable relative to the mobile electronic device when attached to the mobile electronic device, where such relative movement is detectable by the magnetometer sensor and comprises a translation of the plurality of magnets and at least the portion of the controller in a direction normal to the mobile electronic device when the controller is attached to the rear surface of the mobile electronic device or rear surface of the case of the mobile electronic device,
wherein the one or more software modules, when executed by the mobile electronic device, are configured to:
receive magnetic field signals from the magnetometer sensor that are generated in response to said relative movement of the plurality of magnets and at least the portion of the controller, and
cause the mobile electronic device to perform an action based on said magnetic field signals.
2 . The system of claim 1 , wherein the mobile electronic device comprises one of a cellular phone, a tablet, and a laptop.
3 . The system of claim 1 , wherein said relative movement of the plurality of magnets and at least the portion of the controller further comprises a rotation of the plurality of magnets and at least the portion of the controller around a vector normal to the mobile electronic device.
4 . The system of claim 1 , wherein said relative movement of the plurality of magnets and at least the portion of the controller further comprises a change in angle of the plurality of magnets and at least the portion of the controller relative to a plane of the mobile electronic device.
5 . The system of claim 1 , wherein the controller comprises a grip accessory configured to expand and collapse in a direction normal to the mobile electronic device.
6 . The system of claim 1 , wherein the action comprises at least one of enabling or disabling a sound output by the mobile electronic device, display of an image, a lighting function, a camera feature, a user interface control, and a wireless communication features.
7 . The system of claim 1 , wherein the one or more software modules are configured to determine that a state transition for the controller has occurred when a spike of the magnetic field signals above a threshold is detected.
8 . The system of claim 1 , wherein the one or more software modules are further configured to cause the mobile electronic device to perform the action based on a combination of said magnetic field signals and signals from an accelerometer of the mobile electronic device.
9 . The system of claim 1 , wherein the one or more software modules are configured to determine a magnetic field profile of the controller based on said magnetic field signals from the magnetometer sensor that are generated in response to said relative movement of the plurality of magnets and at least the portion of the controller.
10 . The system of claim 9 , wherein the one or more software modules are configured to determine a type of the controller based on the magnetic field profile of the controller.
11 . The system of claim 1 , wherein the controller is further configured to wirelessly communicate with the mobile electronic device.
12 . A system comprising:
a mobile electronic device comprising a magnetometer sensor and one or more software modules executable by the mobile electronic device, wherein the magnetometer sensor is configured to measure a magnetic field and to generate magnetic field signals;
a controller comprising one or more magnets, wherein the controller is configured to be detachably attached to the mobile electronic device or to a case of the mobile electronic device;
wherein the one or more magnets and at least a portion of the controller are configured to be movable relative to the mobile electronic device when attached to the mobile electronic device, where such relative movement is detectable by the magnetometer sensor,
wherein the one or more software modules, when executed by the mobile electronic device, are configured to:
receive magnetic field signals from the magnetometer sensor that are generated in response to said relative movement of the one or more magnets and at least the portion of the controller, and
cause the mobile electronic device to perform an action based on said magnetic field signals,
wherein at least two of an x, y, and z component of the magnetic field are measured at each of a plurality of time steps to determine a total effective magnetic change resulting from said relative movement of the one or more magnets and at least the portion of the controller.
13 . The system of claim 12 , wherein the one or more software modules are further configured to cause the mobile electronic device to perform the action based on a combination of said magnetic field signals and signals from an accelerometer of the mobile electronic device.
14 . The system of claim 12 , wherein the one or more software modules are configured to determine a magnetic field profile of the controller based on said magnetic field signals from the magnetometer sensor that are generated in response to said relative movement of the one or more magnets and at least the portion of the controller.
15 . The system of claim 14 , wherein the one or more software modules are configured to determine a type of the controller based on the magnetic field profile of the controller.
16 . A system comprising:
a mobile electronic device comprising a magnetometer sensor and one or more software modules executable by the mobile electronic device, wherein the magnetometer sensor is configured to measure a magnetic field and to generate magnetic field signals;
a controller comprising a plurality of magnets, wherein the controller is configured to be detachably attached to a rear surface the mobile electronic device or a rear surface of a case of the mobile electronic device;
wherein the plurality of magnets and at least a portion of the controller are configured to be movable relative to the mobile electronic device when attached to the mobile electronic device, where such relative movement is detectable by the magnetometer sensor and comprises a change in angle of the plurality of magnets and at least the portion of the controller relative to a plane of the mobile electronic device when the controller is attached to the rear surface of the mobile electronic device or rear surface of the case of the mobile electronic device,
wherein the one or more software modules, when executed by the mobile electronic device, are configured to:
receive magnetic field signals from the magnetometer sensor that are generated in response to said relative movement of the plurality of magnets and at least the portion of the controller, and
cause the mobile electronic device to perform an action based on said magnetic field signals.
17 . The system of claim 16 , wherein said relative movement of the plurality of magnets and at least the portion of the controller further comprises a rotation of the plurality of magnets and at least the portion of the controller around a vector normal to the mobile electronic device.
18 . The system of claim 16 , wherein said relative movement of the plurality of magnets and at least the portion of the controller further comprises a translation of the plurality of magnets and at least the portion of the controller in a direction normal to the mobile electronic device.
19 . The system of claim 16 , wherein the one or more software modules are further configured to cause the mobile electronic device to perform the action based on a combination of said magnetic field signals and signals from an accelerometer of the mobile electronic device.
20 . The system of claim 16 , wherein the one or more software modules are configured to determine a magnetic field profile of the controller based on said magnetic field signals from the magnetometer sensor that are generated in response to said relative movement of the plurality of magnets and at least the portion of the controller.
21 . The system of claim 20 , wherein the one or more software modules are configured to determine a type of the controller based on the magnetic field profile of the controller.