OsmocomBB Firmware » History » Version 9
laforge, 02/21/2016 11:57 AM
1 | 8 | jolly | {{>toc}} |
---|---|---|---|
2 | 1 | ||
3 | 8 | jolly | |
4 | h1. Background |
||
5 | |||
6 | The [[OsmocomBB]] source code comes with several applications for various purposes. |
||
7 | 2 | nion | Those applications can be devided into two separate classes, applications: |
8 | 8 | jolly | * running on the baseband chip of the phone |
9 | * running on a PC, communicating with the baseband firmware over serial |
||
10 | 2 | nion | |
11 | 3 | nion | Applications running on the PC can further be partitioned into: |
12 | 8 | jolly | * Firmware management software (loading, flashing, ...) |
13 | * GSM Layer 2/3 applications |
||
14 | 1 | ||
15 | The following will provide you a rough overview of the most commonly used software pieces. |
||
16 | |||
17 | |||
18 | |||
19 | |||
20 | 8 | jolly | h1. Baseband firmware |
21 | |||
22 | |||
23 | 1 | Binary location: src/target/firmware/board/*/*.bin |
|
24 | Source locations: src/target/firmware/, particularly apps and layer1 |
||
25 | |||
26 | |||
27 | 8 | jolly | h2. layer1 |
28 | |||
29 | [[layer1bin]] is a simple GSM layer 1 proxy, communicating over the [[L1A_L23_Interface]]. |
||
30 | |||
31 | 5 | nion | This allows you to run a full-blown GSM implementation on your host machine, communicating through the phones radio interface. |
32 | |||
33 | 1 | ||
34 | 8 | jolly | h2. loader |
35 | 1 | ||
36 | 8 | jolly | [[loaderbin]] is our flash loader, dumper and second stage bootloader |
37 | |||
38 | |||
39 | h2. l1test |
||
40 | |||
41 | |||
42 | 1 | Layer 1 development application. |
|
43 | |||
44 | This application does what layer1 does, but automatically tunes to the strongest ARFCN it can find. |
||
45 | |||
46 | It can be used for stand-alone-testing of the phones radio. |
||
47 | |||
48 | |||
49 | 8 | jolly | h2. loader |
50 | 1 | ||
51 | |||
52 | 8 | jolly | Our [[Bootloader]], available in various build configurations. |
53 | |||
54 | |||
55 | h2. compal_dsp_dump |
||
56 | |||
57 | |||
58 | 1 | Application for dumping the contents of the DSP in the Calypso chip. |
|
59 | |||
60 | |||
61 | 8 | jolly | h2. compal_dumper |
62 | 7 | jolly | |
63 | 1 | ||
64 | 8 | jolly | The old compal device dumper. Use [[Bootloader]] instead once it is available. |
65 | |||
66 | |||
67 | h2. hello_world |
||
68 | |||
69 | |||
70 | 1 | The initial obligatory "Hello, world!" application. |
|
71 | |||
72 | 7 | jolly | Currently, this does more than say hello. Intended as a template for new applications. |
73 | 1 | ||
74 | |||
75 | 8 | jolly | h2. menu |
76 | 1 | ||
77 | |||
78 | 8 | jolly | Boot menu application to select and load apps that are stored in flash memory. See [[flashing_new]]. |
79 | |||
80 | |||
81 | h2. rssi |
||
82 | |||
83 | |||
84 | 1 | The [blog:rssi-firmware] can be used to monitor the received signal indication (RSSI) of ARFCNs or the entire spectrum. |
|
85 | |||
86 | |||
87 | 8 | jolly | h2. EMI |
88 | 1 | ||
89 | |||
90 | 8 | jolly | The EMI (electro magnetic interference) simulator application can be used to generate RF interference caused by GSM networks an mobile station. See [[emi-firmware]]. |
91 | 1 | ||
92 | 8 | jolly | |
93 | |||
94 | |||
95 | h1. Firmware management software |
||
96 | |||
97 | 1 | Location (source and binary): src/host/osmocon |
|
98 | |||
99 | 2 | nion | |
100 | 8 | jolly | h2. osmocon |
101 | |||
102 | [[osmocon]] is a console tool for interfacing our baseband firmware on the phone with applications on the host PC. |
||
103 | |||
104 | 2 | nion | It is responsible for downloading a baseband firmware or bootloader into the phone and relay communication between Layer 3 applications and baseband firmwares over serial. |
105 | |||
106 | 1 | ||
107 | 8 | jolly | h2. osmoload |
108 | 1 | ||
109 | 8 | jolly | [[osmoload]] is used to write, dump and examine flash memory of supported phones. |
110 | 1 | ||
111 | 8 | jolly | You will need this program for example if you intent [[flashing]] an application to the phone (the software is usually loaded into RAM). |
112 | 1 | ||
113 | 2 | nion | |
114 | 8 | jolly | h2. calypso_pll |
115 | |||
116 | The [[calypso_pll]] tool can be used to calculate Calypso DPLL multiplier+divider. |
||
117 | |||
118 | |||
119 | h2. rita_pll |
||
120 | |||
121 | The [[rita_pll]] tool can be used to calculate the Rita PLL multiplier/divider. |