WO2011085250A1 - Methods and apparatus to disable text message input using accelerometer of mobile communication device - Google Patents
Methods and apparatus to disable text message input using accelerometer of mobile communication device Download PDFInfo
- Publication number
- WO2011085250A1 WO2011085250A1 PCT/US2011/020581 US2011020581W WO2011085250A1 WO 2011085250 A1 WO2011085250 A1 WO 2011085250A1 US 2011020581 W US2011020581 W US 2011020581W WO 2011085250 A1 WO2011085250 A1 WO 2011085250A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- acceleration
- value
- mobile device
- velocity
- signal
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72448—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
- H04M1/72463—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions to restrict the functionality of the device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/02—Constructional features of telephone sets
- H04M1/23—Construction or mounting of dials or of equivalent devices; Means for facilitating the use thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2250/00—Details of telephonic subscriber devices
- H04M2250/10—Details of telephonic subscriber devices including a GPS signal receiver
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2250/00—Details of telephonic subscriber devices
- H04M2250/12—Details of telephonic subscriber devices including a sensor for measuring a physical value, e.g. temperature or motion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/027—Services making use of location information using location based information parameters using movement velocity, acceleration information
Definitions
- Embodiments described herein relate generally to motion detection of an object, and more particularly to methods and apparatus for disabling functionality of a mobile communication device based on the detected motion,
- a non-transitory processor-readable medium stores code representing instructions that when executed cause a processor to receive a value representing an acceleration of a mobile device.
- the code further represents instructions that when executed cause the processor to receive a value representing a velocity of the mobile device when the value representing the acceleration exceeds a first predetermined threshold.
- the code further represents instructions that when executed cause the processor to send a disable signal to an input module of the mobile device when the value representing the velocity exceeds a second predetermined threshold.
- FIG. 1 is a schematic block diagram of a mobile device located within a moving vehicle according to an embodiment.
- FIG. 2 is a schematic block diagram of a mobile device including motion detection and global positioning satellite (GPS) modules, according to an embodiment.
- GPS global positioning satellite
- FIG. 3 is a top view of a mobile telephone displaying a message indicating that the telephone's keyboard has been disabled due to speed, according to an embodiment.
- FIG. 4 is a flowchart of a method of calculating the acceleration and velocity of a mobile communication device and disabling a function of the device if the velocity exceeds a predetermined threshold, according to an embodiment.
- FIG. 1 is a schematic block diagram of a mobile device located within a moving vehicle according to an embodiment.
- a mobile device can be physically located on or within a moving vehicle such as an automobile, motorcycle, or boat such that the mobile device moves along with the vehicle at the same ground or air velocity.
- the mobile device can be physically coupled to a component of the vehicle.
- the mobile device can be held by or on the person of a passenger of the vehicle.
- the mobile device can be temporarily mounted within the passenger compartment of the vehicle or otherwise located within the vehicle.
- FIG. 2 is a schematic block diagram of a mobile device including motion detection and global positioning satellite (GPS) modules, according to an embodiment. More specifically, FIG. 2 illustrates a mobile device 200 including a memory 210, a processor 220, a communication module 230, a motion detection module 240, a GPS module 250, an input device 260 and an output device 270.
- the motion detection module 240 and GPS module 250 send signals including device position and motion information to the communication module 230.
- the communication module 230 sends signals to output device 270 and input device 260.
- the communication module 230 can send signals to the output device 270 for relaying information regarding temporary disabled functionality to a user of the mobile device (not shown).
- the communication module 230 can send one or more signals to the input device 260 to temporarily disable or re-enable the input device 260.
- the mobile device 200 can be, for example, any mobile computing and/or communication device, such as a cellular telephone, smartphone, pager, personal digital assistant (PDA), or portable computer.
- the mobile device 200 can allow communication over various protocols via one or more hardware-based and/or software-based communication modules such as communication module 230.
- the mobile device 200 can mclude hardware and/or software configured to allow user input, such as a keyboard, voice command system, camera, or other input device such as input device 260.
- the mobile device 200 can include one or more antennae (not shown) for transmitting and receiving communication signals.
- the mobile device 200 can mclude an output device for display of information to a user, such as output device 270.
- the memory 210 can be any suitable computer memory.
- the memory can be random-access memory (RAM), read-only memory (ROM), flash memory, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), and/or other suitable memory.
- RAM random-access memory
- ROM read-only memory
- EPROM erasable programmable read-only memory
- EEPROM electrically erasable programmable read-only memory
- memory 210 can be configured to store code representing processor instructions for execution by processor 220 and/or store data received from communication module 230.
- Processor 220 can be any suitable processor capable of executing computer instructions and of receiving data from communication module 230.
- processor 220 can be a microcontroller, a field-programmable gate array (FPGA), an application specific integrated circuit (ASIC), and/or any other suitable processor.
- FPGA field-programmable gate array
- ASIC application specific integrated circuit
- Communication module 230 can be any suitable combination of hardware and/or software configured to allow for transmission and receipt of user communications such as, for example, electronic mail ("e-mail"), text messages sent via the Short Message Service (SMS) or Multimedia Messaging Sendee (MMS) protocols, or instant messages, in some embodiments, communication module 230 can be configured to calculate a spatial orientation, position, velocity and/or acceleration of mobile device 200, in some embodiments, communication module 230 can be a software application (or "app") configured to operate on a smartphone device such as an Apple iPhone, RIM BlackBerry or Google Android compatible phone, In some embodiments, communication module can be, for example, a chat software application, instant messaging application, or other user-to-user messaging application. In some embodiments, communication module 230 can be configured to run as a background process of an operating system or other embedded software executing on mobile device 200. For example, in some embodiments communication module 230 can be configured to run resident in memory 210 while other processes are executed.
- e-mail electronic mail
- SMS Short Message Service
- communication module 230 can send and receive signals with other hardware and/or software modules included in the mobile communication device 200 to perform one or more of its core functions.
- communication module 230 can send signals to a software module external to communication module 230 that is associated with the presentation and functionality of an on-screen keyboard.
- communication module 230 can include a standard software module associated with the presentation and functionality of an on-screen keyboard, or, alternatively, its own implementation of a keyboard or other relevant software module.
- communication module 230 can be configured to periodically request and receive orientation, position, velocity and/or acceleration information associated with mobile device 200. For example, in some embodiments, communication module 230 can send a request to a motion detection module operativelv or physically coupled to mobile device 200, such as motion detection module 240 or GPS module 250. In some embodiments, communication module 230 can make such a request every 1/10 of a second. In some embodiments, communication module 230 can make such a request at a more-frequent or less-frequent time interval.
- communication module 230 can then receive the mobile device motion information and use the information to determine an instantaneous acceleration of mobile device 200,
- the received mobile device motion information can include, for example, a value representing a current acceleration of the mobile device (i.e., an instantaneous acceleration), [0017] If the calculated instantaneous acceleration exceeds a predetermined threshold, communication module 230 can be configured to verify thai the mobile device 200 is in substantial motion by communicating with a global positioning satellite (GPS) module such as GPS module 250, (Alternatively, communication module 230 can communicate with an external module and/or component, such as an external GPS module operatively and/or physically coupled to the mobile device 200.) Because GPS modules can in some instances require significant system resources and thus result in substantial battery drain, in some embodiments the GPS module 250 can be queried only in instances where the communication module 230 has determined that the mobile device 200 is experiencing significant acceleration based on information received from the motion detection device 240.
- GPS global positioning satellite
- the communication module 230 can send a signal to the GPS module 250 to both initialize (i.e., "turn on") the GPS module 250 and perform the query described above.
- communication module 230 can receive a signal from GPS module 250, the signal including a value representing a current velocity of the mobile device. If the value representing the current velocity of the mobile device ("the velocity' ' ') exceeds a predetermined threshold, communication module 230 can perform one or more actions. For example, in some embodiments, communication module 230 can disable its message transmission functionality by, for example, disabling one or more modules included in communication module 230 and/or disabling one or more modules external to communication module 230 associated with message transmission. Alternatively, communication module 230 can send a disable signal to input device 260 configured to temporarily disable functionality of input device 260.
- communication module 230 can be configured to send a signal to output device 270, instructing the device to display a message indicating the functionality that has been temporarily disabled.
- communication module 230 can send a signal to input device 260 configured to disable user input.
- input device 260 is an on-screen keyboard
- communication module 230 can send a signal to input device 260 configured to "gray out" the keys of the on-screen keyboard and disable their functionality such that user input is not possible.
- communication module 230 can be configured to send a signal to one or more external hardware components, such as an on-board vehicle computing system and/or other component.
- communication module 230 can continue to periodically query motion detection module 240 and/or GPS module 250 to determine if the mobile device 200 is still in motion. If, based on information received from motion detection module 240 and/or GPS module 250, communication module 230 determines that the mobile device 200 is no longer in motion or is in motion at a velocity or acceleration below a predetermined threshold, communication module 230 can be configured to send one or more signals. For example, communication module 230 can re-enable its communication functionality by enabling functionality associated with one or more modules within communication module 230 and/or one or more hardware- and/or software-based modules external to communication module 230 that are included in or coupled to the mobile device 200.
- communication module 230 can send a signal to output device 270 instructing the output device to display a message indicating that the relevant communication functionality has been re-enabled. In some embodiments, communication module 230 can send a signal to input device 260 to re-enable its functionality.
- Motion detection module 240 can be any combination of hardware and/or software configured to detect physical movement of the mobile device 200.
- motion detection module 240 can be an accelerometer.
- motion detection module 240 can send one or more signals to various other hardware and/or software modules included in or operatively coupled to the mobile device 200.
- motion detection module 240 can send one or more signals to communication module 230 in response to a device position or movement request.
- motion detection module 240 can determine a two- or three-dimensional spatial orientation of the mobile device 200.
- motion detection module 240 can determine an acceleration of the mobile device 200.
- motion detection module 240 can determine a vector or directional component of movement of the mobile device 200 in the x, y and z dimensions or directions.
- GPS module 250 can be any suitable combination of hardware and/or software configured to determine a longitudinal and latitudinal position of the mobile device 200 using a global positioning satellite system or network.
- GPS module 250 can be an application specific integrated circuit (ASIC),
- Input device 260 can be any suitable input device.
- input device 260 can be a keyboard such as a tactile keyboard or on-screen keyboard.
- input device 260 can be a microphone configured to receive voice instructions, a pointing device such as a mouse, a stylus, a electronic drawing tablet, and/or other input device physically or operatively coupled to the mobile device 200 and capable of receiving inpu t from a user.
- Output device 270 can be any suitable electronic display.
- output device 270 can be a liquid crystal display (LCD), a series of light-emitting diodes (LEDs), a series of organic light-emitting diodes (OLEDs), an electronic ink display, or other device employing suitable display technology.
- the mobile device 200 does not include a display.
- the mobile detection device 200 can include a speaker, a haptic indicator (e.g., a vibration device) and/or any other output device configured to convey information to a user,
- the mobile device 200 can be configured to send information to and/or receive information from one or more hardware and/or software components coupled to a vehicle (not shown in FIG. 2).
- the mobile device 200 can exchange information with a component of an automobile in which it is currently physically located.
- the mobile device 200 can exchange information with the automobile component via one or more information transfer methods such as Ethernet, Bluetooth, Ultra-wideband (UWB), wireless Universal Serial Bus (wireless USB), WiFi, and/or Radio Frequency Identification (RFID).
- Ethernet Ethernet
- UWB Ultra-wideband
- wireless USB wireless Universal Serial Bus
- WiFi Wireless Fidelity
- RFID Radio Frequency Identification
- communication module 230 can be configured to receive and process irifomiation received from a vehicle hardware arid/or software component, such as vehicle performance information, nearby object and/or locale information, regulator ⁇ ' and/or legal irifomiation relevant to a current physical location of the vehicle, etc, In some embodiments, communication module 230 can receive information related to a rate of acceleration between two or more vehicles such as a vehicle in which the mobile device 200 is currently located and a second vehicle.
- vehicle hardware arid/or software component such as vehicle performance information, nearby object and/or locale information, regulator ⁇ ' and/or legal irifomiation relevant to a current physical location of the vehicle, etc.
- communication module 230 can receive information related to a rate of acceleration between two or more vehicles such as a vehicle in which the mobile device 200 is currently located and a second vehicle.
- communication module 230 can send information to and/or receive information from an onboard storage memory coupled to a vehicle (not shown). For example, in some embodiments, communication module 230 can receive performance information associated with the vehicle from the onboard storage memory. In some embodiments, the communication module 230 can send an instruction to a hardware and/or software component of the mobile device 200 to initiate a notification or alert based on information received from the onboard storage memory, In some embodiments, such an alert can include one or more of: an audio alert, a ⁇ -up alert, a vibration-based alert, and/or other visual alert.
- FIG. 3 is a top view of a mobile telephone displaying a message indicating that the telephone's keyboard has been disabled due to speed, according to an embodiment.
- Mobile telephone 300 includes a keyboard 310 and a display 320 currently displaying a notification message 330.
- Mobile telephone 300 can be any mobile telephone capable of sending and receiving text-based communication such as SMS text messages, MMS messages, instant messages, e-mails, and the like.
- mobile telephone 300 can be a smartphone, such as an Apple iPhone, a RIM Blackberry device, or a Windows Mobile- enabled telephone.
- mobile telephone 300 can be a Voice Over Internet Protocol (VoIP) telephone, a cordless telephone, two-way radio, or other wireless communication device.
- VoIP Voice Over Internet Protocol
- mobile telephone 300 can store and/or execute code and/or other instructions sufficient to cause a processor to execute a text-based messaging software application, such as an Apple iPhone or Google Android "app".
- Keyboard 310 can be any suitable keyboard capable of receiving user input.
- keyboard 310 can be an on-screen keyboard or a tactile keyboard comprised of physical keys and/or buttons.
- keyboard 310 can be any user input, device included on, in, or operatively coupled to mobile telephone 300,
- Display 320 can be any electronic display.
- display 320 can. be a liquid crystal display (LCD), a series of light-emitting diodes (LEDs), a series of organic light-emitting diodes (QLEDs), an electronic ink display, or other device employing suitable display technology.
- the mobile telephone 320 does not include a display.
- the mobile telephone 320 can include a speaker, a haptic indicator (e.g., a vibration device) and/or any other output device configured to convey information to a user,
- Notification message 330 can be any combination of alphanumeric characters, text, images, sounds, or the like capable of conveying to the user that some communication functionality has been temporarily disabled on the mobile telephone 300.
- notification message 330 is a textual notification output by display 320 and including the words "Keyboard disabled due to speed.”
- notification message 330 can be received from a hardware or software module such as the communication module (not shown) discussed in connection with FIG. 3 above.
- notification message 330 can be updated or changed based on the current availability of one or more mobile device features such as text or voice communication.
- a communication module can send a signal to display 320 to update notification message 330 with new text or other information based on a new availability or lack of availability of one or more mobile device functionalities.
- the updated version of notification message 330 can include information associated with a current velocity, acceleration, spatial position, or other current physical property or characteristic of the mobile telephone 300.
- FIG. 4 is a flowchart that of a method of calculating an acceleration and velocity of a mobile communication device and disabling a function of the device if the velocity exceeds a predetermined threshold, according to an embodiment.
- a communication module located on a mobile communication device can calculate a baseline acceleration along the x, y and z axes, 402.
- the mobile communication device can be, for example, a cellular telephone or smartphone, a personal digital assistant (PDA), a laptop, notebook, or netbook computer, a tablet computing device, a VoIP telephone, or other device capable of mobile communication.
- the communication module can be a software application, such as a smartphone "app" stored in memory and operating on a processor within the mobile communication device.
- the communication module can also be a combination of hardware and/or software.
- an accelerometer included in the mobile communication device can detect and/or generate an acceleration measurement.
- the measurement can be calculated along the x, y and z axes, where x, y and z are defined with respect to the mobile communication device, and the acceleration measurement is expressed in terms of g (the gravitational force of the Earth).
- the acceleration value can additionally be defined as a vector in three-dimensional space where:
- the value of r can be 1 .0 (as in, l .Og) when the mobile device is at rest, and the values of f? and ⁇ can point in any direction depending on the orientation of the mobile device in space.
- a baseline acceleration for the mobile device can be calculated by the communication module.
- the baseline acceleration can be determined based on a device calibration process.
- the communication module can determine a baseline acceleration for the mobile device by detecting changes in the mobile device's instantaneous acceleration over time. For example, in some embodiments, the communication module can compare two or more consecutive instantaneous acceleration measurements to determine if the two or more measurements are each zero. If the device's instantaneous acceleration is zero for a predetermined, threshold period of time, such as one second, the communication module can determine that the device is currently at rest, and can set the baseline acceleration for the mobile device to zero. In some embodiments, the communication module can determine the instantaneous acceleration based at least in part on a comparison and/or difference between an acceleration value associated with a first vehicle in which the mobile device is physically located and an acceleration value of a second vehicle.
- the communication module can next periodically monitor the mobile device's instantaneous acceleration to detect car-like acceleration if present, 404.
- car-like acceleration can be determined based at least in part on whether any acceleration of the device is sustained for a minimum time interval and within a general direction.
- the communication module can apply a low-pass filter to the detected instantaneous acceleration values so as to disregard instantaneous acceleration values that represent intermittent acceleration not associated with the sustained acceleration of a vehicle (e.g., acceleration due to the mobile device being dropped or moved quickly by the user).
- the above thresholds for device acceleration, direction, and time period can be set differently as desired.
- the communication module can activate a GPS module coupled to the device, 406.
- the GPS module can be any hardware- and/or software-based GPS module capable of determining the longitudinal and latitudinal position of the mobile device at the current time using global positioning satellites, in some embodiments, the GPS module can be any hardware- and/or software-based module capable of determining a physical location of the mobile device, such as a module utilizing GSM localization, Assisted-GPS, Cell Identification, Enhanced Cell Identification, Uplink-Time difference of arrival (U-TDOA), muliilaieration, triangulation, or other methods of determining a geographic location of a hardware device.
- GSM localization Assisted-GPS
- Cell Identification Cell Identification
- Enhanced Cell Identification Enhanced Cell Identification
- U-TDOA Uplink-Time difference of arrival
- muliilaieration triangulation, or other methods of determining a geographic location of a hardware device.
- the GPS module can be queried only when the communication module has determined, via the acceleration measurement described above, that the mobile device is experiencing significant acceleration.
- the communication module can send a signal configured to activate the GPS module upon initialization of the mobile device, upon activation of a particular application stored at and/or executing on the mobile device, and/or according to a predetermined time interval as specified by a predetermined time schedule.
- the communication module can next calculate a current device velocity using information provided by the GPS module, 408.
- the communication module can query a GPS module of the mobile device directly.
- the communication module can query a location service, other software layer, or application programming interface (API) configured to provide current physical location and/or mo vement information of the mobile device.
- API application programming interface
- the communication module can next disable some functionality (such as text-based communication), send one or more signals to disable a user input device and send a message to the device display indicating disablement, 410.
- the communication module can receive the current device velocity value directly from the GPS module of the mobile device.
- substantial device velocity can be defined as a rate of terrestrial movement at which user distraction is likely and/or potentially hazardous.
- substantial device velocity can be defined as a terrestrial velocity greater than or equal to five miles per hour.
- the user input device can be any suitable user input device, such as an on-screen or tactile keyboard.
- the device display can be any suitable mobile device display, such as an OLED, LCD or capacitive touch screen display.
- the communication module can disable text-based communication by sending one or more signals to one or more software modules and/or one or more hardware devices, such as a software modules, code, antenna and/or network cards associated with the receipt and transmission of text-based messages.
- the communication module can disable other functionality of the mobile communication device based on the detected motion.
- the one or more signals to disable a user input device can include one or more signals sent external to and/or within the communication module, depending on implementation.
- the one or more signals can be configured to negate presses of an input keyboard or device button such that the presses are not registered or acted upon by the mobile device and/or its associated software and hardware.
- the message sent to the display device indicating disablement can be a text-based message that indicates that user input is currently disabled due to speed.
- the displayed message can be comprised of any combination of text, graphics and images.
- the message can be sent to an external display device controller module.
- the message can be internal to the communication module.
- the message sent to the display device can include a warning message indicating a potential hazard inherent in operation of the mobile device while moving at the velocity determined in step 408 above.
- the communication module can be configured to not send one or more signals to disable the user input device, thus providing only a warning to a user of the mobile device, without disabling any functionality of the mobile de vice.
- the mobile device can next execute a number of steps if the device's velocity falls below a predetermined threshold, 412. For example, if the communication module determines or receives a signal indicating that the device velocity is currently less than five miles per hour, the communication module can set the device baseline acceleration based on the current device velocity. Additionally, in some embodiments the communication module can send one or more signals to re-enable text-based communication, to re-enable any disabled input device and/or to direct the device display to indicate that text-based communication has been re-enabled. As described above, the one or more signals can include signals external to the communication module and/or signals internal to the communication module itself.
- the communication module can also continue to periodically monitor the mobile device's current instantaneous acceleration.
- the communication module can be configured to perform one or more actions when the calculated instantaneous acceleration of the mobile device falls below a predetermined threshold (e.g., when a moving vehicle in which the mobile device is physically located decelerates to a low velocity or stops).
- the communication module can optionally re-enable one or more functions of the mobile device, such as an input module or device, by sending one or more signals to the appropriate hardware-based and/or software-based modules.
- a module is in tended to mean a single module or a combination of modules.
- Some embodiments described herein relate to a computer storage product with a computer- or processor-readable medium (also can be referred to as a processor-readable medium) having instructions or computer code thereon for performing various computer- implemented operations.
- the media and computer code also can be referred to as code
- Examples of computer-readable media include, but are not limited to: magnetic storage media such as hard disks, floppy disks, and magnetic tape; optical storage media such as Compact Disc/Digital Video Discs (CD/DVDs), Compact Disc-Read Only Memories (CD-RDMs), and holographic devices; magneto-optical storage media such as optical disks; carrier wave signal processing modules; and hardware devices that are specially configured to store and execute program code, such as general purpose microprocessors, microcontrollers, Application- Specific Integrated Circuits (ASICs), Programmable Logic Devices (PLDs), and Read-Only Memory (ROM ) and Random- Access Memory (RAM ) devices.
- magnetic storage media such as hard disks, floppy disks, and magnetic tape
- optical storage media such as Compact Disc/Digital Video Discs (CD/DVDs), Compact Disc-Read Only Memories (CD-RDMs), and holographic devices
- magneto-optical storage media such as optical disks
- carrier wave signal processing modules and hardware devices that
- Examples of computer code include, but are not limited to, micro-code or microinstructions, machine instructions, such as produced by a compiler, code used to produce a web service, and files containing higher-level instructions that are executed by a computer using an interpreter.
- embodiments may be implemented using Java, C++, or other programming languages (e.g., object-oriented programming languages) and development tools.
- Additional examples of computer code include, but are not limited to, control signals, encrypted code, and compressed code.
- the disclosed invention can disable any desired functionality of a mobile device, such as voice-based communication, computing applications, multimedia functionality, and the like.
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephone Function (AREA)
Abstract
In one embodiment, a non-transitory processor-readable medium stores code representing instructions that when executed cause a processor to receive a value representing an acceleration of a mobile device. The code further represents instructions that when executed cause the processor to receive a value representing a velocity of the mobile device when the value representing the acceleration exceeds a first predetermined threshold. The code further represents instructions that when executed cause the processor to send a disable signal to an input module of the mobile device when the value representing the velocity exceeds a second predetermined threshold.
Description
Cross-Reference to Related Application
[0001] This application claims priority to and the benefit of U.S. Provisional Patent Application Serial No. 61/293,053, entitled "Methods and Apparatus to Disable Text Message Input Using Accelerometer of Mobile Communication Device," filed January 7, 2010, the disclosure of which is hereby incorporated by reference in its entirety.
Background
[0002] Embodiments described herein relate generally to motion detection of an object, and more particularly to methods and apparatus for disabling functionality of a mobile communication device based on the detected motion,
[0003] Operators of motor vehicles often use mobile communication devices to send and receive text-based messages while driving. Although this practice affords the benefit of near- instantaneous communication, the distractions inherent in reading and composing messages have proven a safety risk to drivers, passengers and other vehicles. While journalists and some local governments have publicized this safety risk, the practice is still quite common despite the passage of laws banning it in some U.S. states. Indeed, many users of text-based communication while driving admit both a desire to cease the practice but an inability to do so. Thus, a need exists for methods and apparatus for disabling text-based communication when a mobile communication device is traveling at a substantial velocity, such as a velocity achieved within a moving motor vehicle. A need further exists for such methods and apparatus that do so in an energy-efficient manner, such that batten' life of a mobile device is conserved.
[0004] In one embodiment, a non-transitory processor-readable medium stores code representing instructions that when executed cause a processor to receive a value representing an acceleration of a mobile device. The code further represents instructions that when executed cause the processor to receive a value representing a velocity of the mobile device
when the value representing the acceleration exceeds a first predetermined threshold. The code further represents instructions that when executed cause the processor to send a disable signal to an input module of the mobile device when the value representing the velocity exceeds a second predetermined threshold.
Brief Description of the Drawings
[0005] FIG. 1 is a schematic block diagram of a mobile device located within a moving vehicle according to an embodiment.
[0006] FIG. 2 is a schematic block diagram of a mobile device including motion detection and global positioning satellite (GPS) modules, according to an embodiment.
[0007] FIG. 3 is a top view of a mobile telephone displaying a message indicating that the telephone's keyboard has been disabled due to speed, according to an embodiment.
[0008] FIG. 4 is a flowchart of a method of calculating the acceleration and velocity of a mobile communication device and disabling a function of the device if the velocity exceeds a predetermined threshold, according to an embodiment.
Detailed Description
[0009] FIG. 1 is a schematic block diagram of a mobile device located within a moving vehicle according to an embodiment. As illustrated in FIG. 1 , a mobile device can be physically located on or within a moving vehicle such as an automobile, motorcycle, or boat such that the mobile device moves along with the vehicle at the same ground or air velocity. In some embodiments, the mobile device can be physically coupled to a component of the vehicle. In some embodiments, the mobile device can be held by or on the person of a passenger of the vehicle. In some embodiments, the mobile device can be temporarily mounted within the passenger compartment of the vehicle or otherwise located within the vehicle.
[0010] FIG. 2 is a schematic block diagram of a mobile device including motion detection and global positioning satellite (GPS) modules, according to an embodiment. More specifically, FIG. 2 illustrates a mobile device 200 including a memory 210, a processor 220, a communication module 230, a motion detection module 240, a GPS module 250, an input device 260 and an output device 270. The motion detection module 240 and GPS module
250 send signals including device position and motion information to the communication module 230. The communication module 230 sends signals to output device 270 and input device 260. In some embodiments, the communication module 230 can send signals to the output device 270 for relaying information regarding temporary disabled functionality to a user of the mobile device (not shown). In some embodiments, the communication module 230 can send one or more signals to the input device 260 to temporarily disable or re-enable the input device 260.
[0011] The mobile device 200 can be, for example, any mobile computing and/or communication device, such as a cellular telephone, smartphone, pager, personal digital assistant (PDA), or portable computer. In some embodiments, the mobile device 200 can allow communication over various protocols via one or more hardware-based and/or software-based communication modules such as communication module 230. In some embodiments, the mobile device 200 can mclude hardware and/or software configured to allow user input, such as a keyboard, voice command system, camera, or other input device such as input device 260. In some embodiments, the mobile device 200 can include one or more antennae (not shown) for transmitting and receiving communication signals. In some embodiments, the mobile device 200 can mclude an output device for display of information to a user, such as output device 270.
[0012] The memory 210 can be any suitable computer memory. For example, the memory can be random-access memory (RAM), read-only memory (ROM), flash memory, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), and/or other suitable memory. In some embodiments, memory 210 can be configured to store code representing processor instructions for execution by processor 220 and/or store data received from communication module 230.
[0013] Processor 220 can be any suitable processor capable of executing computer instructions and of receiving data from communication module 230. In some embodiments, processor 220 can be a microcontroller, a field-programmable gate array (FPGA), an application specific integrated circuit (ASIC), and/or any other suitable processor.
[0014] Communication module 230 can be any suitable combination of hardware and/or software configured to allow for transmission and receipt of user communications such as, for example, electronic mail ("e-mail"), text messages sent via the Short Message Service (SMS)
or Multimedia Messaging Sendee (MMS) protocols, or instant messages, in some embodiments, communication module 230 can be configured to calculate a spatial orientation, position, velocity and/or acceleration of mobile device 200, in some embodiments, communication module 230 can be a software application (or "app") configured to operate on a smartphone device such as an Apple iPhone, RIM BlackBerry or Google Android compatible phone, In some embodiments, communication module can be, for example, a chat software application, instant messaging application, or other user-to-user messaging application. In some embodiments, communication module 230 can be configured to run as a background process of an operating system or other embedded software executing on mobile device 200. For example, in some embodiments communication module 230 can be configured to run resident in memory 210 while other processes are executed.
[0015] In some embodiments, communication module 230 can send and receive signals with other hardware and/or software modules included in the mobile communication device 200 to perform one or more of its core functions. For example, in some embodiments, communication module 230 can send signals to a software module external to communication module 230 that is associated with the presentation and functionality of an on-screen keyboard. Or, in other embodiments, communication module 230 can include a standard software module associated with the presentation and functionality of an on-screen keyboard, or, alternatively, its own implementation of a keyboard or other relevant software module.
[0016] In some embodiments, communication module 230 can be configured to periodically request and receive orientation, position, velocity and/or acceleration information associated with mobile device 200. For example, in some embodiments, communication module 230 can send a request to a motion detection module operativelv or physically coupled to mobile device 200, such as motion detection module 240 or GPS module 250. In some embodiments, communication module 230 can make such a request every 1/10 of a second. In some embodiments, communication module 230 can make such a request at a more-frequent or less-frequent time interval. In some embodiments, communication module 230 can then receive the mobile device motion information and use the information to determine an instantaneous acceleration of mobile device 200, In some embodiments, the received mobile device motion information can include, for example, a value representing a current acceleration of the mobile device (i.e., an instantaneous acceleration),
[0017] If the calculated instantaneous acceleration exceeds a predetermined threshold, communication module 230 can be configured to verify thai the mobile device 200 is in substantial motion by communicating with a global positioning satellite (GPS) module such as GPS module 250, (Alternatively, communication module 230 can communicate with an external module and/or component, such as an external GPS module operatively and/or physically coupled to the mobile device 200.) Because GPS modules can in some instances require significant system resources and thus result in substantial battery drain, in some embodiments the GPS module 250 can be queried only in instances where the communication module 230 has determined that the mobile device 200 is experiencing significant acceleration based on information received from the motion detection device 240. In such embodiments, the communication module 230 can send a signal to the GPS module 250 to both initialize (i.e., "turn on") the GPS module 250 and perform the query described above. In some embodiments, communication module 230 can receive a signal from GPS module 250, the signal including a value representing a current velocity of the mobile device. If the value representing the current velocity of the mobile device ("the velocity''') exceeds a predetermined threshold, communication module 230 can perform one or more actions. For example, in some embodiments, communication module 230 can disable its message transmission functionality by, for example, disabling one or more modules included in communication module 230 and/or disabling one or more modules external to communication module 230 associated with message transmission. Alternatively, communication module 230 can send a disable signal to input device 260 configured to temporarily disable functionality of input device 260.
[0018] In some embodiments, communication module 230 can be configured to send a signal to output device 270, instructing the device to display a message indicating the functionality that has been temporarily disabled. In some embodiments, communication module 230 can send a signal to input device 260 configured to disable user input. For example, if, as in some embodiments, input device 260 is an on-screen keyboard, communication module 230 can send a signal to input device 260 configured to "gray out" the keys of the on-screen keyboard and disable their functionality such that user input is not possible. In some embodiments, communication module 230 can be configured to send a signal to one or more external hardware components, such as an on-board vehicle computing system and/or other component.
[0019] In some embodiments, communication module 230 can continue to periodically query motion detection module 240 and/or GPS module 250 to determine if the mobile device 200 is still in motion. If, based on information received from motion detection module 240 and/or GPS module 250, communication module 230 determines that the mobile device 200 is no longer in motion or is in motion at a velocity or acceleration below a predetermined threshold, communication module 230 can be configured to send one or more signals. For example, communication module 230 can re-enable its communication functionality by enabling functionality associated with one or more modules within communication module 230 and/or one or more hardware- and/or software-based modules external to communication module 230 that are included in or coupled to the mobile device 200. In some embodiments, communication module 230 can send a signal to output device 270 instructing the output device to display a message indicating that the relevant communication functionality has been re-enabled. In some embodiments, communication module 230 can send a signal to input device 260 to re-enable its functionality.
[0020] Motion detection module 240 can be any combination of hardware and/or software configured to detect physical movement of the mobile device 200. For example, motion detection module 240 can be an accelerometer. In some embodiments, motion detection module 240 can send one or more signals to various other hardware and/or software modules included in or operatively coupled to the mobile device 200. For example, in some embodiments, motion detection module 240 can send one or more signals to communication module 230 in response to a device position or movement request. In some embodiments, motion detection module 240 can determine a two- or three-dimensional spatial orientation of the mobile device 200. In some embodiments, motion detection module 240 can determine an acceleration of the mobile device 200. in some embodiments, motion detection module 240 can determine a vector or directional component of movement of the mobile device 200 in the x, y and z dimensions or directions.
[0021] GPS module 250 can be any suitable combination of hardware and/or software configured to determine a longitudinal and latitudinal position of the mobile device 200 using a global positioning satellite system or network. In some embodiments, GPS module 250 can be an application specific integrated circuit (ASIC),
[0022] Input device 260 can be any suitable input device. For example, in some embodiments, input device 260 can be a keyboard such as a tactile keyboard or on-screen
keyboard. In some embodiments, input device 260 can be a microphone configured to receive voice instructions, a pointing device such as a mouse, a stylus, a electronic drawing tablet, and/or other input device physically or operatively coupled to the mobile device 200 and capable of receiving inpu t from a user.
[0023] Output device 270 can be any suitable electronic display. For example, output device 270 can be a liquid crystal display (LCD), a series of light-emitting diodes (LEDs), a series of organic light-emitting diodes (OLEDs), an electronic ink display, or other device employing suitable display technology. In yet other embodiments, the mobile device 200 does not include a display. In such embodiments, instead of and/or in addition to a display, the mobile detection device 200 can include a speaker, a haptic indicator (e.g., a vibration device) and/or any other output device configured to convey information to a user,
[0024] In some embodiments, the mobile device 200 can be configured to send information to and/or receive information from one or more hardware and/or software components coupled to a vehicle (not shown in FIG. 2). For example, in some embodiments, the mobile device 200 can exchange information with a component of an automobile in which it is currently physically located. In such embodiments, the mobile device 200 can exchange information with the automobile component via one or more information transfer methods such as Ethernet, Bluetooth, Ultra-wideband (UWB), wireless Universal Serial Bus (wireless USB), WiFi, and/or Radio Frequency Identification (RFID).
[0025] In some embodiments, communication module 230 can be configured to receive and process irifomiation received from a vehicle hardware arid/or software component, such as vehicle performance information, nearby object and/or locale information, regulator}' and/or legal irifomiation relevant to a current physical location of the vehicle, etc, In some embodiments, communication module 230 can receive information related to a rate of acceleration between two or more vehicles such as a vehicle in which the mobile device 200 is currently located and a second vehicle.
[0026] in some embodiments, communication module 230 can send information to and/or receive information from an onboard storage memory coupled to a vehicle (not shown). For example, in some embodiments, communication module 230 can receive performance information associated with the vehicle from the onboard storage memory. In some embodiments, the communication module 230 can send an instruction to a hardware and/or
software component of the mobile device 200 to initiate a notification or alert based on information received from the onboard storage memory, In some embodiments, such an alert can include one or more of: an audio alert, a ρορ-up alert, a vibration-based alert, and/or other visual alert.
[0027] FIG. 3 is a top view of a mobile telephone displaying a message indicating that the telephone's keyboard has been disabled due to speed, according to an embodiment. Mobile telephone 300 includes a keyboard 310 and a display 320 currently displaying a notification message 330.
[0028] Mobile telephone 300 can be any mobile telephone capable of sending and receiving text-based communication such as SMS text messages, MMS messages, instant messages, e-mails, and the like. In some embodiments, mobile telephone 300 can be a smartphone, such as an Apple iPhone, a RIM Blackberry device, or a Windows Mobile- enabled telephone. In. some embodiments, mobile telephone 300 can be a Voice Over Internet Protocol (VoIP) telephone, a cordless telephone, two-way radio, or other wireless communication device. In some embodiments, mobile telephone 300 can store and/or execute code and/or other instructions sufficient to cause a processor to execute a text-based messaging software application, such as an Apple iPhone or Google Android "app".
[0029] Keyboard 310 can be any suitable keyboard capable of receiving user input. For example, in some embodiments, keyboard 310 can be an on-screen keyboard or a tactile keyboard comprised of physical keys and/or buttons. In some embodiments, keyboard 310 can be any user input, device included on, in, or operatively coupled to mobile telephone 300,
[0030] Display 320 can be any electronic display. For example, display 320 can. be a liquid crystal display (LCD), a series of light-emitting diodes (LEDs), a series of organic light-emitting diodes (QLEDs), an electronic ink display, or other device employing suitable display technology. In yet other embodiments, the mobile telephone 320 does not include a display. In such embodiments, instead of and/or in addition to a display, the mobile telephone 320 can include a speaker, a haptic indicator (e.g., a vibration device) and/or any other output device configured to convey information to a user,
[0031] Notification message 330 can be any combination of alphanumeric characters, text, images, sounds, or the like capable of conveying to the user that some communication functionality has been temporarily disabled on the mobile telephone 300. For example, in the
illustrated embodiment, notification message 330 is a textual notification output by display 320 and including the words "Keyboard disabled due to speed." In some embodiments, notification message 330 can be received from a hardware or software module such as the communication module (not shown) discussed in connection with FIG. 3 above.
[0032] In some embodiments, notification message 330 can be updated or changed based on the current availability of one or more mobile device features such as text or voice communication. For example, in some embodiments, a communication module can send a signal to display 320 to update notification message 330 with new text or other information based on a new availability or lack of availability of one or more mobile device functionalities. In some embodiments, the updated version of notification message 330 can include information associated with a current velocity, acceleration, spatial position, or other current physical property or characteristic of the mobile telephone 300.
[0033] FIG. 4 is a flowchart that of a method of calculating an acceleration and velocity of a mobile communication device and disabling a function of the device if the velocity exceeds a predetermined threshold, according to an embodiment. As shown in FIG. 4, a communication module located on a mobile communication device can calculate a baseline acceleration along the x, y and z axes, 402. The mobile communication device can be, for example, a cellular telephone or smartphone, a personal digital assistant (PDA), a laptop, notebook, or netbook computer, a tablet computing device, a VoIP telephone, or other device capable of mobile communication. The communication module can be a software application, such as a smartphone "app" stored in memory and operating on a processor within the mobile communication device. The communication module can also be a combination of hardware and/or software.
[0034] in some embodiments, an accelerometer included in the mobile communication device can detect and/or generate an acceleration measurement. In such embodiments, the measurement can be calculated along the x, y and z axes, where x, y and z are defined with respect to the mobile communication device, and the acceleration measurement is expressed in terms of g (the gravitational force of the Earth). The acceleration value can additionally be defined as a vector in three-dimensional space where:
[0035] In some embodiments and in accordance with the definition above, the value of r can be 1 .0 (as in, l .Og) when the mobile device is at rest, and the values of f? and φ can point in any direction depending on the orientation of the mobile device in space.
[0036] In some embodiments, a baseline acceleration for the mobile device can be calculated by the communication module. In some embodiments, the baseline acceleration can be determined based on a device calibration process. Alternatively, in some embodiments, the communication module can determine a baseline acceleration for the mobile device by detecting changes in the mobile device's instantaneous acceleration over time. For example, in some embodiments, the communication module can compare two or more consecutive instantaneous acceleration measurements to determine if the two or more measurements are each zero. If the device's instantaneous acceleration is zero for a predetermined, threshold period of time, such as one second, the communication module can determine that the device is currently at rest, and can set the baseline acceleration for the mobile device to zero. In some embodiments, the communication module can determine the instantaneous acceleration based at least in part on a comparison and/or difference between an acceleration value associated with a first vehicle in which the mobile device is physically located and an acceleration value of a second vehicle.
[0037] The communication module can next periodically monitor the mobile device's instantaneous acceleration to detect car-like acceleration if present, 404. In some embodiments, car-like acceleration can be determined based at least in part on whether any acceleration of the device is sustained for a minimum time interval and within a general direction. For example, in some embodiments, the communication module can determine that the mobile device is currently experiencing substantial acceleration (such as that associated with the typical movement of an automobile or other motor vehicle) if the device's instantaneous acceleration (calculated relative to the baseline acceleration as explained above) satisfies the following three conditions for a predetermined amount of time: (1) 0.068g < device acceleration < 0.68g; (2) Αθ < 20°; and (3) Αφ < 20° (where Αθ = θt - θt-1 and Αφ = ψί - φt-1). As part of the determining, the communication module can apply a low-pass filter to the detected instantaneous acceleration values so as to disregard instantaneous acceleration values that represent intermittent acceleration not associated with the sustained acceleration of a vehicle (e.g., acceleration due to the mobile device being dropped or moved
quickly by the user). In some embodiments, the above thresholds for device acceleration, direction, and time period can be set differently as desired.
[0038] If car-like acceleration has been detected, the communication module can activate a GPS module coupled to the device, 406. The GPS module can be any hardware- and/or software-based GPS module capable of determining the longitudinal and latitudinal position of the mobile device at the current time using global positioning satellites, in some embodiments, the GPS module can be any hardware- and/or software-based module capable of determining a physical location of the mobile device, such as a module utilizing GSM localization, Assisted-GPS, Cell Identification, Enhanced Cell Identification, Uplink-Time difference of arrival (U-TDOA), muliilaieration, triangulation, or other methods of determining a geographic location of a hardware device. To save limited battery and/or other portable energy resources, the GPS module can be queried only when the communication module has determined, via the acceleration measurement described above, that the mobile device is experiencing significant acceleration. Alternatively, in some embodiments the communication module can send a signal configured to activate the GPS module upon initialization of the mobile device, upon activation of a particular application stored at and/or executing on the mobile device, and/or according to a predetermined time interval as specified by a predetermined time schedule.
[0039] The communication module can next calculate a current device velocity using information provided by the GPS module, 408. In some embodiments, the communication module can query a GPS module of the mobile device directly. In some embodiments, the communication module can query a location service, other software layer, or application programming interface (API) configured to provide current physical location and/or mo vement information of the mobile device.
[0040] If substantial device velocity is detected, the communication module can next disable some functionality (such as text-based communication), send one or more signals to disable a user input device and send a message to the device display indicating disablement, 410. In some embodiments, the communication module can receive the current device velocity value directly from the GPS module of the mobile device. In some embodiments, substantial device velocity can be defined as a rate of terrestrial movement at which user distraction is likely and/or potentially hazardous. For example, in some embodiments, substantial device velocity can be defined as a terrestrial velocity greater than or equal to five
miles per hour. In some embodiments, the user input device can be any suitable user input device, such as an on-screen or tactile keyboard. For example, in some embodiments, the device display can be any suitable mobile device display, such as an OLED, LCD or capacitive touch screen display.
[0041] In some embodiments, the communication module can disable text-based communication by sending one or more signals to one or more software modules and/or one or more hardware devices, such as a software modules, code, antenna and/or network cards associated with the receipt and transmission of text-based messages. In some embodiments, the communication module can disable other functionality of the mobile communication device based on the detected motion.
[0042] In some embodiments, the one or more signals to disable a user input device can include one or more signals sent external to and/or within the communication module, depending on implementation. For example, the one or more signals can be configured to negate presses of an input keyboard or device button such that the presses are not registered or acted upon by the mobile device and/or its associated software and hardware.
[0043] In some embodiments, the message sent to the display device indicating disablement can be a text-based message that indicates that user input is currently disabled due to speed. In some embodiments, the displayed message can be comprised of any combination of text, graphics and images. In some embodiments, the message can be sent to an external display device controller module. In some embodiments, the message can be internal to the communication module.
[0044] Alternatively, in some embodiments the message sent to the display device can include a warning message indicating a potential hazard inherent in operation of the mobile device while moving at the velocity determined in step 408 above. In such embodiments, the communication module can be configured to not send one or more signals to disable the user input device, thus providing only a warning to a user of the mobile device, without disabling any functionality of the mobile de vice.
[0045] The mobile device can next execute a number of steps if the device's velocity falls below a predetermined threshold, 412. For example, if the communication module determines or receives a signal indicating that the device velocity is currently less than five miles per hour, the communication module can set the device baseline acceleration based on
the current device velocity. Additionally, in some embodiments the communication module can send one or more signals to re-enable text-based communication, to re-enable any disabled input device and/or to direct the device display to indicate that text-based communication has been re-enabled. As described above, the one or more signals can include signals external to the communication module and/or signals internal to the communication module itself.
[0046] In some embodiments, the communication module can also continue to periodically monitor the mobile device's current instantaneous acceleration. In such embodiments, the communication module can be configured to perform one or more actions when the calculated instantaneous acceleration of the mobile device falls below a predetermined threshold (e.g., when a moving vehicle in which the mobile device is physically located decelerates to a low velocity or stops). For example, the communication module can optionally re-enable one or more functions of the mobile device, such as an input module or device, by sending one or more signals to the appropriate hardware-based and/or software-based modules.
[0047] As used in this specification, the singular forms "a," "an" and "the" include plural referents unless the context clearly dictates otherwise. Thus, for example, the term "a module" is in tended to mean a single module or a combination of modules.
[0048] While various embodiments have been described above, it should be understood that they have been presented by way of example only, and not limitation. Where methods described above indicate certain events occurring in certain order, the ordering of certain events may be modified. Additionally, certain of the events may be performed concurrently in a parallel process when possible, as well as performed sequentially as described above.
[0049] Some embodiments described herein relate to a computer storage product with a computer- or processor-readable medium (also can be referred to as a processor-readable medium) having instructions or computer code thereon for performing various computer- implemented operations. The media and computer code (also can be referred to as code) may be those designed and constructed for the specific purpose or purposes. Examples of computer-readable media include, but are not limited to: magnetic storage media such as hard disks, floppy disks, and magnetic tape; optical storage media such as Compact Disc/Digital Video Discs (CD/DVDs), Compact Disc-Read Only Memories (CD-RDMs), and
holographic devices; magneto-optical storage media such as optical disks; carrier wave signal processing modules; and hardware devices that are specially configured to store and execute program code, such as general purpose microprocessors, microcontrollers, Application- Specific Integrated Circuits (ASICs), Programmable Logic Devices (PLDs), and Read-Only Memory (ROM ) and Random- Access Memory (RAM ) devices.
[0050] Examples of computer code include, but are not limited to, micro-code or microinstructions, machine instructions,, such as produced by a compiler, code used to produce a web service, and files containing higher-level instructions that are executed by a computer using an interpreter. For example, embodiments may be implemented using Java, C++, or other programming languages (e.g., object-oriented programming languages) and development tools. Additional examples of computer code include, but are not limited to, control signals, encrypted code, and compressed code.
[0051] While the above description refers to the disablement of text-based communication functionality based on device movement, in some embodiments the disclosed invention can disable any desired functionality of a mobile device, such as voice-based communication, computing applications, multimedia functionality, and the like.
Claims
1. A non-transitory processor-readable medium storing code representing instructions that when executed cause a processor to:
receive a value representing an acceleration of a mobile device;
receive a value representing a velocity of the mobile device when the value representing the acceleration exceeds a first predetermined threshold; and
send a disable signal to an input module of the mobile device when the value representing the velocity exceeds a second predetermined threshold,
2. The non- transitory processor-readable medium of claim 1, the medium further storing code representing instructions that when executed cause the processor to send, to a display, an indication that the input module of the mobile device has been disabled.
3. The non-transitory processor-readable medium of claim 1, wherein the velocity value is a first velocity value associated with a first time, the non-transitory processor-readable medium further storing code representing instructions that when executed cause the processor to:
receive a value representing a second velocity of the mobile device, the value representing the second velocity associated with a second time; and
send a signal configured to enable the input module of the mobile device when the value representing the second velocity does not exceed the second predetermined threshold,
4. The non-transitory processor-readable medium of claim 1, wherein the acceleration value is determined based at least in part on a signal defined by an acceleronieter included in the mobile device.
5. The non-transitory processor-readable medium of claim 1, the non-transitory processor-readable medium further storing code representing instructions that when executed cause the processor to:
send a signal configured to activate a Global Positioning System (GPS) module when the acceleration value exceeds the first predetermined threshold; and
receive, from the G PS module, a signal including the velocity value.
6. The non- transitory processor-readable medium of claim 1, wherein the acceleration value is determined periodically based at least in part on a predetermined time interval.
7. The non-transitory processor-readable medium of claim 1, wherein the input module is an on-screen keyboard.
8. An apparatus, comprising:
an acceleration module configured to determine a value representing an acceleration of the apparatus, the acceleration module configured to send a first signal when the value representing the acceleration exceeds a first threshold value;
a velocity module configured to determine, in response to the first signal, a value representing a velocity of the apparatus, the velocity module configured to send a second signal when the value representing the velocity exceeds a second threshold value; and
an input module configured to send a disable signal to an input device in response to the second signal.
9. The apparatus of claim 8, further comprising an output module configured to send, to an output device, an indication that the input device has been disabled in response to the disable signal being sent to the input device.
10. The apparatus of claim 8, wherein the value representing the acceleration is an instantaneous acceleration value, the acceleration module configured to calculate the instantaneous acceleration value based at least in part on a value representing a previous acceleration of the mobile device.
11. The apparatus of claim 8, wherein the acceleration module is configured to determine the value representing the acceleration based at least in part on a rate of acceleration between a first vehicle in which the apparatus is physically located and a second vehicle.
12. The apparatus of claim 8, further comprising an output module configured to send, to an on-board vehicle computing system, a third signal including an at least one of an indication that the acceleration threshold has been exceeded, an indication that the velocity threshold has been exceeded, or an indication that the input device has been disabled.
13. The apparatus of claim 8, wherein the velocity module is configured to initialize in response to the first signal.
14. A method, comprising:
receiving, at a mobile device, a first signal including an acceleration value, the acceleration value based at least in part on a first spatial position of the mobile device; receiving, at the mobile device, a second signal including a velocity value, the velocity value based at least in part on a second spatial position of the mobile device; and sending a third signal when the acceleration value exceeds a first predetermmed threshold value and the velocity value exceeds a second predetermined threshold value, the third signal configured to disable an on-screen key board of the mobile de vice.
15. The method of claim 14, further comprising:
defining the acceleration value as a vector in three-dimensional space, based at least in part on an x coordinate of the mobile device (x), a y coordinate of the mobile device (y ) and a z coordinate of the mobile device (z), the vector being further defined such that:
16. The method of claim 14, wherein the acceleration value is based at least in part on a baseline acceleration value, further comprising:
determining the baseline acceleration value based at least in part on a mobile device calibration process.
17. The method of claim 14, wherein the second signal is received from an external component operatively coupled to the mobile device.
18. The method of claim 14, further comprising:
determining that (1) a magnitude component of the acceleration value is within a predetermined range of values; (2) a first directional component of the acceleration value does not exceed a third predetermined threshold value; and (3) a second directional component of the acceleration value does not exceed a fourth predetermmed threshold value.
19. The method of claim 14, wherein the first signal is received from an accelerometer of the mobile device and the second signal is received from a Global Positioning Satellite (GPS) module of the mobile device.
20. The method of claim 14, wherein the acceleration value is a maximum acceleration value from among a plurality of acceleration values determined over a predetermined period of time.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29305310P | 2010-01-07 | 2010-01-07 | |
US61/293,053 | 2010-01-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2011085250A1 true WO2011085250A1 (en) | 2011-07-14 |
Family
ID=44305811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2011/020581 WO2011085250A1 (en) | 2010-01-07 | 2011-01-07 | Methods and apparatus to disable text message input using accelerometer of mobile communication device |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2011085250A1 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120268235A1 (en) * | 2011-04-21 | 2012-10-25 | Farhan Fariborz M | Disablement of user device functionality |
GB2501506A (en) * | 2012-04-25 | 2013-10-30 | Kevin Moore | A wireless mobile telephone handset control system sending a control signal configured to selectively disable functionality of the handset |
US9198113B2 (en) | 2013-03-15 | 2015-11-24 | Aswin Rajeevalochana | App for preventing phone functionality while driving |
US9363734B2 (en) | 2013-03-15 | 2016-06-07 | Aswin Rajeevalochana | System and method for preventing phone functionality while driving |
WO2017087613A1 (en) * | 2015-11-20 | 2017-05-26 | Cbros Technologies, Llc | Limiting mobile device functionality in a vehicle |
US10380710B2 (en) | 2015-12-09 | 2019-08-13 | Copernicus, Llc | System and method for monitoring and reporting a person's phone usage while driving |
CN112672315A (en) * | 2020-03-20 | 2021-04-16 | 上海云鱼智能科技有限公司 | Method, device, server, client, terminal and storage medium for calling car owner |
CN112672316A (en) * | 2020-03-20 | 2021-04-16 | 上海云鱼智能科技有限公司 | Method, device, server, client, terminal and storage medium for calling vehicle owner |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060061469A1 (en) * | 2004-09-21 | 2006-03-23 | Skyfence Inc. | Positioning system that uses signals from a point source |
US20090002147A1 (en) * | 2006-08-30 | 2009-01-01 | Sony Ericsson Mobile Communications Ab | Method for safe operation of mobile phone in a car environment |
US20090224931A1 (en) * | 2008-03-06 | 2009-09-10 | Research In Motion Limited | Safety for Mobile Device Users While Driving |
-
2011
- 2011-01-07 WO PCT/US2011/020581 patent/WO2011085250A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060061469A1 (en) * | 2004-09-21 | 2006-03-23 | Skyfence Inc. | Positioning system that uses signals from a point source |
US20090002147A1 (en) * | 2006-08-30 | 2009-01-01 | Sony Ericsson Mobile Communications Ab | Method for safe operation of mobile phone in a car environment |
US20090224931A1 (en) * | 2008-03-06 | 2009-09-10 | Research In Motion Limited | Safety for Mobile Device Users While Driving |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120268235A1 (en) * | 2011-04-21 | 2012-10-25 | Farhan Fariborz M | Disablement of user device functionality |
US8994492B2 (en) * | 2011-04-21 | 2015-03-31 | Fariborz M Farhan | Disablement of user device functionality |
GB2501506A (en) * | 2012-04-25 | 2013-10-30 | Kevin Moore | A wireless mobile telephone handset control system sending a control signal configured to selectively disable functionality of the handset |
US9198113B2 (en) | 2013-03-15 | 2015-11-24 | Aswin Rajeevalochana | App for preventing phone functionality while driving |
US9363734B2 (en) | 2013-03-15 | 2016-06-07 | Aswin Rajeevalochana | System and method for preventing phone functionality while driving |
WO2017087613A1 (en) * | 2015-11-20 | 2017-05-26 | Cbros Technologies, Llc | Limiting mobile device functionality in a vehicle |
US10380710B2 (en) | 2015-12-09 | 2019-08-13 | Copernicus, Llc | System and method for monitoring and reporting a person's phone usage while driving |
US10657616B2 (en) | 2015-12-09 | 2020-05-19 | Copernicus, Llc | System and method for monitoring and reporting a person's phone usage while driving |
CN112672315A (en) * | 2020-03-20 | 2021-04-16 | 上海云鱼智能科技有限公司 | Method, device, server, client, terminal and storage medium for calling car owner |
CN112672316A (en) * | 2020-03-20 | 2021-04-16 | 上海云鱼智能科技有限公司 | Method, device, server, client, terminal and storage medium for calling vehicle owner |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2011085250A1 (en) | Methods and apparatus to disable text message input using accelerometer of mobile communication device | |
US10129388B1 (en) | Systems and methods for restricting operation of a mobile device while operating a vehicle | |
EP2622749B1 (en) | Mobile terminal and control method thereof | |
US20120001843A1 (en) | Mobile Device User Interface Change Based On Motion | |
US20110117933A1 (en) | Mobile Terminals, Methods and Computer Program Products for Determining a Location Proximate a Vehicle | |
JP2009541884A5 (en) | ||
US20110021213A1 (en) | Vehicle computer link to mobile phone | |
US8270960B2 (en) | Connecting mobile terminals based on sensor data | |
WO2013095925A2 (en) | Energy efficient roaming of a mobile device | |
US9596562B2 (en) | Portable electronic device and method of recording mobility of the portable electronic device | |
JP2012048537A (en) | Vehicle approach notification system | |
CN105810000A (en) | Vehicle-driving early-warning device and method | |
US20150186715A1 (en) | Method and Device for Detecting a Seating Position in a Vehicle | |
CN106200894B (en) | Event notification method and device thereof | |
US8320884B1 (en) | Limiting user device functionality during motor vehicle operation | |
EP3635432A1 (en) | Non-intrusive intra-vehicular user location detection | |
KR20120137602A (en) | Electronic device and method for social networking service | |
WO2017199912A1 (en) | Electronic device, control method, and control program | |
US9080880B2 (en) | Motion based message delivery | |
US11455888B2 (en) | Systems and methods for connected vehicle and mobile device communications | |
CN112954002A (en) | Method for monitoring a vehicle and vehicle lock | |
US20150382155A1 (en) | System and Method for Reporting Use of a Mobile Communication Device While Driving | |
CN107333000A (en) | The method and apparatus and mobile terminal of a kind of navigation | |
US20160105795A1 (en) | Methods and systems for notification management between an electronic device and a wearable electronic device | |
CN107743177B (en) | Call control method and device, mobile terminal and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11732234 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC OF 111212 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 11732234 Country of ref document: EP Kind code of ref document: A1 |