summaryrefslogtreecommitdiffstats
path: root/demo3/vertical/restriction/README.md
blob: 8792ca6067abdc42163baa71347031cdffe5f884 (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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
# CAN模拟走行规制说明手顺

## 5.0.2源码打wayland补丁并重新编译

```
$ cd meta-agl
$ patch -p1 < meta-agl-wayland-ivi-extension_2.0.2.patch
```

## 关联Service和App源码的下载地址和版本信息

1. [low-level-can-service (CommitID:700580)][lowcan]

    需要打开机自动启动补丁

    ```
    $ cd low-level-can-service
    $ patch -p1 < low-level-can-service.patch
    ```

2. [qlibwindowmanager][qlibwm]

3. [libwindowmanager][libwm]

4. [agl-service-windowmanager-2017][wm]

5. [agl-service-homescreen-2017 (CommitID:1a955ad4)][hs]

6. [libHomeScreen (CommitID:0240e70e)][libhs]

7. [restriction][restriction]

8. [videoplayer][videoplayer]

9. [homescreen-2017 (CommitID:b5865d4b)][hsapp]


## SD卡制作 (在PC上操作)

1. 烧写SD卡

2. 利用Ubuntu16.04中的Disks工具对SD卡空闲区域进行分区,并格式化为ext4格式, 最终生成分区名如: `/dev/sdb2`

3. 拷贝video文件到SD卡的media目录下

    ```
    $ sudo cp Camry_EBV.mp4 /media/$USER/root/media/
    ```

4. 拷贝地图数据到SD卡新分区

    ```
    $ sudo cp -r navi_data /media/$USER/data/
    ```

5. 拷贝相关service和app到SD卡

    ```
    $ sudo cp low-can-service.wgt /media/$USER/root/home/root/
    $ sudo cp windowmanager-service-2017.wgt /media/$USER/root/home/root/
    $ sudo cp libpolicy_manager.so /media/$USER/root/usr/lib/
    $ sudo cp libwindowmanager.so.0.1.0 /media/$USER/root/usr/lib/
    $ sudo cp libqtWindowmanagerWrapper.so.0.1.0 /media/$USER/root/usr/lib/
    $ sudo cp homescreen-service-2017.wgt /media/$USER/root/home/root/
    $ sudo cp libhomescreen.so.0.1 /media/$USER/root/usr/lib/
    $ sudo cp restriction.wgt /media/$USER/root/home/root/
    $ sudo cp videoplayer.wgt /media/$USER/root/home/root/
    $ sudo cp homescreen-2017.wgt /media/$USER/root/home/root/
    ```


## 启动配置 (在开发板上操作)

1. 安装app

    ```
    ssh root@${BOARDIP}
    # afm-util remove low-can-service@5.0
    # afm-util install low-can-service.wgt
    # afm-util remove windowmanager-service-2017@0.1
    # afm-util install windowmanager-service-2017.wgt
    # afm-util remove homescreen-service-2017@0.1
    # afm-util install homescreen-service-2017.wgt
    # afm-util install videoplayer.wgt
    # afm-util install restriction.wgt
    # afm-util remove homescreen-2017@0.1
    # afm-util install homescreen-2017.wgt
    ```

2. 配置dev-mapping

    ```
    # echo -e "[CANbus-mapping]\nhs=\"vcan0\"\nls=\"vcan1\"\n" > /etc/dev-mapping.conf
    ```

    ***注意: 在实车环境下,需要将vcan0和vcan1替换为实车的can设备节点***

3. 创建生成vcan设备脚本

    ```
    # echo -e "modprobe vcan\nip link add vcan0 type vcan\nip link set vcan0 up\nip link add vcan1 type vcan\nip link set vcan1 up" > ~/lowcan.sh
    # chmod +x ~/lowcan.sh
    ```

4. 自动挂载SD卡新分区

    ```
    # echo -e "/dev/mmcblk0p2       /home/root/ALS          auto       defaults,sync  0  0" >> /etc/fstab
    ```

5. 链接地图数据

    ```
    # ln -s /home/root/ALS/navi_data /home/navi_data
    ```

6. 修改lowcan启动的service文件

    ```
    # vi /var/local/lib/systemd/user/afm-service-low-can-service@5.0.service
    ...
    //找到此行
    ExecStartPre=/bin/mkdir -p %h/app-data/low-can-service
    //增加下面一行
    ExecStartPre=/bin/sh %h/lowcan.sh
    ...
    ```

    ***注意:afm-service-low-can-service@5.0.service文件版本号可能不同,根据实机上的文件进行修改即可***

7. 重启开发板


## 调试

1. 打开videoplayer

2. 在ssh终端发送can数据

    ```
    ssh root@${BOARDIP}
    # cansend vcan0 3BB#01
    # cansend vcan0 3BB#00
    ```

    ***说明:
    3BB#01 表示 Event_LightstatusBrakeOn
    3BB#00 表示 Event_LightstatusBrakeOff***


[lowcan]: https://oss-project.tmc-tokai.jp/gitlab/als2018/low-level-can-service/tree/master
[qlibwm]: https://gerrit.automotivelinux.org/gerrit/gitweb?p=staging/qlibwindowmanager.git;a=tree;h=696956618c85a6203464720721bdf3ad50bcdaa1;hb=696956618c85a6203464720721bdf3ad50bcdaa1
[libwm]: https://gerrit.automotivelinux.org/gerrit/gitweb?p=staging/libwindowmanager.git;a=tree;h=9bd3d91218f196da4246e87c8273548f04ced57e;hb=9bd3d91218f196da4246e87c8273548f04ced57e
[wm]: https://gerrit.automotivelinux.org/gerrit/gitweb?p=apps/agl-service-windowmanager-2017.git;a=tree;h=a21dd2b748731f1bbe956da6d22a87cc1412de30;hb=a21dd2b748731f1bbe956da6d22a87cc1412de30
[hs]: https://oss-project.tmc-tokai.jp/gitlab/AppFW/agl-service-homescreen-2017/tree/ALS
[libhs]: https://oss-project.tmc-tokai.jp/gitlab/AppFW/libHomeScreen/tree/ALS
[restriction]: https://oss-project.tmc-tokai.jp/gitlab/als2018/restriction/tree/master
[videoplayer]: https://oss-project.tmc-tokai.jp/gitlab/als2018/videoplayer/tree/master
[hsapp]: https://oss-project.tmc-tokai.jp/gitlab/als2018/homescreen-2017/tree/master