FreeCalypso > hg > fc-magnetite
annotate doc/SE-J100-target @ 616:f8e74b692c80
tpudrv10.c: first actual reconstruction attempt
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 06 Oct 2019 02:33:10 +0000 |
parents | 7cecc3dadbe7 |
children |
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. |