Abstract:
A method of communication between a modular wireless communicator and a jacket device that is connected to the modular wireless communicator via a connector a connector that connects a plurality of signal transmission lines, the jacket device including a keypad for operating the modular wireless communicator, including receiving a multi-bit signal over multiple signal transmission lines, one bit of which indicating whether the jacket device includes a serial NOR flash memory, if the jacket device includes a serial NOR flash memory, then reading a jacket ID from the serial NOR flash memory, if the jacket device does not include a serial NOR flash memory, then reading the jacket ID from other bits of the multi-bit signal, receiving jacket keypad signals over multiple signal transmission lines, and decoding the jacket keypad signals based on the jacket ID.

Description:
CROSS REFERENCES TO RELATED APPLICATIONS 
       [0001]    This application claims benefit of U.S. Provisional Application No. 61/152,708, entitled WIRELESS COMMUNICATOR JACKET WITH MULTIPLE OPERATIONAL STAGES, filed on Feb. 15, 2009 by inventors Itay Sherman and Yohan Cohen. 
     
    
     FIELD OF THE INVENTION 
       [0002]    The present invention relates to miniature wireless communicators that operate in conjunction with jacket devices. 
       BACKGROUND OF THE INVENTION 
       [0003]    Miniaturization of electronic devices poses many challenges for efficiency and cost-effectiveness of mechanical design, circuit design and signal processing. Among these challenges is the challenge of developing and manufacturing devices with small connectors that are reliable and that use a limited number of pins. 
       SUMMARY OF THE DESCRIPTION 
       [0004]    Aspects of the present invention relate to a miniature modular wireless communicator, such as a cell phone module, that interoperates with a variety of jackets. When attached to or inserted in the jacket, the communicator provides each jacket with wireless communication capabilities, and the jacket provides the communicator with a user interface. 
         [0005]    Embodiments of the present invention include inexpensive jackets with very simple functionality. These simple jackets have a display screen, a keypad, an optional backlight for the keypad, and an optional vibrator. The simple jackets may also have a serial NOR flash memory. The simple jackets have jacket IDs, which are used by the communicator to identify the jackets. 
         [0006]    Embodiments of the present invention also include jackets with complex functionality. 
         [0007]    Because of their low cost, users can generally afford to purchase a variety of distinct jackets, each having a unique look &amp; feel, with a unique shape, a unique casing, a unique display screen and a unique keypad. Designers may create business jackets, party jackets, glitzy jackets, formal jackets, outdoors jackets, sports jackets, travel jackets, ethnic jackets, club jackets, student jackets, collector jackets, humorous jackets, theme jackets, souvenir jackets, celebrity jackets, custom ordered jackets, and more. And users can change jackets at will, and dress up their cell phones according to occasion and personal taste. Low cost jackets also afford marketing opportunities, whereby jackets are branded and used as marketing collateral and distributed for free. 
         [0008]    Clearly the success of the “jacket” business depends on the ability to inexpensively manufacture the jackets. 
         [0009]    In accordance with embodiment of the present invention, a digital interface uses 12 connector pins for simple jacket identification and for keypad decoding. Some of the communication lines through the connector pins are used for general purpose I/O, and run directly to the keypad. 
         [0010]    Embodiments of the present invention use the 12 pins in a very efficient way to enable four operational stages, and transitions therebetween. The four stages include:
   Stage 1: Initial Type Detection—determining whether the jacket is a simple type of jacket or a complex type of jacket.   Stage 2: Complex Jacket—12-pin communication bus for a designated protocol.   Stage 3: Simple Jacket Identification—identifying a jacket ID.   Stage 4: Normal Keypad Decode—decoding a 4×5 keypad array and controlling activation of a backlight for the keypad and activation of a vibrator.   
 
         [0015]    There is thus provided in accordance with an embodiment of the present invention a method of communication between a modular wireless communicator and a jacket device that is connected to the modular wireless communicator via a connector that connects a plurality of signal transmission lines, the jacket device including a keypad for operating the modular wireless communicator, including receiving a multi-bit signal over multiple signal transmission lines, one bit of which indicating whether the jacket device includes a serial NOR flash memory, if the jacket device includes a serial NOR flash memory, then reading a jacket ID from the serial NOR flash memory, if the jacket device does not include a serial NOR flash memory, then reading the jacket ID from other bits of the multi-bit signal, receiving jacket keypad signals over multiple signal transmission lines, and decoding the jacket keypad signals based on the jacket ID. 
         [0016]    There is additionally provided in accordance with an embodiment of the present invention a communication system including a modular wireless communicator including a connector for connecting the communicator to any one of a plurality jacket devices via a plurality of signal transmission lines, a controller, communicatively coupled with the connector, for receiving signals, over multiple transmission lines, that identify a jacket device that is connected to the communicator, and for receiving signals, over multiple transmission lines, generated by keypad presses from the identified jacket device, and a modem, communicatively coupled with the controller, for transmitting data over the air in response to the keypad presses, and a plurality of jacket devices, each jacket device including a keypad for receiving user input via keypad presses, and a connector, communicatively coupled with said keypad, for connecting the jacket device to said communicator via the plurality of signal transmission lines. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0017]    The present invention will be more fully understood and appreciated from the following detailed description, taken in conjunction with the drawings in which: 
           [0018]      FIG. 1  is an illustration of a modular wireless communicator and a jacket therefor, in accordance with an embodiment of the present invention; 
           [0019]      FIG. 2  is a simplified block diagram of the modular wireless communicator of  FIG. 1 , in accordance with an embodiment of the present invention; 
           [0020]      FIG. 3  is an illustration of the jacket of  FIG. 1 , in accordance with an embodiment of the present invention; 
           [0021]      FIG. 4  is a simplified block diagram of the jacket of  FIG. 1 , in accordance with an embodiment of the present invention; 
           [0022]      FIG. 5  is a high level circuit diagram for a first jacket, in accordance with an embodiment of the present invention; 
           [0023]      FIG. 6  is a high level circuit diagram for a second jacket that includes a serial NOR flash memory, in accordance with an embodiment of the present invention; 
           [0024]      FIG. 7  is a simplified flowchart of a method for jacket identification, in accordance with an embodiment of the present invention; and 
           [0025]      FIG. 8  is a connector pinout table for an implementation of a communicator that is connected to a jacket, in accordance with an embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0026]    Aspects of the present invention relate to a miniature modular wireless communicator, such as a modular cell phone, and a jacket device. The communicator attaches to the jacket, or inserts partially or entirely inside the jacket. When attached to or inserted in the jacket, the communicator and jacket interoperate—the communicator providing the jacket with wireless communication capabilities, and the jacket providing the communicator with a user interface. 
         [0027]    Embodiments of the present invention enable manufacture of jackets at very low cost. Users can afford to buy a variety of jackets, which in turn enables an entire market for cell phone jacket design. 
         [0028]    Reference is now made to  FIG. 1 , which is an illustration of a modular wireless communicator  100  and a jacket  200 , in accordance with an embodiment of the present invention. Reference is also made to  FIG. 2 , which is a simplified block diagram of modular wireless communicator  100 , in accordance with an embodiment of the present invention. 
         [0029]      FIG. 1  shows stages of attaching communicator  100  to jacket  200 . As shown in  FIG. 2 , communicator  100  includes a cellular base band modem  110 , a connector  120  for connecting the communicator to jacket  200 , a power amplifier  130  with an RF interface  135  that is connected to an antenna  140 , a memory  150 , a subscriber identity module (SIM) card  180 , and an FPGA controller  190 . Modem  110  controls the wireless communication functionality of communicator  100 . Controller  190  executes programmed instructions that control the data flow between communicator  100  and jacket  200  via signal lines that pass through connector  120 . Optionally, communicator  100  may include a user interface  160 , and a power management subsystem  170  that charges a battery  175 . 
         [0030]    Reference is now made to  FIG. 3 , which is an illustration of jacket  200 , in accordance with an embodiment of the present invention. Reference is also made to  FIG. 4 , which is a simplified block diagram of jacket  200 , in accordance with an embodiment of the present invention.  FIG. 3  shows five perspective views of jacket  200 . As shown in  FIG. 4 , jacket  200  includes a field-programmable gate array (FPGA) controller  210 , a connector  220  for connecting the jacket to communicator  100 , a memory  250  storing a jacket ID  255 , a user interface  260  including a display screen  261 , a keypad  262 , a backlight  263  for keypad  262 , and a vibrator  264 , and a power management subsystem  270  and battery  275 . In one embodiment of the present invention, jacket ID  255  is a 4-bit code. User interface  260  may optionally include additional components (not shown) such as a microphone, a headset audio jack, an earpiece, and a mono speaker or stereo speakers. 
         [0031]    In accordance with embodiments of the present invention, communicator  100  interoperates with a variety of jackets  200 , some of which are standalone devices, and some of which are only operable in conjunction with communicator  100 . Some jackets, such as the jacket shown in  FIG. 3 , have only a screen, a keypad, an optional backlight for the keypad, and an optional vibrator. Such jackets are referred to herein as “simple” jackets. Simple jackets may include a serial NOR flash memory. 
         [0032]    Other jackets have more functionality, and are referred to herein as “complex” jackets. Communicator  100  may also interoperate with peripheral devices, in addition to jackets  200 . 
         [0033]    One of the many challenges in developing and manufacturing communicator  100  is the requirement of miniature size and reliable connection to jackets  200 . As such, communicator  100  is pin-limited. In one implementation of the present invention, a 12-pin interface is used to provide both a full communication bus for complex jackets, and an interface for jacket identification and keypad decoding for simple jackets. The 12 interface pins provide multiplexed functionality for four operational stages. Functionality switches according to transitions from a current stage to a next stage, as described in detail hereinbelow. 
         [0034]    Reference is now made to  FIG. 5 , which is a high level circuit diagram for a first jacket, in accordance with an embodiment of the present invention. Reference is also made to  FIG. 6 , which is a high level circuit diagram for a second jacket that includes a serial NOR flash memory  250 , in accordance with an embodiment of the present invention. Components of communicator  100  are shown to the right of connector  120 / 220 , and components of jacket  200  are shown to the left of connector  120 / 220 . 
         [0035]    As shown in  FIGS. 5 and 6 , connector  120 / 220  uses 4 pins (pins  26 - 29 ) for keypad columns, 5 pins (pins  18 - 21  and  24 ) for keypad rows, one pin for activating backlight  263 , one pin for activating vibrator  264 , and one additional pin connected to a level shifter  111 . A single pin (pin  14 ) is used to control an N-channel FET transistor, which turns backlight  263  on and off. Similarly, a single pin (pin  17 ) is used to control another N-channel FET transistor, which turns vibrator  264  on and off. The pin (pin  23 ) connected to level shifter  111  is used for hardware recognition. 
         [0036]    TABLE I describes four operational stages for these jackets, and transitions therebetween. 
         [0000]    
       
         
               
             
               
               
             
           
               
                 TABLE I 
               
             
             
               
                   
               
               
                 Operational Stages and Transitions Therebetween 
               
             
          
           
               
                 Stage 
                 Functionality 
               
               
                   
               
               
                 1. Initial Type Detection 
                 Controller 190 senses voltage on one of 
               
               
                   
                 the pins. 
               
               
                   
                 Jacket 200 uses a pull-up or a pull-down 
               
               
                   
                 resistor to indicate the type of jacket 
               
               
                   
                 (simple or complex), via a level shifter 
               
               
                   
                 111. 
               
               
                   
                 For a complex jacket 200, proceed to 
               
               
                   
                 Stage 2. 
               
               
                   
                 For a simple jacket 200, proceed to 
               
               
                   
                 Stage 3. 
               
               
                 2. Complex Jacket 
                 If jacket 200 is a complex jacket, the 12 
               
               
                   
                 pins are used as a communication bus 
               
               
                   
                 with a designated protocol. 
               
               
                   
                 In one implementation the pins are used 
               
               
                   
                 as follows: Clock In/Out, Data Bus 0-7, 
               
               
                   
                 Management Bus In/Out 
               
               
                 3. Simple Jacket Identification 
                 If jacket 200 is a simple jacket, 
               
               
                   
                 controller 190 drives a logical ‘1’ to 
               
               
                   
                 identification circuitry that is muxed over 
               
               
                   
                 lines that are used for keypad analysis. 
               
               
                   
                 If the most significant bit (MSB) of the 
               
               
                   
                 code is ‘1’, then jacket 200 includes a 
               
               
                   
                 serial NOR flash memory (FIG. 6), from 
               
               
                   
                 which jacket ID 255 is read. 
               
               
                   
                 If the MSB is ‘0’, then jacket 200 does 
               
               
                   
                 not include a serial NOR flash memory 
               
               
                   
                 (FIG. 5), and the next 4 bits indicate the 
               
               
                   
                 jacket ID 255. 
               
               
                   
                 Proceed to Stage 4. 
               
               
                 4. Normal Keypad Decode 
                 Controller 190 performs matrix keypad 
               
               
                   
                 decode for a keypad array 262 of 4 × 5 
               
               
                   
                 buttons, which requires 4 + 5 = 9 
               
               
                   
                 signals. Two other lines are used to 
               
               
                   
                 control activation of backlight 263 and 
               
               
                   
                 vibrator 264. 
               
               
                   
               
             
          
         
       
     
         [0037]    Regarding Stage 1, Initial Type Detection, when communicator  100  is connected to jacket  200 , the interrupt line (pin  22 ), which was in high state on communicator  100  prior to being connected to jacket  200 , is pulled down by a 1 kΩ resistor. This indicates to controller  190  that jacket  200  is now connected thereto. Subsequently controller  190  opens the VBAT_COMM switch towards jacket  200 . The 3V directed from communicator  100  to jacket  200  is disconnected at this Stage, to prevent false ID reading. 
         [0038]    In order to determine whether jacket  200  is a simple jacket or a complex jacket, controller  190  checks the VCC_COMM pin (pin  23 ). The VCC_COMM pin, on complex jackets, is 3V directed from jacket  200  to communicator  100 . On the side of jacket  200 , the VCC_COMM is generated by an LDO, and is cut from VBAT_COMM, which passes on connector  220 . On the side of communicator  100 , VCC_COMM is connected to a 1.8V bank, which is always on, and thus requires a 3V to 1.8V level shifter  111  along the way. 
         [0039]    As such, if controller  190  finds that the VCC_COMM pin is high (1.8V), then controller  190  identifies jacket  200  as being a complex jacket. If controller  190  finds that the VCC_COMM pin has no voltage, then controller  190  identifies jacket  200  as being a simple jacket. 
         [0040]    Regarding Stage 3, Simple Jacket Identification, reference is now made to  FIG. 7 , which is a simplified flowchart of a method for jacket identification, in accordance with an embodiment of the present invention. At step  1005  controller  190  reads a 5-bit code of a detection signal. Specifically, referring to  FIGS. 5 and 6 , the HW-R pin (pin  23 ) is set to high and drives the VCC_COMM/HW-R line. The VCC_COMM/HW-R passes to jacket  200  and drives 1-5 pull-up resistors located on the KBDI lines. These pull-up resistors generate a 5-bit code on the KBDI lines, which is sampled by controller  190 . This is the 5-bit code that is read at step  1005 . 
         [0041]    If the most significant bit (MSB) of the 5-bit code is ‘1’, as determined at step  1010 , then jacket  200  includes serial NOR flash memory  250  (as in  FIG. 6 ), as indicated at step  1015 . At step  1020  the detection signal is switched, and used as a chip select (CS) signal for selecting between communicator  100  and serial NOR  250 . At step  1025 , some of the communication bus data lines are used to access serial NOR  250  and read the jacket ID  255  therefrom. At step  1030 , after content of serial NOR  250  is read, the CS is disabled and held at logical ‘1’. As such, the output of serial NOR  250  is put in tri-state, and thus blocked from interfering with keypad decode operations. The 3V switch on communicator  100  is opened, and feeds jacket  200  through pin  15 . Subsequently, at step  1035  controller  190  transitions to Stage 4, Normal Keypad Decode. 
         [0042]    If the MSB of the code is ‘0’, as determined at step  1010 , then jacket  200  does not include a serial NOR flash memory (as in  FIG. 5 ), as indicated at step  1040 . At step  1045  the next four bits of the code read at step  1005  are used to identify the jacket ID  255 . At step  1050 , after identifying the jacket ID, the detection signal is disabled and held at logical ‘1’, thus blocking the identification data from interfering with keypad decode operations. The 3V switch on communicator  100  is opened, and feeds jacket  200  through pin  15 . Subsequently, at step  1035  controller  190  transitions to Stage 4, Normal Keypad Decode. 
         [0043]    The jacket ID identified at step  1025  or step  1045 , is used to identify the jacket&#39;s keypad, so that controller  190  is able to decode the keypad strokes. 
         [0044]    Regarding Stage 4, Normal Keypad Decode, keypad operation is generally divided into Idle State, and Flash Freeze. During “Idle State”, keypad scans are performed periodically. Any keypad press is immediately sampled by controller  190 . During “Flash Freeze”, the keypad is not scanned. When a keypad is pressed, controller  190  must be awakened and scan the keypad. 
         [0045]    All four KBDO lines in  FIGS. 5 and 6  are pulled-up by resistors on the side of jacket  200 . When a key is pressed, at least one of the KBDI lines is pulled high, and an OR gate  221  output is initiated to high state. The output of OR gate  221  is connected to the interrupt line that goes to modem  110 . Modem  110  senses the interrupt line and awakens controller  190  from Flash Freeze. Once controller  190  is awakened, it begins scanning the keypad lines. It is noted that, typically, a standard keypad press is sufficiently long to generate a wakeup and a keypad scan without missing the keypad press. 
         [0046]    When communicator  100  is disconnected from jacket  200 , VBAT_JACKET drops immediately to 0V. VBAT_JACKET is connected to modem  110  via level shifter  113 . As such, an interrupt is used to notify controller  190  of jacket disconnection, instead of controller  190  having to regularly poll VBAT_JACKET. 
       Implementation Details 
       [0047]      FIG. 8  is a connector pinout table for an implementation of a communicator that is connected to a jacket, in accordance with an embodiment of the present invention. The table of  FIG. 8  corresponds to the circuit diagrams of  FIGS. 5 and 6 . As such, pins  18 - 21 ,  24  and  26 - 29  are connected to keypad  262 , pin  14  is connected to optional backlight driver  263 , pin  17  is connected to optional vibrator  264 , and pin  23  is used for hardware recognition. Power for backlight driver  263  and for vibrator  264  is taken from VBAT_COMM. In an alternate implementation, power for backlight driver  263  and for vibrator  264  is taken from VCC — 3V. 
         [0048]    In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. It will, however, be evident that various modifications and changes may be made to the specific exemplary embodiments without departing from the broader spirit and scope of the invention as set forth in the appended claims. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.