8,460
个编辑
更改
→下载Orange Pi 4G-IoT用户手册
40GB 以上的空闲磁盘空间<br>
操作系统为 Ubuntu12.04 以上,最好为 Ubuntu14.04<br>
更详细的内容可以参考 Google 文档 https://source.android.com/source/building<br><br>
软件需求:<br>
* Orange Pi 4G-IoT SDK<br>
* Android 烧录工具<br>
以上软件均可以通过 Mega、百度云盘 的方式获取,详情参见中英文官网:<br>
1)中文版资料的下载网址为 '''http://www.orangepi.orgcn/html/hardWare/computerAndMicrocontrollers/downloadresourcesservice-and-support/<br>Orange-Pi-4G-IoT.html'''2)英文版资料的下载网址为 '''http://www.orangepi.cnorg/html/hardWare/computerAndMicrocontrollers/downloadresourcescnservice-and-support/Orange-Pi-4G-IoT.html''' <br><br>
=== 开发板的供电方式 ===
开发板的供电方式有两种:<br>
=== 常见问题 ===
Android8.1 编译工具链使用了全新的 Jack server 来取代以往的编译器工具,所以编译时会出现问题。以下是 Android8.1 编译的常见问题。<br><br>
'''1)编译前要先配 Jack server'''<br>
1.修改$HOME 路径下的.jack 文件:<br>
[[Image:4G-Iot-36.png]]<br><br>
2.修改$HOME 路径下的.jack-settings 文件:<br>
[[Image:4G-Iot-37.png]]<br>
(注:此处两个文件的 TCP 端口号必须是没有用过的,且两个文件的端口配置要相同!)<br><br>
3.code/prebuilts/sdk/tools/目录下,执行./jack-admin kill-server 和./jack-admin restart-server<br><br>
'''2)Failed to contact Jack server'''<br>
如果你在编译的过程中,出现了如下的问题:<br>
FAILED: /bin/bash -c "(prebuilts/sdk/tools/jack-admin install-server prebuilts/sdk/tools/jack-launcher.jar<br>
prebuilts/sdk/tools/jack-server-4.8.ALPHA.jar 2>&1 || (exit 0) ) && <br>
(JACK_SERVER_VM_ARGUMENTS=\"-Dfile.encoding=UTF-8-XX:+TieredCompilation\" prebuilts/sdk/tools/jack-admin start-server 2>&1 || exit 0 ) &&<br>
(prebuilts/sdk/tools/jack-admin update server prebuilts/sdk/tools/jack-server-4.8.ALPHA.jar 4.8.ALPHA 2>&1 || exit 0 ) &&<br>
(prebuilts/sdk/tools/jack-admin update jack prebuilts/sdk/tools/jacks/jack-2.28.RELEASE.jar 2.28.RELEASE || exit 47; prebuilts/sdk/tools/jack-admin<br>
update jack prebuilts/sdk/tools/jacks/jack-3.36.CANDIDATE.jar 3.36.CANDIDATE || exit 47; prebuilts/sdk/tools/jack-admin update jack<br>
prebuilts/sdk/tools/jacks/jack-4.7.BETA.jar 4.7.BETA || exit 47 )"<br>
Writing client settings in /home/user3/.jack-settings<br>
Installing jack server in "/home/user3/.jack-server"
<br>
修改:在 code/prebuilts/sdk/tools/目录下,执行./jack-admin kill-server 和./jack-admin restart-server,然后重新编译。<br><br>
'''3)Out of memory error'''<br>
1.首先停止 jack server 的运行;
2.去 prebuilts/sdk/tools 目录下执行 jack-admin kill-server 以杀死 Jack server;<br>
3.然后打开 jack-admin 文件,在文件中搜索 JACK_SERVER_COMMAND, 然 后 将 JACK_SERVER_COMMAND="java -XX:MaxJavaStackTraceDepth=-1
-Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS -cp<br>
$LAUNCHER_JAR $LAUNCHER_NAME", 改为 JACK_SERVER_COMMAND="java -Xmx3g -XX:MaxJavaStackTraceDepth=-1<br>
-Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS -cp<br>
$LAUNCHER_JAR $LAUNCHER_NAME"。也就是添加了-Xmx3g 选项。<br><br>
'''4)FAILED: setup-jack-server'''<br>
Jack server installation not found<br>
解决方法:到 prebuilts/sdk/tools 目录下执行一下这个命令:./jack-admin install-server jack-launcher.jar jack-server-4.11.ALPHA.jar<br>
jack-launcher.jar,jack-server-4.11.ALPHA.jar 这两个文件的名字视 prebuilts/sdk/tools 目录下的文件名而定。<br><br>
'''5)测试问题'''<br>
遇到 sim 卡不能识别的时候,需要格式化烧录。<br><br>
== linux 编译环境搭建 ==
=== 编译linux 源码 ===
* <big>'''执行编译启动脚本'''</big><br>
{| class="wikitable" style="width:800px;"
|-
|$ cd OrangePi4G-IoT<br>
$ ./build.sh
|}
根据板子型号选择并回车<br><br>
[[Image:4G-Iot-38.png]]<br><br>
输入 root 密码并回车,然后选择需要执行的功能<br><br>
[[Image:4G-Iot-39.png]]<br><br>
[[Image:4G-Iot-40.png]]<br><br>
其中各选项的功能如下:<br>
* '''0 Build Release Image 编译 ubuntu 和 debian 发行版'''
* '''1 Build Rootfs 编译 Rootfs'''
* '''2 Build Uboot 编译 preloader 和 lk'''
* '''3 Build Linux 编译内核源码'''<br>
选择 0 Build Release Image,会生成以下完整的固件包<br><br>
<div style="background:#f1f1f1;border:1px solid #ddd;padding:5px;width:800px;">
output/images/<br>
├── OrangePi_4g-iot_ubuntu_xenial_server_linux3.18.19_v1.1<br>
│ ├── boot.img<br>
│ ├── lk.bin<br>
│ ├── lk_emmc.bin<br>
│ ├── lk_sd.bin<br>
│ ├── logo.bin<br>
│ ├── MT6737M_Android_scatter.txt<br>
│ ├── preloader_bd6737m_35g_b_m0.bin<br>
│ ├── rootfs.img<br>
│ └── trustzone.bin<br>
└── OrangePi_4g-iot_ubuntu_xenial_server_linux3.18.19_v1.1.tar.gz<br>
<br>
1 directory, 10 files
</div>
<br>
== Linux 系统的烧录 ==
目前 Linux 系统不支持 modem、LCD 屏。<br>
只能通过串口登录系统,连接 wifi 后,可通过 ssh 登录。<br><br>
前面的《安卓固件烧录》已经介绍了如何使用烧录工具了,这里不再赘述,直接打开烧录工具。<br>
a.'''我们点击Scatter-loading File一栏的最右侧的choose并且选择Scatter File的路径''',如下图
[[Image:4G-Iot-60.png]]<br><br>
b.'''先断开板子与 PC 的连接,点击 Download 按钮'''
[[Image:4G-Iot-61.png]]<br><br>
c.'''接下来使用 USB 下载线,连接主机的 USB 与机器的 MircoUSB 接口'''。烧录完成
[[Image:4G-Iot-62.png]]<br><br>
d.'''启动系统'''。
将板子连接 5V 3A 的电源适配器。连接串口可以看到系统启动。<br>
[[Image:4G-Iot-63.png]]<br><br>
如果板载空间不够,可以将 rootfs 烧录到 TF 卡上。步骤如下。<br><br>
e.'''烧录支持挂载TF卡rootfs的lk'''
点击下图框中内容<br>
[[Image:4G-Iot-64.png]]<br><br>
弹出窗口选择 lk_sd.bin。<br><br>
[[Image:4G-Iot-65.png]]<br><br>
点击 download,下载完成<br>
f.'''烧录 rootfs 到 TF 卡中'''
准备一张 8G 以上,class10 的 TF 卡。格式化后。按照以下方法烧录 roofs.img<br>
pv rootfs.img | sudo dd of=/dev/sdb bs=1M
sdb 是 TF 卡对应的设备文件<br>
如果是在 windows 系统,也可以用 Win32DiskImager 软件烧录。<br><br>
g.启动系统
将 tf 卡插入板子,上电即可启动。<br><br>
== 串口调试工具介绍 ==
首先需要准备一根 USB 转 TTL 串口线,需要支持 921600 波特率4G-IoT 的调试串口没有引出,需要用户自己飞线,如下图方框的焊点就是串口的 TXD和 RXD,需要将 GND、RXD、TXD 引出来。<br><br>
[[Image:4G-Iot-41.png]]<br><br>
接线方式:<br>
板子 TXD 接 USB 转 TTL 的 RXD <br>
板子 RXD 接 USB 转 TTL 的 TXD <br>
板子 GND 接 USB 转 TTL 的 GND <br><br>
=== 基于Windows 平台的使用 ===
在使用 OrangePi 做项目开发过程中,为了获得更多的调试信息,OrangePi 默认支持串口信息调试。对于开发者而言,只需准备上面提到的材料,即可简单的获得串口调试信息。<br>
|-
| 1.5 || 2020-03-18 || Csy || 增加 Linux 系统烧录说明 || - || -
|}<br><br> == 下载Orange Pi 4G-IoT用户手册 ==<br>更多关于Orange Pi 4G-IoT的使用信息,请查看 [http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-4G-IoT.html Orange Pi 4G-IoT用户手册](下载-产品使用说明书)<br><br>