Project

General

Profile

OsmocomBB Firmware » History » Version 7

jolly, 02/19/2016 10:48 PM
Add "menu" and "EMI" applications.

1 1 prom
2 1 prom
[[PageOutline]]
3 1 prom
4 2 nion
= Background =
5 2 nion
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 2 nion
 * running on the baseband chip of the phone
8 2 nion
 * running on a PC, communicating with the baseband firmware over serial
9 1 prom
10 2 nion
Applications running on the PC can further be partitioned into:
11 2 nion
 * Firmware management software (loading, flashing, ...)
12 3 nion
 * GSM Layer 2/3 applications
13 1 prom
14 2 nion
The following will provide you a rough overview of the most commonly used software pieces.
15 1 prom
16 1 prom
17 1 prom
18 2 nion
= Baseband firmware =
19 2 nion
20 2 nion
Binary location: src/target/firmware/board/*/*.bin
21 2 nion
Source locations: src/target/firmware/, particularly apps and layer1
22 2 nion
23 1 prom
== layer1 ==
24 5 nion
[wiki:layer1.bin] is a simple GSM layer 1 proxy, communicating over the [wiki:L1A_L23_Interface].
25 1 prom
26 1 prom
This allows you to run a full-blown GSM implementation on your host machine, communicating through the phones radio interface.
27 5 nion
28 5 nion
== loader ==
29 5 nion
[wiki:loader.bin] is our flash loader, dumper and second stage bootloader
30 5 nion
31 1 prom
== l1test ==
32 1 prom
33 1 prom
Layer 1 development application.
34 1 prom
35 1 prom
This application does what layer1 does, but automatically tunes to the strongest ARFCN it can find.
36 1 prom
37 1 prom
It can be used for stand-alone-testing of the phones radio.
38 1 prom
39 1 prom
== loader ==
40 1 prom
41 1 prom
Our [wiki:Bootloader], available in various build configurations.
42 1 prom
43 1 prom
== compal_dsp_dump ==
44 1 prom
45 1 prom
Application for dumping the contents of the DSP in the Calypso chip.
46 1 prom
47 1 prom
== compal_dumper ==
48 1 prom
49 1 prom
The old compal device dumper. Use [wiki:Bootloader] instead once it is available.
50 1 prom
51 1 prom
== hello_world ==
52 1 prom
53 1 prom
The initial obligatory "Hello, world!" application.
54 1 prom
55 1 prom
Currently, this does more than say hello. Intended as a template for new applications.
56 2 nion
57 7 jolly
== menu ==
58 7 jolly
59 7 jolly
Boot menu application to select and load apps that are stored in flash memory. See [wiki:flashing_new].
60 7 jolly
61 2 nion
== rssi ==
62 2 nion
63 2 nion
The [blog:rssi-firmware] can be used to monitor the received signal indication (RSSI) of ARFCNs or the entire spectrum.
64 7 jolly
65 7 jolly
== EMI ==
66 7 jolly
67 7 jolly
The EMI (electro magnetic interference) simulator application can be used to generate RF interference caused by GSM networks an mobile station. See [wiki:emi-firmware].
68 2 nion
69 2 nion
70 2 nion
71 2 nion
= Firmware management software =
72 2 nion
Location (source and binary): src/host/osmocon
73 2 nion
74 2 nion
== osmocon ==
75 2 nion
[wiki:osmocon] is a console tool for interfacing our baseband firmware on the phone with applications on the host PC.
76 4 nion
77 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.
78 2 nion
79 1 prom
== osmoload ==
80 4 nion
[wiki:osmoload] is used to write, dump and examine flash memory of supported phones.
81 4 nion
82 2 nion
You will need this program for example if you intent [wiki:flashing] an application to the phone (the software is usually loaded into RAM).
83 1 prom
84 3 nion
== calypso_pll == 
85 3 nion
The [wiki:calypso_pll] tool can be used to calculate Calypso DPLL multiplier+divider.
86 1 prom
87 3 nion
== rita_pll ==
88 3 nion
The [wiki:rita_pll] tool can be used to calculate the Rita PLL multiplier/divider.
89 1 prom
90 3 nion
91 3 nion
= GSM Layer 2/3 applications = 
92 2 nion
Location (source and binary): src/host/layer23/*
93 2 nion
94 3 nion
Layer 3 applications implement various functionality based on GSM Layer 3 in combination with Layer 2 (LAPDm).
95 2 nion
96 2 nion
== mobile ==
97 1 prom
[wiki:mobile] is the most sophisticated OsmocomBB application so far.
98 4 nion
99 2 nion
It implements most of the behavior of a regular GSM telephone, but is extended in many ways with features interesting to researchers.
100 2 nion
101 2 nion
== cell_log ==
102 1 prom
The cell_log application scans through valid available carrier frequencies, attempts to sync to them and dumps information gathered from the BCCH.
103 4 nion
104 2 nion
It is usually used to create a list of used ARFCNs and information such as their reception levels, MNC, MCC, and System Information.
105 2 nion
106 2 nion
== ccch_scan ==
107 2 nion
The ccch_scan application can sync to a carrier ARFCN and logs power measurement and CCCH information (paging requests and Immediate Assignments).
108 2 nion
109 2 nion
== bcch_scan ==
110 2 nion
bcch_scan is basically a predecessor of cell_log and logs information as observed on the BCCH (System Information).
111 2 nion
112 2 nion
== cbch_sniff ==
113 2 nion
cbch_sniff dumps cell broadcast channel information such as, e.g., GPS location of the cell.
Add picture from clipboard (Maximum size: 48.8 MB)