Abstract:
A keypad having a plurality of switches identifies a numerical value according to user input to the plurality of switches. The numerical value may be computed as a total count of the plurality of switches that are swiped across in a consistent direction or may be computed as a total count of the plurality of switches that are simultaneously pressed. The keypad may further send the numerical value to a controller configured to facilitate access to vehicle unlock functionality.

Description:
TECHNICAL FIELD 
     Aspects of the disclosure generally relate to secure entry of codes into keypads, such as vehicle security keypads. 
     BACKGROUND 
     Keypads are generally positioned on the exterior of a vehicle and are used to lock and unlock the vehicle, among other features. The driver may unlock the door in response to successfully inputting a factory code on the keypad, which is a code including a sequence of numbers or other such characters. The driver may also use the factory code to program a new code, sometimes referred to as a personalized code, which may be easier to remember than the factory code and usable to unlock the vehicle with the keypad. 
     Such keypads allow the driver to unlock and lock the vehicle without the use of a key. Generally, the keypad is electrically coupled to an electronic controller. The controller controls a mechanism to unlock and lock the vehicle in response to the factory code inputted by the driver via the keypad. Other such keyless entry systems may include remote frequency based transmitters operably coupled to the electronic controller. The electronic controller is configured to unlock and lock the doors of the vehicle in response to receiving radio frequency (RF) encoded signals from the transmitters. 
     SUMMARY 
     In a first illustrative embodiment, a vehicle includes a keypad, having a plurality of switches configured to receive user input, configured to identify a numerical value according to user input to the plurality of switches, the numerical value computed as a total count of the plurality of switches that are simultaneously pressed by the user, and send the numerical value to a controller configured to facilitate access to vehicle unlock functionality. 
     In a second illustrative embodiment, a vehicle includes a keypad, having a plurality of switches configured to receive user input, configured to identify a numerical value according to user input to the plurality of switches, the numerical value computed as a total count of the plurality of switches that are swiped across in a consistent direction by the user, and send the numerical value to a controller configured to facilitate access to vehicle unlock functionality. 
     In a third illustrative embodiment, a computer-implemented method includes identifying, by a keypad having a plurality of switches, a numerical value according to user input to the plurality of switches, the numerical value computed as a total count of one of (i) the plurality of switches that are swiped across in a consistent direction and (ii) the plurality of switches that are simultaneously pressed; and sending the numerical value to a controller configured to facilitate access to vehicle unlock functionality. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  illustrates an example keyless entry system for a vehicle having a keypad; 
         FIG. 2A  illustrates an example of the keypad receiving multi-touch user input of a number; 
         FIG. 2B  illustrates further examples of the keypad receiving multi-touch user input of various numbers; 
         FIG. 2C  illustrates examples of the keypad receiving swipe user input of various numbers; 
         FIG. 3  illustrates an example process for receiving multi-touch or swipe user input using the keypad; and 
         FIG. 4  illustrates an example process for utilizing a code input via a multi-touch keypad to access the vehicle. 
     
    
    
     DETAILED DESCRIPTION 
     As required, detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely exemplary of the invention that may be embodied in various and alternative forms. The figures are not necessarily to scale; some features may be exaggerated or minimized to show details of particular components. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for teaching one skilled in the art to variously employ the present invention. 
     A vehicle system may include an external keypad, where individual sensors are used as buttons. Each sensor may correspond to a numeric character, an alpha character or a combination of alpha-numeric characters. Using the sensors of the keypad, a user may enter in a code. When a correct code is entered, the user may be able to unlock the vehicle. The system may further implement a timeout feature, in which the user may be required to enter the correct code within a specified time. In an example, the timeout may be controlled by the body control module (BCM) of the vehicle. The system may also implement a lockout feature which limits a number of incorrect code attempts by the user before locking out the keypad. 
     Keyless entry systems accordingly provide a convenient way for people to access a vehicle without the key fob or other authentication device. Such systems may be used by people who go jogging, working out, or on an excursion, and prefer to leave the key fob inside the vehicle. The systems can also be used to provide access to the interior of the vehicle to a friend or a child, without providing them with the ability to start the vehicle. While numerical keypads are intuitive and quick to use, traditional numerical keypad may place rigid constraints in exterior vehicle design, requiring the specific numerical graphical interface to be presented to the user. Additionally numerical keypads may suffer from security concerns whereby unauthorized users may utilize thermal imaging or other techniques to reconstruct access codes. For example, despite the lockout feature, an unauthorized user may be able to observe the user entering the code, and then use the code at a later time to gain access to the vehicle. 
     An improved keypad may implement multi-touch technology configured to recognize multiple finger contacts. In an example, the system may include a keypad having a plurality of individual capacitive pads or other switches. Other examples of improved keypads utilizing a single touchpad are described in detail in co-pending application Ser. No. 14/635,650, filed Mar. 2, 2015, the disclosure of which is hereby incorporated in its entirety by reference herein. 
     In an example, to enter a number, rather than pressing a button assigned to the number, the user may instead simultaneously press a number of the pads corresponding to the number. Thus, to enter to enter the number ‘2’, the user simply touches any two pads simultaneously. When entering the numbers, in some implementations the keypad may optionally be configured to include a display configured to indicate the current number being entered. Using the improved keypad, if a code of a user is 35234, the user will place ‘3’ fingers on the pad, then ‘5’ fingers, then ‘2’ fingers, then ‘3’ fingers, and finally ‘4’ fingers. 
     In another example, the numbers may be entered based on sliding gesture inputs across multiple pads or switches, rather than through simultaneous contact. The fundamental still remains the same that to enter ‘2’ the user may touch two individual pads. However, instead of touching two pads simultaneously, the user may enter the ‘2’ by sliding a finger across two pads. The direction of sliding can be in any available direction (e.g., right to left, left to right, top to bottom, bottom to top, etc.). Such a keypad may also optionally be configured to include a display configured to indicate the current number being entered. 
     Thus, as a code may be entered via the keypad using multiple touches or swipes across the keypad switches, it may be difficult for the unauthorized user to learn the user&#39;s code merely by watching. Moreover, as the keypad receives input according to how many buttons are presses or swiped across, numbers or other indications need not be placed on the keys of the keypad, improving keypad aesthetics. Yet further, as the resultant multiple touches or swipes may be used to generate numeric inputs, the multiple touch/swipe key codes may be backward compatible with existing numeric codes, and/or may allow for a keypad to accept numbers entered either as direct presses of the number, or according to the multiple touch/swipe techniques described herein. 
       FIG. 1  illustrates an example keyless entry system  100  for a vehicle  102  having a keypad  122 . The system  100  may include a body controller  104  having a radio frequency (RF) transceiver  106 . A key fob  108  may be in communication with the RF transceiver  106  of the controller  104  utilizing a fob transceiver  110  powered by a battery  112 . An antenna  114  of the RF transceiver  106  may receive RF signals from an antenna  116  of the fob transceiver  110 , and may deliver the signals to the RF transceiver  106 . An unlock/lock mechanism  118  is operably coupled to the controller  104 . The controller  104  is configured to control the unlock/lock mechanism  118  to unlock/lock doors of the vehicle  102  in response to the RF signals transmitted by the key fob  108 . The key fob  108  may include one or more fob controls  120 , such as a lock switch and an unlock switch. Accordingly, the controller  104  controls the unlock/lock mechanism  118  to lock the doors of the vehicle  102  in response to a user depressing a lock fob control  120  of the key fob  108 , and to unlock the doors of the vehicle  102  in response to the user depressing an unlock fob control  120  of the key fob  108 . 
     The keypad  122  is in electrical communication with the controller  104 . The keypad  122  may be positioned on an exterior portion or section of the vehicle  102 . In one example, the keypad  122  may be hardwired to the controller  104 . In another example, the keypad  122  may be in RF communication with the controller  104  (e.g., via the RF antenna  114 ). The keypad  122  includes a plurality of mechanical pads, capacitive pads or other switches  124   a - 124   n  which correspond to numeric characters, alpha characters or any combination of alpha-numeric characters. The keypad  122  may further include a display  126  configured to display to the user the current character being entered into the keypad  122 . 
     In an example, the keypad  122  may transmit commands via hardwired signals to the controller  104  which correspond to a sequence of numeric characters, alpha characters, or alpha-numeric characters in response to the user selecting various switches  124   a - 124   n . In another example, the keypad  122  may transmit commands via RF signals which correspond to the alpha, numeric, or alpha-numeric characters to the controller  104  in response to the user selecting various switches  124   a - 124   n . The controller  104  controls the unlock/lock mechanism  118  to unlock/lock the doors in response to receiving the commands, e.g., two or more signals (RF or hardwired) which correspond to a valid sequence of alpha, numeric, or alpha-numeric characters. 
     The key fob  108  may be implemented in connection with a base remote entry system, a passive entry passive start (PEPS) system or a passive anti-theft system (PATS). With the PEPS system, the controller  104  may control the unlock/lock mechanism  118  to unlock the door in response to the controller  104  determining that the key fob  108  is a predetermined distance away from the vehicle  102 . In such a case, the key fob  108  automatically (or passively) transmits encrypted RF signals (e.g., without user intervention) in order for the controller  104  to decrypt (or decode) the RF signals and to determine if the key fob  108  is within the predetermined distance and are authorized. It is to be noted that with the PEPS implementation, the key fob  108  also generate RF signals which correspond to encoded lock/unlock signals in response to a user depressing a lock fob control  120  or an unlock fob control  120 . In addition, with the PEPS system, a key may not be needed to start the vehicle  102 . The user in this case may be required to depress the brake pedal switch or perform some predetermined operation prior to depressing a start switch after the user has entered into the vehicle  102 . In the PATS implementation, the key fob  108  may operate as a conventional key fob in order to unlock/lock the vehicle  102 . With the PATS implementation, a keys (not shown) is generally needed to start the vehicle  102 . The key may include a RF transmitter embedded therein to authenticate the key to the vehicle  102 . 
     The controller  104  includes an ignition switch authentication device  128 . The ignition switch authentication device  128  may also include an RF receiver (not shown) and an antenna (not shown) for receiving RF signals transmitted by the RF transmitters of the keys. It should be noted that the ignition switch authentication device  128  may be implemented as a standalone controller (or module). The ignition switch authentication device  128  is configured to authenticate the particular type of mechanism used to start the vehicle  102 . For example, with the PATS implementation, the key is inserted into an ignition switch  130  to start the vehicle  102 . In such a case, the RF transmitter of the key transmits RF signals having encrypted data therein to the receiver of the ignition switch authentication device  128 . The ignition switch authentication device  128  decrypts the data to authenticate the key prior to allowing the user to start the vehicle  102 . 
     With the PEPS implementation, as noted above, a key is not needed to start the vehicle  102 . In such a case, the ignition switch authentication device  128  authenticates the RF encrypted data passively transmitted by the transmitter  108   a - 108   n  to allow the user to start the engine of the vehicle  102 . As noted above, in addition to the authentication device  128  authenticating the RF encrypted data, the user may perform a predetermined operation (e.g., pull handle of a door, or open door, toggle the brake pedal switch, or other operation) prior to depressing a start switch to start the vehicle  102 . The system  100  contemplates a number of other operations from those listed prior to depressing the start switch to start the vehicle  102 . 
     The keypad  122  may implement multi-touch technology configured to recognize multiple finger contacts. Rather than pressing a switch  124  of the keypad  122  assigned to a number or letter to input that character, the user may instead simultaneously press a number of the pads corresponding to the desired number. Thus, to enter a digit of an access code, such as a personal code or factory code, the user may simply simultaneously touch or swipe across a number of the pads representative of the digit of the code being entered. As a code may be entered via the keypad  122  using multiple touches or swipes across the keypad switches  124 , it may be difficult for the unauthorized user to learn the user&#39;s code merely by watching. Moreover, as the keypad  122  may receive numerical input according to a number of button presses or number of pads swiped across, numbers or other indications need not be placed on or near the switches  124  of the keypad  122 . 
       FIG. 2A  illustrates an example of a keypad  122 -A receiving multi-touch user input of a number. As shown, the keypad  122 -A includes five switches  124 -A through  124 -E and a display  126  element, all in a relatively upright orientation suitable for vertical use on a B-pillar or elsewhere on the outside of the vehicle  102 . Also as shown, the user is pressing all five of the switches  124 -A through  124 -E, and the display  126  indicates a ‘5’ to provide feedback of the entered number to the user. Variations on the design of the keypad  122 -A are possible. For instance, keypads  122  may be implemented having a greater or fewer number of switches  124 . Additionally or alternately, some keypads  122  may exclude the display  126 , and/or may include switches  124  or displays  126  in different orientations or designs. 
       FIG. 2B  illustrates examples of keypads  122  receiving multi-touch user input of various numbers. As shown, each of keypads  122 -B and  122 -C is receiving input from two of the switches  124  to designate the number ‘2’, and includes an indication on the display  126  of the number ‘2’. It should be noted that these are only two of the possible ways to enter the number ‘2’. For a keypad of five switches  124  as illustrated in  FIG. 2B , there may be ten different ways to enter the number ‘2’. 
     Each of keypads  122 -D and  122 -E is receiving input from three of the switches  124  to designate the number ‘3’, and includes an indication on the display  126  of the number ‘3’. It should similarly be noted that these are only two of the ten possible ways to enter the number ‘3’ using the multi touch keypad  122 . Similarly, each of keypads  122 -F and  122 -G is receiving input from four of the switches  124  to designate the number ‘4’, and includes an indication on the display  126  of the number ‘4’. It should again be noted that these are only two of the five possible ways to enter the number ‘4’ using the multi touch keypad  122 . 
     When the user releases the switches  124  of the keypad  122 , the number may be considered to be entered by the keypad  122 , and may be provided to the controller  104  for processing. 
       FIG. 2C  illustrates example keypads  122  receiving swipe user input of various numbers. As shown, each of keypads  122 -H,  122 -I,  122 -J, and  122 -K is receiving swipe input across two of the switches  124  to designate the number ‘2’, and includes an indication on the display  126  of the number ‘2’. For instance, the keypad  122 -H illustrates a swipe from switch  124 -A to switch  124 -B, the keypad  122 -I illustrates a swipe from switch  124 -B to switch  124 -A, the keypad  122 -J illustrates a swipe from switch  124 -B to switch  124 -C, and the keypad  122 -K illustrates a swipe from switch  124 -C to switch  124 -D. It should be noted that these are only four of the possible ways to swipe the number ‘2’. For a keypad of five switches  124  as illustrated in  FIG. 2C , there may be fourteen different ways to swipe the number ‘2’. 
     Similarly, each of keypads  122 -L,  122 -M,  122 -N, and  122 -O is receiving swipe input across three of the switches  124  to designate the number ‘3’, and includes an indication on the display  126  of the number ‘3’. For instance, the keypad  122 -L illustrates a swipe from switch  124 -A over switch  124 -B to switch  124 -C, the keypad  122 -M illustrates a swipe from switch  124 -C over switch  124 -B to switch  124 -A, the keypad  122 -N illustrates a swipe from switch  124 -B over switch  124 -C to switch  124 -D, and the keypad  122 -O illustrates a swipe from switch  124 -D over switch  124 -C to switch  124 -B. It should be noted that these are only four of the possible ways to swipe the number ‘3’. For a keypad of five switches  124  as illustrated in  FIG. 2C , there may be six different ways to swipe the number ‘3’. 
     Notably, the number illustrated by the display  126  may increment as the magnitude of the swipe increases. For instance, when the user presses a first switch  124 , the display  126  may show the number ‘1’. When the user swipes to a second switch  124  adjacent to the first switch  124 , the display  126  may increment to the number ‘2’ to indicate the swiped value. When the user continues to swipe in the same direction to a third switch  124  adjacent to the second switch  124 , the display  126  may increment to the number ‘3’ to indicate the increased value that was swiped. When the user released from the keypad  122 , the number may be considered to be entered by the keypad  122 , and may be provided to the controller  104  for processing. 
       FIG. 3  illustrates an example process  300  for receiving multi-touch or swipe user input using the keypad  122 . The process  300  may be performed, for example, by a keypad  122  such as one or more of the keypads  122 -A through  122 -O illustrated above with respect to  FIGS. 2A-2C . 
     At operation  302 , the keypad  122  identifies initiation of a multi-touch input character sequence. In an example, the keypad  122  may detect the initiation by a signal received from one or more of the switches  124  of the keypad  122  indicating that the user has pressed one or more of the switches  124 . 
     At operation  304 , the keypad  122  updates the keypad display  126 . In examples where the keypad display  126  is present and enabled, the keypad  122  may update the keypad display  126  to indicate the value of the currently entered input character. For instance, when a multi-touch input character is initiated by a user pressed down on one of the switches  124 , the keypad  122  may determine that the value is ‘1’, and may direct the keypad display  126  to display the numeral ‘1’. In another example, when a multi-touch input character is initiated by a user pressed down on three of the switches  124 , the keypad  122  may determine that the value is ‘3’, and may direct the keypad display  126  to display the numeral ‘3’. In yet another example, responsive to the user pressing an additional one of the switches  124  or swiping across an additional one of the switches, the keypad  122  may determine that the input value is increased, and may direct the keypad display  126  to display the increased value. 
     At operation  306 , the keypad  122  determines whether additional input was provided to the switches  124  that would require an update to the character being input. In an example, when entering a character using a swipe technique, such as shown in  FIG. 2C , when the user swipes to a switch  124  adjacent to a previously swiped or pressed switch  124 , the keypad  122  may determine that an increment may be required to the input value. In another example of a swipe scenario, when the user reverses direction and backs off from a previously swiped switch  124 , the keypad  122  may determine that a decrement may be required to the input value. In an example of a multi-touch scenario, when the user additionally presses an additional switch  124  without releasing the currently pressed switch  124  or switches  124 , the keypad  122  may determine that an increment may be required to the input value. In another example of a multi-touch scenario, when the user removes from pressing one of a plurality of switches  124  currently being pressed, the keypad  122  may determine that a decrement may be required to the input value. If additional input was provided to the switches  124  that requires an update to the character being input, control passes to operation  308 . Otherwise, control passes to operation  310 . 
     At operation  308 , the keypad  122  updates the character being input. For instance, responsive to the user swiping to an additional switch  124 , backing off from a previously swiped switch  124 , pressing additional ones of the switches  124 , or releasing from some of the currently pressed switches  124 , the keypad  122  updates the character in accordance with the currently swiped or simultaneously pressed value. After operation  308 , control returns to operation  304  to update the keypad display  126 . 
     At operation  310 , the keypad  122  determines whether entry of the multi-touch character is complete. In an example, when the keypad  122  determines that all of the switches  124  have been released, control passes to operation  312 . In another example, when the keypad  122  detects that there has been no change to the entered value being input for a multi-touch timeout value (e.g., one second, two seconds, etc.), the keypad  122  considers the value to be complete and control passes to operation  312 . Otherwise, control returns to operation  306  to determine whether additional input has been provided. 
     At operation  312 , the keypad  122  sends the entered character to be processed. In an example, the keypad  122  may transmit the entered character to the controller  104  via a wired or wireless connection. After operation  312 , the process  300  ends. 
       FIG. 4  illustrates an example process  400  for utilizing a code input via a multi-touch keypad  122  to access the vehicle  102 . The process  400  may be performed, in an example, by the controller  104  in communication with the keypad  122 . 
     At operation  402 , the controller  104  receives input from the keypad  122 . In an example, the input may be entered into the multi-touch keypad  122  using the plurality of switches  124  of the keypad  122  according to the process  300 . 
     At operation  404 , the controller  104  determines whether a lock doors command was input to the keypad  122 . In an example, the lock doors command may be specified by a user pressing and holding two of the switches  124  of the keypad  122 , or swiping across two of the switches of the keypad  122  (or by entering another predefined value). As shown, the lock doors command may be entered without a user having to enter a personal code, but it should be noted that in other examples the personal code may be required for the lock command. If the lock doors command is input, control passes to operation  406 . 
     At operation  406 , the controller  104  locks the vehicle  102  doors. In an example, the controller  104  may command the unlock/lock mechanism  118  to lock the doors of the vehicle  102 . After operation  406 , the process  400  ends. 
     At operation  408 , the controller  104  determines whether an access code was input to the keypad  122 . In an example, the controller  104  may determine wither the input matches a previously set up personal code or a factory code included in the controller  104  as shipped. If an access code is entered, control passes to operation  410 . Otherwise, the process  400  ends. 
     At operation  410 , the controller  104  receives input from the keypad  122 . In an example, once authenticated using the personal code, the user may enter an unlock command to be performed by the vehicle  102 . 
     At operation  412 , the controller  104  determines whether an unlock doors command was input to the keypad  122 . In an example, the unlock doors command may be specified by a user pressing one of the switches  124  of the keypad  122  (or by entering another predefined value). If the unlock doors command was entered, control passes to operation  414 . Otherwise, control passes to operation  416 . 
     At operation  414 , the controller  104  unlocks the vehicle  102  doors. In an example, the controller  104  may command the unlock/lock mechanism  118  to unlock the doors of the vehicle  102 . After operation  414 , the process  400  ends. 
     At operation  416 , the controller  104  determines whether a trunk release command was input to the keypad  122 . In an example, the trunk release command may be specified by a user pressing or swiping across two of the switches  124  of the keypad  122  (or by entering another predefined value). If the trunk release command was entered, control passes to operation  416 . Otherwise, the process  400  ends. 
     At operation  418 , the controller  104  releases the vehicle  102  trunk latch. In an example, the controller  104  may command the unlock/lock mechanism  118  to release the trunk latch of the vehicle  102 . After operation  414 , the process  400  ends. 
     While exemplary embodiments are described above, it is not intended that these embodiments describe all possible forms of the invention. Rather, the words used in the specification are words of description rather than limitation, and it is understood that various changes may be made without departing from the spirit and scope of the invention. Additionally, the features of various implementing embodiments may be combined to form further embodiments of the invention.