annotate doc/SE-J100-target @ 660:293c7db5f10f

bmi3: fixed the mysterious "mute on first call" bug When UI-enabled fw boots on a previously blank (no /mmi/* files) FFS for the first time, the output_volume member of the persistent UI settings structure was left uninitialized, corresponding to the earpiece volume being set to mute, which is an invalid setting. Because of other quirks in the far-from-finished UI code, this volume setting takes effect only when the first call is answered, producing the odd behaviour seen at the user level. The current fix is to set the blank-FFS default for output_volume to volume level 4, which is the same -6 dB Iota volume as the ACI default.
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 14 May 2020 02:50:41 +0000
parents 7cecc3dadbe7
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
595
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 Sony Ericsson J100 target support in FreeCalypso
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 ================================================
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 SE J100 is the last Calypso device target of OsmocomBB origin to be added to
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 FreeCalypso, joining the already-supported Mot C1xx and Pirelli DP-L10. This
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 target is really not interesting at all on its own merit, instead it has been
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 added to FC Magnetite for testing purposes: to verify that we are able to drive
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 this J100 variant of Compal's RFFE and produce correct RF Tx output as observed
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 with our CMU200 instrument.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 Despite being a Sony Ericsson rather than Motorola product (slightly different
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 case design, totally different battery and accessory connectors), in core
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 technical terms this SE J100 phone is still Compal, same as Mot C1xx. It is
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 technically closest to Mot C139, with only a few differences:
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 * The display is different: same 96x64 pixel color, but a different model
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 requiring a different driver;
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 * A ringtone player chip is used instead of the Calypso-driven buzzer;
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 * There are a few differences in GPIO setup, in TSPACT signal usage for RF Tx
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 and in some RF Tx parameters (APC offset and Tx ramp templates) stemming from
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 the use of a slightly newer RF PA, such that a firmware image built for Mot
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 C139 or C11x should not be run on the J100, even if the LCD and the buzzer
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 are don't-cares.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 If you have one of these phones and wish to run FreeCalypso on it, follow the
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 procedure for Mot C139 in C1xx-Howto, with the following differences:
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 * You need to build a firmware image specifically for the j100 target
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 (./configure.sh j100 hybrid-vpm), don't flash a c139 or c11x build.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 * Only the VPM configuration is available, not the proof-of-concept UI - the
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 LCD driver for the latter configuration exists only for the Mot C139 LCD,
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 not for SE J100 or any other C1xx.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 * It is not certain at all whether the battery charging configuration we have
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 for Mot C1xx is correct or not for SE J100 - see further below.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 Serial connection difficulty
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 ============================
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 Connecting the serial interface (the obvious prerequisite before one can do any
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 kind of firmware hacking) is a lot more difficult on the SE J100 compared to
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 Mot C1xx. Following Sony Ericsson's product line, this J100 phone does not have
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 round-jack headset or charger connectors, instead all accessories (charger,
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 headsets, Calypso UART access) are connected through a multi-pin connector (12
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 pins to be exact) that was used by SE across their product line. While there
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 exist a number of "cottage industry" vendors who make ready-to-use serial cables
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 for the kind of headset jack found in Mot C1xx phones, there does not appear to
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 be anyone making comparable cables for SE J100, thus the only way to play with
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 one of these phones is to construct the necessary serial cable yourself.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 The pins on SE's proprietary accessory connector which carry Calypso UART RxD
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 and TxD on the J100 are the same pins which carry USB data lines on some other
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 SE phones which (unlike J100) have an official data services / computer
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 connection function, thus there are two ways to hack together Calypso UART
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 access on the J100:
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 Option 1: you can take a Sony Ericsson (or clone) USB-to-phone data cable and
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 mutilate it: cut off the USB end, split out the little wires and solder them to
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 your choice of 3.3 V USB-serial adapter. This is the route that was taken by
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 this author (Mother Mychaela), and when I did it, I ran into a nasty little
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 problem: the wires inside the cut-apart SE-clone USB-to-phone cable are
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 extremely thin (can't be any thicker than 28 AWG, and seemed to be even thinner
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 than that), and the solder contraption feels like it is barely holding, like it
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 is going to fall apart at any moment.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 Option 2: you can take the same SE (or clone) USB-to-phone data cable, but
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 instead of mutilating it, connect it to another custom contraption: if you can
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71 find a USB female-A connector part to which you can solder your own wires (or
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 cut apart some other cable that terminates in a USB female-A socket), make a
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73 cable contraption consisting of this USB female-A on one side (into which you
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74 insert the unmodified SE cable) and your choice of 3.3 V USB-serial adapter on
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 the other end. I still have one more SE-clone data cable which I haven't cut,
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 so I might try this approach.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 For your choice of 3.3 V USB-serial adapter, you should definitely pick either
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 FT232R or CP2102, so you can use GSM-specific high baud rates (GSM-specific
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 because they derive from the 13 MHz clock) to transfer flash dumps and firmware
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 images.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83 Battery charging problem
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 ========================
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 Another problem stemming directly from SE's accessory connector arrangement is
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 that it is very difficult to connect both a charging power source and Calypso
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 UART access at the same time. At first I thought it was completely impossible
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 (there is only one accessory connector on the bottom of the phone), but then by
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 pure luck I acquired an unusual kind of SE charging adapter: this rare adapter
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91 has a pass-through mechanical design, such that one can plug this charging
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 adapter into the phone and then piggy-back another accessory into it! However,
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93 this kind of SE charging adapter is super-rare, and I haven't played with mine
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94 yet because it has Europlug pins (not USA plug) on the AC power end, and I
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95 haven't got around yet to acquiring the requisite AC plug adapter.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 Connecting both the charging power source and the Calypso UART at the same time
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 is important for two reasons:
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 1) For me as the FreeCalypso developer, that is the only way I can develop and
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101 test the charging configuration for this phone model.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 2) For "end users" of the voice pseudo-modem FreeCalypso fw configuration on
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 this target, if you have no serial connection, you have no way of seeing how
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 your charging progresses, as there is no LCD driver and the display stays dark
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106 and non-functional.
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 Because we don't have working battery charging on this SE J100 target yet, the
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109 only safe way to play with this target at the present moment is to have two of
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110 these phones (or another phone of a different model that takes the same
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111 batteries), and keep one phone fully intact with its original fw so it can be
7cecc3dadbe7 doc/SE-J100-target article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 used to charge batteries when the FC-converted phone runs its battery down.