annotate doc/SE-J100-target @ 680:ee3ac8c617cb

armio.c: set GPIO2 output high initially On TI-canonical platforms GPIO2 is DCD modem control output. In TI's original code the AI_InitIOConfig() function called from Init_Target() would configure GPIO2 as an output and set the initial output value to low, but then the init code in uartfax.c called from Init_Serial_Flows() would immediately change it to high, corresponding to DCD not asserted. The result is a momentary asserted-state glitch on the DCD output. The present change eliminates this glitch, setting DCD output to not-asserted initially like it should be.
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 25 Jun 2020 03:17:43 +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.