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