annotate doc/Pirelli-Howto @ 326:919b44c991fc

FCHG: reading of battery table from FFS implemented
author Mychaela Falconia <falcon@freecalypso.org>
date Tue, 05 Dec 2017 05:04:09 +0000
parents 5b6159d76b09
children 3608ce4a585a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 Running FreeCalypso Magnetite firmware on the Pirelli DP-L10
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 ============================================================
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3
253
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
4 The Pirelli DP-L10 is a neat target for playing with FreeCalypso for a few
97
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
5 reasons:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
6
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
7 1. It has a USB port connected to one of Calypso's UARTs through a built-in
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
8 CP2102 USB-serial adapter, eliminating the need for headset jack serial
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
9 cables.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
10
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
11 2. The huge RAM on this phone (8 MiB) makes it possible to run experimental GSM
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
12 firmware images entirely in RAM without flashing - and we have successfully
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
13 implemented this capability in FC Magnetite similarly to Citrine.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
14
253
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
15 3. Running an experimental firmware image on the Pirelli requires nothing more
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
16 than a laptop, a phone and a USB cable, and can therefore be done under
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
17 less-than-ideal conditions while away from your proper FreeCalypso hardware
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
18 lab with an FCDEV3B setup.
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
19
97
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
20 There is, however, one difference between our Citrine and Magnetite firmwares
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
21 when it comes to running on the Pirelli without flashing: Citrine uses a
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
22 RAM-based fake FFS, whereas Magnetite always requires a real FFS in flash, even
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
23 when the firmware code image itself is entirely RAM-based. However, just like
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
24 on the C139, we do NOT use the same FFS which is used by Pirelli's official
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
25 firmwares - the latter contains nothing of use to our fw, hence it is best for
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
26 us to use our own separate FreeCalypso Magnetite FFS.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
27
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
28 The flash location that's been chosen for Magnetite FFS on the Pirelli is
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
29 0x02480000 through 0x025FFFFF, i.e., offsets 0x480000 through 0x5FFFFF in the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
30 second flash bank. Pirelli's official firmwares use this flash area as
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
31 temporary storage during OTA (over-the-air, probably WLAN in this case) fw
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
32 reloads and leave it untouched at all other times, therefore as long as you are
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
33 not doing firmware reloads over WLAN while in the "official mode", you can use
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
34 your Pirelli phone for FreeCalypso experiments via fc-xram and go back to the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
35 regular fw in between, and the Magnetite FFS in the flash will be preserved
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
36 from one fc-xram session to the next, not disturbed by Pirelli's fw.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
37
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
38 Compiling
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
39 =========
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
40
223
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
41 When compiling our Magnetite firmware for the Pirelli target, you can select
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
42 one of two configurations: l1reconst or hybrid; see the Modem-configs article
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
43 for the explanation. In both cases the phone will act as an AT-command-
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
44 controlled pseudo-modem: the LCD will stay dark and the buttons will do nothing,
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
45 and you will need to control the GSM MS from your PC or other host system.
97
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
46
223
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
47 Run './configure.sh pirelli l1reconst' or './configure.sh pirelli hybrid'
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
48 depending on which configuration you would like to play with, then run
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
49 'make ram' in the build directory created by the configure script - see the
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
50 Compiling write-up for more details.
97
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
51
223
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
52 Because we have not yet produced a configuration with FAX_AND_DATA and GPRS
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
53 disabled, your Magnetite fw build will include those components. In the
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
54 FreeCalypso environment where we are not doing WAP or MMS this functionality
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
55 can only be exercised on targets that bring out a classic modem UART with the
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
56 classic AT command interface to the external host, but the Pirelli is not one
619a33e8425e doc/Pirelli-Howto: update for the availability of the hybrid config
Mychaela Falconia <falcon@freecalypso.org>
parents: 97
diff changeset
57 of those targets - hence on this target all FAX_AND_DATA and GPRS code is
253
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
58 nothing but dead weight. Now that we have deblobbed all of L1 with the
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
59 exception of GPRS-specific modules, we could try building a hybrid config with
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
60 GPRS and FAX_AND_DATA excluded, specifically for the benefit of Mot C1xx and
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
61 Pirelli targets, but these legacy hardware targets are no longer a priority for
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
62 the FreeCalypso family of projects.
97
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
63
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
64 Running on the target
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
65 =====================
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
66
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
67 1. Connect a USB cable from your GNU/Linux PC/laptop to the phone. If the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
68 phone was off but the battery is present, it will go through a charger-plug
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
69 power-on event; if the flash contains Pirelli's original fw, it will boot in
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
70 the charging mode. If the battery is not present, the Calypso won't power
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
71 on (it needs VBAT and can't run on VCHG power instead), but the /dev/ttyUSBx
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
72 device will still show up, as the CP2102 USB-serial chip inside the phone is
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
73 powered strictly from the USB side.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
74
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
75 2. Run a command like the following:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
76
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
77 fc-xram -h pirelli /dev/ttyUSB0 ramimage.srec rvinterf
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
78
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
79 Adjust the paths to your /dev/ttyUSBx device and your ramimage.srec as
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
80 appropriate, and add rvinterf logging or other options as desired.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
81 Specifying rvinterf on the fc-xram command line directs fc-xram to exec
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
82 rvinterf and pass the serial channel to it immediately as soon as the code
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
83 image has been loaded into target RAM and jumped to; this direct passing of
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
84 the serial channel from fc-xram to rvinterf is appropriate because the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
85 loaded fw will immediately start emitting binary trace packets in TI's RVTMUX
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
86 format.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
87
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
88 3. Induce the phone to execute its Calypso boot path: if the battery was
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
89 removed, insert it now; if Pirelli's regular fw is running, execute its
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
90 power-off sequence.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
91
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
92 Once the Calypso chip in the Pirelli phone executes its boot path with fc-xram
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
93 running, the boot path will be diverted and our experimental firmware will be
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
94 loaded into target device RAM and jumped to. Our fw will now run, and the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
95 rvinterf process on the host will maintain communication with it.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
96
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
97 FFS initialization
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
98 ==================
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
99
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
100 When our Magnetite firmware boots, it will examine the state of the flash
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
101 sectors in the area we have allocated for our aftermarket FFS. If this flash
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
102 area is completely blank the first time Magnetite boots, as it should be if you
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
103 have a "virgin" Pirelli phone, the FFS code in our fw will automatically perform
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
104 what TI called the "preformat" operation: write undifferentiated FFS block
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
105 headers (0xBF in the flags byte) into each flash sector. However, it won't
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
106 automatically perform the "format" operation - instead you'll need to run
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
107 fc-fsio to do the format and to populate this FFS with some necessary content.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
108 If you are not sure of the state of the Magnetite FFS flash area on your
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
109 Pirelli, you can also run fc-fsio to examine it - so run fc-fsio either way.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
110 Run fc-fsio WITHOUT -p: let it connect to the rvinterf process you should
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
111 already have running from fc-xram.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
112
253
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
113 [NOTE: you need to be running FreeCalypso host tools from the fc-host-tools-r5
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
114 release or later; earlier versions of fc-fsio won't work as described.]
97
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
115
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
116 Once you are in fc-fsio, check the status of your FFS like this:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
117
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
118 fsio> ls -l /
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
119
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
120 If the FFS is already formatted, you will get a listing of the root directory;
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
121 if it is not formatted, you'll get an error like this:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
122
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
123 opendir: FFS error 4 (EFFS_NOFORMAT: ffs not formatted)
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
124
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
125 To format and initialize your Pirelli Magnetite FFS, issue the following
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
126 commands:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
127
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
128 fsio> format /
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
129 fsio> pirelli-magnetite-init
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
130
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
131 If you already have a formatted FFS from before, it is safe to rerun the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
132 pirelli-magnetite-init command, but not format. The format command will *not*
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
133 work on an already formatted FFS; if you have a messed-up FFS and you would
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
134 like to restart from a clean slate, erase the Magnetite FFS sectors with
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
135 fc-loadtool:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
136
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
137 loadtool> flash2 erase 480000 180000
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
138
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
139 Exercising the GSM functionality
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
140 ================================
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
141
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
142 Once your FFS is good, open another terminal window on your driving PC/laptop
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
143 and run fc-shell. This program will connect to the already running rvinterf
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
144 process via a local socket, and it will enable you to send various commands to
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
145 the running fw on the target, the most important ones being standard AT
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
146 commands. Send the following sequence of AT commands to bring up GSM
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
147 functionality:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
148
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
149 AT+CMEE=2 -- enable verbose error responses
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
150 AT+CFUN=1 -- enable radio and SIM interfaces
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
151 AT+COPS=0 -- register to the default GSM network
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
152
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
153 When you are done playing with our experimental fw, you can either yank the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
154 battery and kill the host side rvinterf and fc-shell processes, or you can
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
155 issue a 'tgtreset' command at the fc-shell prompt. The latter will cause the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
156 target to reset and boot back into its regular firmware.