FreeCalypso > hg > fc-magnetite
annotate doc/C1xx-Howto @ 682:17b7b92e7dba
uartfax.c: fix for old Openmoko bug with Auto-CTS
Openmoko made the change of enabling hardware assisted CTS flow control
in the UART when RTS/CTS flow control is used - it is a change which we
have retained in FreeCalypso - but they forgot to turn this hw mode off
if RTS/CTS flow control is deselected at the application level. We
(FreeCalypso) are now fixing the latter defect ourselves.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 26 Jun 2020 02:53:02 +0000 |
parents | c32c887ced3a |
children |
rev | line source |
---|---|
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 Running FreeCalypso firmware on Motorola C1xx phones |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 ==================================================== |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 Before we begin, it needs to be noted that running FreeCalypso fw on a C1xx |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 phone is very much akin to xenotransplantation: Mot C1xx hardware is an alien |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 to our FreeCalypso family (our native hw targets are those made by TI, Openmoko |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 and us, not Motorola or Compal), and our non-Compal-based, non-Mot-based |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 FreeCalypso fw is equally alien to the C1xx phones. The xenotransplantation |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 procedure of converting a C1xx phone to FreeCalypso is highly unnatural, and |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 involves a large number of cumbersome manual steps - you've been warned. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 Preparing the host system |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 ========================= |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 Firmware flashing on Mot C1xx phones is accomplished through the headset jack |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 via a special cable. There is no need to disassemble the phone in any way or |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 to do any soldering or other hardware surgery, but you will need a host system |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 to run the multitude of special software tools that are involved in the |
594
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
19 procedure. You will need to begin by installing FreeCalypso host tools; the |
614
7ca17426c890
doc/C1xx-Howto: fc-host-tools-latest symlink
Mychaela Falconia <falcon@freecalypso.org>
parents:
594
diff
changeset
|
20 current version at any given moment can be found at this URL: |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 |
614
7ca17426c890
doc/C1xx-Howto: fc-host-tools-latest symlink
Mychaela Falconia <falcon@freecalypso.org>
parents:
594
diff
changeset
|
22 ftp://ftp.freecalypso.org/pub/GSM/FreeCalypso/fc-host-tools-latest.tar.bz2 |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
24 You will also need our battery charging configuration files: |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 |
617
c32c887ced3a
doc: Bitbucket links changed to new location
Mychaela Falconia <falcon@freecalypso.org>
parents:
614
diff
changeset
|
26 https://www.freecalypso.org/hg/fc-battery-conf/ |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 Run 'make install' in the fc-battery-conf tree to add the battery charging |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 configuration files to your FC host tools installation under /opt/freecalypso. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 Flash backup and data gathering |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 =============================== |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 Before you begin the actual conversion of your C1xx phone to FreeCalypso, you |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 will need to gather the following pieces of information: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 * The phone's IMEI - we don't know how to extract it out of Mot/Compal's non-TI |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 flash data structures, so you will have to reset it manually after the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 firmware change. Of course you can set your "new" FreeCalypso IMEI to |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 whatever you feel like, but if you wish to keep the original factory-assigned |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 one, you will need to note it down manually, either from the sticker inside |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 the battery compartment (*very* hard to read!) or by booting the phone up |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 with its original fw prior to the conversion, entering *#06# and reading it |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 from the display. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 * Your specific phone's factory RF calibration values: you will need to make a |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 dump of your phone's flash memory (also serves as a backup, always a good |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 thing to have) with fc-loadtool and extract the numbers of interest with our |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 c1xx-calextr utility, which is part of the new FC host tools. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 * You need to know whether your phone has 900+1800 MHz or 850+1900 MHz bands - |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 you will need to communicate this information to the new fw after the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 conversion. To the best of our knowledge, all C11x/12x and C140 phones have |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 900+1800 MHz bands, but C139 phones have been made in both versions. On the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 phones that have passed through our hands so far, the first two digits of the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 IMEI have been 35 on 900+1800 MHz phones and 01 on 850+1900 MHz ones. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
58 * For the lower C1xx subfamilies only: you need to know whether your phone has |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
59 2 MiB or 4 MiB flash. To the best of our knowledge, all C139/140 phones have |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
60 4 MiB flash, but C11x have been seen with both 2 MiB and 4 MiB flashes. The |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
61 flash memory size will be autodetected by fc-loadtool as part of making the |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
62 flash dump. C155 and C156 phones have 8 MiB flash. |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 The Mother's method for keeping track of these per-phone bits of information is |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 to create a separate directory for each phone with the IMEI as the directory |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 name; the flash dump and the RF calibration bits extracted from it will then |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 reside in that directory, while the IMEI is in the name of the directory itself. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 Once you have created your per-phone directory and cd'ed into it, you are ready |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 to run fc-loadtool to capture the flash dump. The phone needs to be off, but |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 the battery needs to be present and have some charge in it; with the phone off, |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 connect the serial cable between your host computer and the phone's headset |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 jack, and run fc-loadtool as follows: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
75 C11x/12x: fc-loadtool -h compal /dev/ttyXXX |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
76 C139/140: fc-loadtool -h compal -c 1004 /dev/ttyXXX |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
77 C155/156: fc-loadtool -h c155 /dev/ttyXXX |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 Change /dev/ttyXXX to the serial or USB-serial device corresponding to your |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
80 serial cable. With the serial cable connected, the phone in the powered-off |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
81 state and the fc-loadtool process running and waiting for the phone, press the |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
82 red power button on the phone - a momentary press is sufficient and recommended. |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 Once the phone boots the loadagent code fed to it serially by fc-loadtool and |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 you land at the loadtool> prompt, issue the following command: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 flash dump2bin flashdump.bin |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 Given this command, fc-loadtool will autodetect whether your phone has 2 MiB or |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
90 4 MiB flash (for the lower C1xx subfamilies), then make a dump of the complete |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
91 content of this flash memory and save it in a file named flashdump.bin in the |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
92 current directory. When this operation completes, exit the loadtool session |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
93 with the exit command - it will also cleanly power the phone off. |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 The next step is to extract the RF calibration values. Run a command of the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 following form: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 c1xx-calextr -b rfbin flashdump.bin <offset> |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
100 For the lower C1xx subfamilies, change <offset> to 0x1FC000 if your phone has |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
101 2 MiB flash (the size of flashdump.bin is 2097152 bytes) or 0x3FC000 if it has |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
102 4 MiB flash (the size of flashdump.bin is 4194304 bytes). For C155/156 the |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
103 correct offset is 0x7E0000. The stdout scribbles from c1xx-calextr will |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 indicate which per-band calibration records it finds (from which you can tell |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 if the phone has 900+1800 MHz or 850+1900 MHz bands if you didn't have this |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 knowledge already), and a directory named rfbin will be created, containing the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 correct subtree of directories and files which will need to be uploaded into |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 the new FreeCalypso flash file system (FFS) under /gsm/rf after the firmware |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 change. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111 Selecting and building the desired firmware config |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 ================================================== |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114 There is only one FC Magnetite firmware configuration for C11x/12x phones, but |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
115 for the better C139/140 phones (or for C155/156) there are several to choose |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
116 from. The following two configs are the currently recommended ones: |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
118 hybrid-vpm This config is available for all 3 C1xx subfamilies, although |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
119 the actual fw images are different for each. In this |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
120 configuration the converted phone acts not as an end user phone, |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
121 but as a voice pseudo-modem that needs to be controlled by a |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
122 host computer via a serial cable to do anything interesting. |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
123 See the Voice-pseudo-modem article for more information. |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
125 hybrid-ui-vo This config is available only for the C139/140 target, not for |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
126 the other two. This configuration includes the UI layers, thus |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
127 when a C139/140 phone runs this firmware, it is able to function |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
128 as an untethered phone without a host computer connection. |
457
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
129 However, please be warned that this proof-of-concept UI is |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
130 nowhere close to being practically usable - see the |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
131 Handset-goal article for more info. |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132 |
457
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
133 Both of the above are hybrid configurations in that they use the new TCS3 |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
134 versions of the G23M protocol stack and ACI (Application Control Interface) |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
135 firmware components grafted on top of the TCS211 chipsetsw foundation, resulting |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
136 in a fully built-from-source configuration without major blob components. The |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
137 UI layers BMI and MFW in the UI-enabled hybrid-ui-vo config also come from the |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
138 new TCS3 source, not the old version of unknown origin. They are "voice only" |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
139 configs in that CSD, fax and GPRS functions are disabled - these functions |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
140 cannot be made use of on Mot C1xx phones, and disabling them significantly |
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
141 reduces the weight of the firmware. |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
143 For the C139 and C155 targets (but not for C11x/12x), it is also possible to |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
144 build some of the older configs that use the old binary blob version of the |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
145 G23M PS component and the corresponding old versions of ACI, MFW and BMI on top |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
146 of it - however, those configuration are now officially deprecated except for |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
147 only two remaining use cases which do not apply to Mot C1xx targets, hence they |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
148 are no longer supported officially. |
457
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
149 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
150 Thus we have a total of 4 possible build configurations, one for the C11x/12x |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
151 target, 2 for C139/140 and 1 for C155/156: |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
152 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
153 ./configure.sh c11x hybrid-vpm |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
154 ./configure.sh c139 hybrid-vpm |
457
6530fc550836
doc/C1xx-Howto: update for fc-host-tools-r8 and hybrid-ui-vo
Mychaela Falconia <falcon@freecalypso.org>
parents:
383
diff
changeset
|
155 ./configure.sh c139 hybrid-ui-vo |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
156 ./configure.sh c155 hybrid-vpm |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
157 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
158 See the Compiling article for more information on how to compile your own |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
159 firmware image in one of the above configurations. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
160 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
161 Bootloader change on the lower C1xx subfamilies |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
162 =============================================== |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
163 |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
164 This section applies ONLY to C11x/12x and C139/140 subfamilies; it does NOT |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
165 apply to the C155/156 subfamily. |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
166 |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
167 If this is your first time converting a given lower-C1xx phone from its original |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
168 firmware to FreeCalypso (as opposed to updating from an earlier FC firmware |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
169 version), you will also need the compal-flash-boot-for-fc.bin bootloader image |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
170 in addition to the main fw image you just built: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
171 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
172 ftp://ftp.freecalypso.org/pub/GSM/FreeCalypso/compal-flash-boot-for-fc.bin |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
173 |
594
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
174 (If you are working with a binary release package that has prebuilt firmware |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
175 images, the compal-flash-boot-for-fc.bin image is also included in the |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
176 package.) |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
177 |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
178 Mot C1xx phones are brickable - because the Calypso boot ROM is disabled by PCB |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
179 wiring, the ability to reflash a phone with new firmware critically depends on |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
180 there being a particular kind of boot code in flash sector 0 at all times - a |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
181 particular kind of boot code that allows the boot process to be interrupted and |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
182 diverted to external code loaded via the headset jack serial port. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
183 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
184 The FreeCalypso family of projects has adopted one specific version of the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
185 flash sector 0 boot code (produced by applying a binary patch to one of |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
186 Compal/Motorola's original versions) for use with all of our firmwares for |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
187 these phones. We use the same FC-C1xx bootloader on both C11x/12x and C139/140 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
188 phones: the official bootloader versions are different between the two (and |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
189 moreover, each particular official fw version comes with its own bootloader |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
190 version), but the simpler bootloader version which we took from one particular |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
191 C11x fw version works perfectly well on the C139 as well, hence we've adopted |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
192 it for all combinations. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
193 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
194 Once you have our compal-flash-boot-for-fc.bin image flashed in sector 0, you |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
195 can then flash whichever FC firmware image you like at offset 0x10000 without |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
196 having to touch the dangerous boot sector. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
197 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
198 On C155/156 phones the situation is a little different: they are also brickable |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
199 with the Calypso boot ROM disabled, but Motorola's original bootloader on these |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
200 phones is significantly different from the one on the lower C1xx subfamilies, |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
201 and they use a different flash layout: the bootloader in the first 8 KiB sector, |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
202 unused flash space between 0x2000 and 0x20000, and the main fw image starting |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
203 at 0x20000. Our FC firmwares for the C155/156 target are built to be flashed |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
204 at 0x20000 just like Mot's official ones, and they are designed to receive |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
205 control from Mot's original bootloader on this target. |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
206 |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
207 Converting the phone to FreeCalypso fw |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
208 ====================================== |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
209 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
210 If you are starting with an unhacked C1xx phone running one of the official |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
211 firmware versions, the procedure for flashing and bringing up FreeCalypso for |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
212 the first time is as follows - *after* you have done all of the preparatory |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
213 steps described in the preceding sections: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
214 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
215 * Have your phone's battery fully charged - although you will regain the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
216 ability to charge it with FreeCalypso fw when the conversion is fully |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
217 complete (not just the flashing part, but also the subsequent FFS |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
218 initialization), your phone will not have this charging ability while you are |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
219 in the middle of the xenotransplantation procedure. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
220 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
221 * Get in with fc-loadtool just like you did when you made the dump of your |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
222 phone's flash memory for backup and RF calibration data extraction. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
223 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
224 * If you are operating on a C11x/12x or C139/140 phone, reflash the boot sector |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
225 with our FreeCalypso version: |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
226 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
227 loadtool> flash erase-program-boot compal-flash-boot-for-fc.bin |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
228 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
229 DO NOT flash compal-flash-boot-for-fc.bin into C155/156 phones, it is ONLY |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
230 for the lower C1xx subfamilies! |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
231 |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
232 * To flash whichever FreeCalypso firmware image you would like to play with, |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
233 execute the flashing script which the fw build system produced along with the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
234 actual image: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
235 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
236 loadtool> exec flash-script |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
237 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
238 * Erase the flash sectors to be used for the FFS (flash file system) by |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
239 FreeCalypso firmwares; the specific command depends on whether your phone has |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
240 2 MiB, 4 MiB or 8 MiB flash. On 2 MiB flash phones: |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
241 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
242 loadtool> flash erase 0x1C0000 0x30000 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
243 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
244 Or on 4 MiB flash phones: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
245 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
246 loadtool> flash erase 0x3C0000 0x30000 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
247 |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
248 Or on 8 MiB flash C155/156 phones: |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
249 |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
250 loadtool> flash erase 0x700000 0xD0000 |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
251 |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
252 * Exiting fc-loadtool cleanly will cause it to power off the phone: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
253 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
254 loadtool> exit |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
255 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
256 Reflashing between different FreeCalypso firmwares |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
257 ================================================== |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
258 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
259 By the conventions established in the FreeCalypso family of projects, all of |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
260 our firmwares for C11x and C139 targets have the following in common: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
261 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
262 * They all stay out of the boot sector and expect to receive control from the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
263 boot code in the same manner (boot entry point at 0x10058, exception vectors |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
264 at 0x10000), thus there is no need to reflash the dangerous boot sector when |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
265 going from one FC firmware to another. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
266 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
267 * They all use the same aftermarket FFS configuration of 3 sectors of 64 KiB |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
268 each (64x3) at 0x3C0000 on 4 MiB flash phones, or at 0x1C0000 on 2 MiB flash |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
269 phones. This FFS location is deliberately different from the one used by |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
270 Mot/Compal's firmwares, eliminating the possibility of one fw trying to use |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
271 the FFS created by the other, and by putting our FFS toward the end of the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
272 flash we maximize the amount of flash space available for our firmware code |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
273 images. But even though we don't share our FFS with Mot/Compal's official |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
274 firmwares, we do share the same FFS between all of FreeCalypso firmware |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
275 projects - thus once you have initialized your FFS (see below) with one FC |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
276 firmware version, it will work with the others as well. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
277 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
278 If you need to reflash your C1xx phone from one FC firmware version to another, |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
279 simply get in with fc-loadtool -h compal (no more need for the inefficient |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
280 -c 1003 or -c 1004 options or for tfc139) and reflash just the fw image part: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
281 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
282 loadtool> exec flash-script |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
283 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
284 First boot of the firmware |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
285 ========================== |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
286 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
287 Connect the serial cable, but instead of running fc-loadtool, run rvinterf. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
288 Press the red power button on the phone briefly just like you would for |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
289 fc-loadtool entry. Because there is no fc-loadtool running on the host end of |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
290 the serial cable, the boot path will *not* be diverted in the bootloader, and |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
291 the main fw image will run - and this time it will be the FreeCalypso firmware |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
292 you have compiled and flashed. If the fw you have flashed is the UI demo |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
293 configuration, the phone must have *NO* SIM in it the first time you boot it. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
294 UI-enabled fw configurations automatically bring up the GSM radio and try to |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
295 connect to the default network on boot if there is a SIM present, and you don't |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
296 want your firmware trying to connect to a real live GSM network when you haven't |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
297 initialized your FFS yet. If the fw you have flashed is one of the AT-command- |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
298 controlled pseudo-modem configurations, then you don't need to worry if the SIM |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
299 is there or not on your first boot - just don't command it to connect to a |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
300 network until you have initialized the FFS. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
301 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
302 If you have flashed a non-UI firmware version, the phone's LCD will remain dark |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
303 as there is no LCD driver code in this firmware, but you will see trace output |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
304 in the rvinterf window, telling you that the fw is running. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
305 |
594
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
306 Before you do anything else, you will need to run fc-fsio (run it without the |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
307 -p option to have it connect to your already-running rvinterf process) and |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
308 initialize the aftermarket FFS for our firmware: |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
309 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
310 fsio> format / |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
311 fsio> mk-std-dirs |
594
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
312 fsio> set-imeisv fc XXXXXXXX-YYYYYY-SV (see following section for the details) |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
313 fsio> set-rfcap dual-eu (if you have 900+1800 MHz hardware) |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
314 or |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
315 fsio> set-rfcap dual-us (if you have 850+1900 MHz hardware) |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
316 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
317 then additionally: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
318 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
319 fsio> upload-subtree rfbin /gsm/rf |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
320 fsio> write-charging-config /opt/freecalypso/charging/c1xx/standard |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
321 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
322 The last two commands are new with the 2018-01 revision of the FC-to-C1xx |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
323 xenotransplantation procedure. The upload-subtree command uploads the RF |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
324 calibration values which you had extracted earlier with c1xx-calextr (the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
325 instructions assume that you are running from the same directory where the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
326 rfbin directory subtree had been created earlier), and this step is necessary |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
327 in order for your phone to continue to transmit at the correct power levels |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
328 after the conversion. The write-charging-config command uploads the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
329 configuration settings for the FCHG battery charging driver, without which it |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
330 cannot charge the battery; you must have the charging config files from the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
331 fc-battery-conf tree installed under /opt/freecalypso in order for this command |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
332 to work as given. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
333 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
334 It needs to be noted that the battery charging config settings uploaded with |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
335 fc-fsio write-charging-config take effect only on the next boot cycle of the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
336 firmware, i.e., until the next reboot after the write-charging-config operation, |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
337 the firmware won't charge the battery even if there is a charging power source |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
338 plugged in. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
339 |
594
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
340 Note regarding the IMEISV |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
341 ========================= |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
342 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
343 The argument to the set-imeisv command in fc-fsio is a 16-digit IMEISV, not a |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
344 15-digit IMEI. The IMEI part of IMEISV (the first 14 digits) identifies the |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
345 physical hardware and is supposed to be immutable, whereas the two SV digits |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
346 are supposed to identify the software version, i.e., they are supposed to change |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
347 when the software version changes in a significant way. Motorola and Compal |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
348 did in fact use the SV digits as called for by the specs: their official |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
349 firmwares take the IMEI part of IMEISV from the factory-written per-unit vital |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
350 data records, and each fw version appends its own SV digits, different from one |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
351 version to the next. |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
352 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
353 When a Mot C1xx phone runs FreeCalypso as opposed to one of Motorola's official |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
354 fw versions, we need our own SV to identify our firmware as being distinct from |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
355 any of Motorola's original versions. The convention established by the Mother |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
356 of FreeCalypso is that the SV for FreeCalypso on Mot C1xx should be set to 98. |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
357 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
358 To transform the 15-digit IMEI of your Mot C1xx phone into the 16-digit IMEISV |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
359 to be entered in fc-fsio set-imeisv, perform the following two steps: |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
360 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
361 1) Drop the Luhn check digit - it is not included in the IMEISV form; |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
362 2) Add -98 to the remaining 14 content digits of the IMEI from the previous |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
363 step. |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
364 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
365 Exercising GSM functionality |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
366 ============================ |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
367 |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
368 After you've initialized your FFS as above, you should exit fc-fsio, and your |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
369 next steps will depend on which fw configuration you are playing with. If it's |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
370 the sans-UI pseudo-modem configuration, run fc-shell and try some AT commands: |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
371 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
372 AT+CMEE=2 -- enable verbose error responses |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
373 AT+CFUN=1 -- enable radio and SIM interfaces |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
374 AT+COPS=0 -- register to the default GSM network |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
375 |
594
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
376 Once you are connected to a network, you can dial and answer voice calls with |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
377 ATD and ATA commands, and you can use GSM 07.05 AT commands to send and receive |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
378 SMS. You can also use the quite capable SMS tools included in the FC host tools |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
379 package. |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
380 |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
381 When you are done, you can power the phone off by sending a 'poweroff' command |
543
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
382 through fc-shell, or you can kill rvinterf or unplug the serial cable and wait |
4f378f6c5efa
doc/C1xx-Howto: C155 support
Mychaela Falconia <falcon@freecalypso.org>
parents:
539
diff
changeset
|
383 for the firmware to power off by the keepalive timeout after some 15 to 20 s. |
383
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
384 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
385 If you are playing with the UI demo firmware, after you have initialized your |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
386 FFS, you can power the phone off with the power button, insert a SIM, power it |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
387 back on and play with the primitive UI. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
388 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
389 Updating from previous versions |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
390 =============================== |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
391 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
392 If you had previously initialized your aftermarket FFS using an earlier version |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
393 of these instructions, before we added the RF calibration and charging config |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
394 upload steps, you need to add these bits to your FFS. Update to the latest FC |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
395 host tools, extract the factory RF calibration values from a dump of your |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
396 phone's flash with c1xx-calextr, add the battery charging config files to your |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
397 /opt/freecalypso installation, boot the phone with rvinterf, get in with fc-fsio |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
398 and run the last two upload-subtree and write-charging-config commands as above. |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
399 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
400 Recalibration |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
401 ============= |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
402 |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
403 In the interest of completeness, it needs to be noted that extracting Motorola's |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
404 original factory RF calibration values and reusing them for FreeCalypso is not |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
405 the only way: the other alternative is to perform a fresh calibration using a |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
406 Rohde&Schwarz CMU200 RF test machine and FreeCalypso RF calibration software |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
407 (fc-rfcal-tools). This approach will yield superior results, but the |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
408 requirement of having a CMU200 instrument which is itself properly calibrated |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
409 and a cabling setup with the right adapters whose insertion loss at particular |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
410 GSM frequencies is precisely known makes this approach feasible only for |
43dbedde9d80
doc/C1xx-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
411 professional FreeCalypso service shops, not for ordinary individual users. |
594
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
412 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
413 Restoring Motorola's original firmware |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
414 ====================================== |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
415 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
416 If you have many phones of the same type, it is best to dedicate a particular |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
417 phone to FreeCalypso, as reflashing a phone back and forth is a royal pita. |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
418 However, if you have only one phone, then you don't have much choice except to |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
419 reflash it back and forth between Motorola's official fw and FreeCalypso, thus |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
420 instructions need to be provided. |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
421 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
422 Restoring original fw on the lower C1xx subfamilies |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
423 --------------------------------------------------- |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
424 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
425 Whether you are restoring the original fw version your phone came with or |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
426 flashing a different official fw version, you need to ensure that whichever fw |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
427 version you are flashing does not have its bootloader locked out. Examine your |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
428 fw image with a hex dump tool and look at the 4 bytes at location 0x2060. If |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
429 these 4 bytes are all FF, then you have an older fw version with no bootloader |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
430 locking capability - good. If these 4 bytes are 'DD DD DD DD' (0xDDDDDDDD |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
431 32=bit word), then your fw version does have bootloader locking capability, but |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
432 the lock is not activated. In this case you can still flash it, but you must |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
433 make sure that this 32-bit word at 0x2060 always remains equal to 0xDDDDDDDD, |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
434 otherwise your phone will be bricked. And finally if the 4 bytes at 0x2060 are |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
435 all zeros, then the bootloader lock is activated - DO NOT flash an image in |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
436 this state (you will brick your phone if you do), instead you need to patch |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
437 these 4 bytes to 0xDDDDDDDD with a hex editor and then flash the resulting |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
438 unlocked version. |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
439 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
440 Once you have verified that your to-be-flashed fw image is safe, you can flash |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
441 it as follows: |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
442 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
443 1) Get in with fc-loadtool: |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
444 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
445 fc-loadtool -h compal -c 1004 /dev/ttyXXX |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
446 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
447 The -c 1004 option is generally unnecessary if your phone runs FreeCalypso fw, |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
448 but it doesn't hurt to always include it - it only makes the fc-loadtool entry |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
449 process slower by about a second. |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
450 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
451 2) Once you are at the loadtool> prompt, issue the following commands: |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
452 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
453 if your phone is C139/140 or C11x/12x with 4 MiB flash: |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
454 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
455 loadtool> flash erase-program-boot mot-fw-image.bin 0x10000 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
456 loadtool> flash erase 0x10000 0x360000 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
457 loadtool> flash program-bin 0x10000 mot-fw-image.bin 0x10000 0x360000 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
458 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
459 or if your phone is C11x/12x with 2 MiB flash: |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
460 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
461 loadtool> flash erase-program-boot mot-fw-image.bin 0x10000 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
462 loadtool> flash erase 0x10000 0x1E0000 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
463 loadtool> flash program-bin 0x10000 mot-fw-image.bin 0x10000 0x1E0000 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
464 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
465 Restoring original fw on Mot C155/156 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
466 ------------------------------------- |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
467 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
468 On these phones the bootloader is separate from the main body of the firmware, |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
469 thus there is no need to reflash the dangerous boot sector (erase-program-boot) |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
470 when changing firmwares, whether changing between Motorola's official fw and |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
471 FreeCalypso or between different Mot fw versions. Simply get in with |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
472 fc-loadtool like this: |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
473 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
474 fc-loadtool -h c155 /dev/ttyXXX |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
475 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
476 and reflash the firmware like this: |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
477 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
478 loadtool> flash erase 0x20000 0x7C0000 |
9327935d8549
doc/C1xx-Howto: various updates
Mychaela Falconia <falcon@freecalypso.org>
parents:
543
diff
changeset
|
479 loadtool> flash program-bin 0x20000 flash-backup.bin 0x20000 0x7C0000 |