# HG changeset patch # User Mychaela Falconia # Date 1623348635 0 # Node ID a415ae467c6d15c1b79ef7c85bd4512be83f24f0 # Parent e1b75668a706b1cf8ad857e062554e4641e70921 FC-handset-spec: main keypad and its backlight documented diff -r e1b75668a706 -r a415ae467c6d FC-handset-spec --- a/FC-handset-spec Thu Jun 10 16:47:40 2021 +0000 +++ b/FC-handset-spec Thu Jun 10 18:10:35 2021 +0000 @@ -234,7 +234,8 @@ series resistors, connect each cathode to the corresponding LEDn pin of MAX1916 - *without* any resistors or transistors! FETs inside the MAX1916 take the place of resistors as current-limiting elements, and the chip's global on/off -control takes the place of a separate switching transistor. +control (which will be driven with a Calypso GPIO) takes the place of a separate +switching transistor. The special quality of MAX1916 is that it produces constant current through each LED (based on a set reference current and 230x current multiplication circuit @@ -321,3 +322,87 @@ Thus based on all of the above considerations, I feel justified in my design choice of foregoing PWM control of backlight intensity in favor of fixed current switching with much more limited selection. + +1.5. Main keypad + +The main keypad on our FC Libre Dumbphone handset will have the following +21-button arrangement: + +left soft key ^ right soft key + +green call V red power/hang-up +button button + +1 2 3 +4 5 6 +7 8 9 +* 0 # + +The top section above the traditional numeric dial buttons (12) consists of left +and right soft keys, green and red buttons (classically called SEND/END), and a +5-way navigation button group (left, right, up, down and center), for a total of +9 buttons in this section. The red hang-up button is also the hardware power-on +button; having the same button effect power-off when held down for some time is +a firmware function. + +This 21-button main keypad arrangement is exactly the same as featured on +Motorola C1xx and Pirelli DP-L10 phones, on TI's D-Sample development platform, +and also on many other phones (non-Calypso) from the appropriate era, such as +Samsung E2232. + +1.5.1. Keypad backlight + +All traditional phones including Mot C1xx and Pirelli DP-L10 feature keypad +backlights, hence we need to include one as well. The exact structure of this +backlight won't be known until we enter the mechanical design phase for the +actual handset (as opposed to intermediate development boards), which will be +much later in the project, but the Mother's understanding is that keypad +backlights are made up of some number of LEDs (2 on Pirelli DP-L10, unknown +number on Mot C139) and some kind of light diffuser. + +Given the discovery of MAX1916 constant-current-sink LED driver chip (see +section 1.4.4), the optimal electrical design of the keypad backlight becomes +clear: use 3 LEDs, and drive them using another MAX1916 chip, separate from the +one used for the LCD backlight. + +Backlight intensity: neither Mot C139 nor Pirelli DP-L10 provides any way to +vary keypad backlight intensity, and no such variability is deemed necessary. +In the long-call state when the LCD backlight is dimmed, the keypad backlight +is fully off. We shall use a fixed LED current setting for our keypad +backlight, set with a single fixed resistor between the keypad MAX1916 chip's +SET pin and the V-IO rail, and the actual current value will be determined in a +much later phase of the project, when we have the actual keypad backlight LEDs +and a better idea of the mechanical design. + +Backlight color: Mot C139 uses blue LEDs, Pirelli DP-L10 uses white LEDs. +Because blue and white LEDs have very similar electrical characteristics +(current needed for appropriate brightness, Vf at this current), the choice +between the two can be made in a much later project phase, based on input from +other team members who are better at aesthetics. + +1.5.1.1. Comparison with Mot C139 and Pirelli DP-L10 + +Both of these two pre-existing reference phones feature keypad backlights that +are switched on/off via Iota LEDB; the actual circuit design is unknown. +However, in our design we forego Iota LEDB altogether (it won't be used for +anything), and use two MAX1916 chips for our LCD and keypad backlights, with +each chip's on/off control being a Calypso GPIO. + +The actual workings of the LEDB driver or switch inside the Iota chip are a +mystery. On the one hand it appears to be nothing more than a "dumb" transistor +on/off switch, no different from an external "digital transistor" (BJT with bias +resistors) controlled by a Calypso GPIO: a resistor still seems to be required +for current control, and at least on the Pirelli DP-L10 the keypad backlight +intensity visibly varies with Vbat ranging over the Li-ion discharge range. But +on the other hand, LEDB requires the 13 MHz clock to be running, and the light +goes out when this clock is stopped. Why in the world would any kind of clock +be required if the circuit is only a transistor on/off switch controlled by a +static register bit? Other parts of TI's Iota datasheet describe its LEDA, LEDB +and LEDC as "current drivers" - but in the absence of any way to actually set +the desired current without depending on Vbat or Vf variations, whatever the +Iota chip actually provides can't be anything like MAX1916. + +Poorly documented, non-understood mystery hardware is best avoided, hence we are +not going to use Iota LEDB, and shall only use MAX1916 instead. We also gain a +functional improvement over Pirelli DP-L10 by using MAX1916: our keypad +backlight intensity will remain the same over the battery discharge range.