summaryrefslogtreecommitdiff
path: root/README
blob: 4bf10f1ee13c45ec279763372abed864749f598f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
============================
Positioning Git Repository
============================

The Positioning repository is a collection of 5 proofs of concept:
* GNSSService
* SensorsService
* EnhancedPositionService
* LogReplayer


===============================
Directory Structure
===============================

enhanced-position-service   //2 enhanced-position-service PoCs (one with dbus interfaces and one with commonapi interfaces)
gnss-service                //gnss-service PoC
log-replayer                //log-replayer-PoC
sensors-service             //sensors-service PoC
architecture.png            //architecture overview
build-all.sh                //script to build the PoCs (usage: build-all.sh help) 
run-test.sh                 //script to run a quick test for each PoC (usage: run-test.sh help) 
positioning_x.y.bb          //version x.y of a Yocto recipe for the positioning PoCs


===============================
How To Build
===============================

To build the positioning proofs of concept please follow the following steps:

./build-all.sh 

or

./build-all.sh [command] [service]

command:
  make            Build
  clean           Clean
  help            Print Help

service:
  gnss            Test GNSSService
  sns             Test SensorsService
  enhpos          Test EnhancedPositionService
  repl            Test Replayer


===============================
How To Test
===============================

To test the positioning proofs of concept please use the following test application:

./run-test.sh [command]

service:
  gnss            Test GNSSService
  sns             Test SensorsService
  enhpos          Test EnhancedPositionService
  repl            Test Replayer
  kill            Kill all test applications
  help            Print Help


===============================
Compiler Options
===============================

If you wish to change the default cmake-options, please 
1) open the file build-all.sh, 
2) edit the compiler flags, 
3) delete the build directory,
4) recompile the code from scratch.

--------------------
Example
--------------------

If you wish to activate DLT logging for the GNSSService, just change the  
value of GNSS_SERVICE_FLAGS in the file build-all.sh as follows:
GNSS_SERVICE_FLAGS='-DWITH_DLT=ON'

--------------------
Dependencies
--------------------

DWITH_GPSD=ON requires that the package 'gpsd' is installed.
To install 'gpsd', please execute the following commands:
sudo apt-get install gpsd
sudo apt-get install libgps-dev

To test the enhanced-positon-service (dbus-service) the packages 'libdbus-c++-dev' and 'xsltproc' must be installed.
To install these packages, please execute the following commands:
sudo apt-get install libdbus-c++-dev
sudo apt-get install xsltproc

To test the enhanced-positon-service (commonapi-service) the package CommonAPI must be installed.
To install CommonAPI, please see http://git.projects.genivi.org/?p=ipc/common-api-dbus-runtime.git;a=blob;f=README

DWITH_TESTS=ON enables the compilation of the test application(s).

DWITH_DLT=ON requires that the DLT-daemon is installed.
To download the DLT-daemon, just execute the following command:
git clone git://git.projects.genivi.org/dlt-daemon.git
To install the DLT-daemon, etxract the tarball and follow the 
instructions in the file install.txt.

DWITH_IPHONE=ON requires that the iPhone app 'SensorLogger' is
installed on a iPhone and that the option to broadcast the
sensor data is activated (port=5555).