diff FC-handset-spec @ 44:a415ae467c6d

FC-handset-spec: main keypad and its backlight documented
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 10 Jun 2021 18:10:35 +0000
parents e1b75668a706
children 9df8683daec4
line wrap: on
line diff
--- 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
+		<O>
+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.