annotate doc/Freerunner-Howto @ 899:ab20a5e9dbf3

gsm-fw/L1/dsp code made into a library in preparation for adding patch codes
author Space Falcon <falcon@ivan.Harhan.ORG>
date Sun, 05 Jul 2015 02:50:49 +0000
parents 4fa939eada22
children 7d3f0910aeb2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
864
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
1 How to play with FreeCalypso GSM firmware on a Neo Freerunner
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
2 =============================================================
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
3
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
4 Aside from the half-source leo2moko fw we produced back in 2013-10 (you can
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
5 read all about that one at www.freecalypso.org/leo2moko/), we don't have a
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
6 working free GSM firmware version for the Freerunner yet. What we do have
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
7 currently is experimental code that can be built into an image that can be
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
8 flashed into a GTA02 modem - but it doesn't really work yet.
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
9
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
10 If you would like to play with our experimental code on your Neo FR and maybe
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
11 help us make it work, here are the instructions:
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
12
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
13 1. Build the firmware in the gtamodem-gsm configuration - see the Compiling
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
14 document for more details;
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
15
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
16 2. You should get a flashImage.bin image built; now you need to flash it into
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
17 your FR's modem. The serial cable method is highly recommended: the only
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
18 thing you'll be able to do with our current non-working firmware is help us
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
19 debug it, and the serial cable will be needed for the latter part anyway.
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
20
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
21 3. Run fc-loadtool the same way you would if you were flashing leo2moko;
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
22
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
23 4. The actual flash programming commands are a little different because the
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
24 image is smaller and in a different format:
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
25
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
26 flash erase 0 0x160000
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
27 flash program-bin 0 finlink/flashImage.bin
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
28
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
29 The second number in the flash erase command needs to be the size of
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
30 flashImage.bin rounded up to a multiple of 64 KiB (the flash sector size in the
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
31 GTA02 modem); 0x160000 is correct for the fw image size as of this writing, but
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
32 please double-check it yourself before flashing. The 0 argument in the
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
33 flash program-bin command is the flash offset at which the image should be
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
34 programmed: it will always be 0 for FreeCalypso flashable fw images for gtamodem
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
35 and other targets that have the Calypso boot ROM enabled in the hardware.
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
36
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
37 Once you have flashed our experimental fw into your modem, you can power-cycle
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
38 the modem and see the new fw boot. You should have the serial cable connected,
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
39 the serial channel enabled from the Freerunner's AP side and either rvtdump or
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
40 rvinterf running on your PC or other development machine when you first power
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
41 your modem up with the experimental fw in it: this way you will see whether the
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
42 fw boots successfully or crashes. If it does boot without crashing (whether or
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
43 not it does seems to depend on some factors which we have yet to understand),
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
44 you will get an AT command interface on the other UART going to the Freerunner's
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
45 AP - now go ahead and play from there. :)
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
46
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
47 To reflash your modem back to stable and working leo2moko aka moko12, execute
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
48 the following fc-loadtool commands:
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
49
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
50 flash erase 0 0x230000
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
51 flash program-m0 leo2moko.m0
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
52
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
53 (Whichever firmware image you are flashing, the flash erase command needs to
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
54 cover the range of flash sectors this image will occupy. You can erase more
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
55 sectors up to 0x300000, the "natural" boundary of the flash area where fw
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
56 images live, but I prefer to erase only the needed number of sectors: it is
4fa939eada22 documentation update: how to compile and flash experimental gsm-fw for gtamodem
Space Falcon <falcon@ivan.Harhan.ORG>
parents:
diff changeset
57 both faster and imposes less wear on the flash.)