OsmocomBB Firmware » History » Version 14
fixeria, 01/21/2019 02:34 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 | 12 | fixeria | h2. compal_dumper (deprecated) |
57 | 1 | ||
58 | 13 | fixeria | The old Compal device dumper. Use compal_dsp_dump instead. |
59 | 8 | jolly | |
60 | h2. hello_world |
||
61 | |||
62 | |||
63 | 1 | The initial obligatory "Hello, world!" application. |
|
64 | |||
65 | 7 | jolly | Currently, this does more than say hello. Intended as a template for new applications. |
66 | 1 | ||
67 | |||
68 | 8 | jolly | h2. menu |
69 | 1 | ||
70 | |||
71 | 8 | jolly | Boot menu application to select and load apps that are stored in flash memory. See [[flashing_new]]. |
72 | |||
73 | h2. rssi |
||
74 | 1 | ||
75 | 14 | fixeria | The [Rssibin] can be used to monitor the received signal indication (RSSI) of ARFCNs or the entire spectrum. |
76 | 1 | ||
77 | 8 | jolly | h2. EMI |
78 | 1 | ||
79 | |||
80 | 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]]. |
81 | 1 | ||
82 | 8 | jolly | |
83 | |||
84 | |||
85 | h1. Firmware management software |
||
86 | |||
87 | 1 | Location (source and binary): src/host/osmocon |
|
88 | |||
89 | 2 | nion | |
90 | 8 | jolly | h2. osmocon |
91 | |||
92 | [[osmocon]] is a console tool for interfacing our baseband firmware on the phone with applications on the host PC. |
||
93 | |||
94 | 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. |
95 | |||
96 | 1 | ||
97 | 8 | jolly | h2. osmoload |
98 | 1 | ||
99 | 8 | jolly | [[osmoload]] is used to write, dump and examine flash memory of supported phones. |
100 | 1 | ||
101 | 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). |
102 | 1 | ||
103 | 2 | nion | |
104 | 8 | jolly | h2. calypso_pll |
105 | |||
106 | The [[calypso_pll]] tool can be used to calculate Calypso DPLL multiplier+divider. |
||
107 | |||
108 | |||
109 | h2. rita_pll |
||
110 | |||
111 | The [[rita_pll]] tool can be used to calculate the Rita PLL multiplier/divider. |