飞凌RK3399的开发板,已经推出了一段时间,根据飞凌嵌入式技术服务部统计的客户问题反馈,整理了一份客户在使用RK3399开发板过程中经常遇到的几个问题,并提供了解决思路。

RK3399开发板简介:

飞凌嵌入式OK3399-C开发板采用瑞芯微公司国产CPU处理器 RK3399设计。性能强劲,具备2个ARM Cortex-A72内核,主频1.8GHz;4个ARM Cortex-A53内核,主频1.4GHz;GPU采用Mali-T864,支持OpenGL ES 1.1/2.0/3.0/3.1, OpenVG1.1, OpenCL, DX11;RK3399开发板板载2GB LPDDR3 RAM,16GB eMMC ROM;RK3399开发板具备多种显示接口 ,包括HDMI 2.0 、MIPI-DSI 、eDP 1.3、DP 1.2,最大分辨率达4K,支持双屏同显、双屏异显;同时提供多种外设接口,如PCIe、USB3.0 Host,Type-C、MIPI-CSI、SPDIF、I2C、SPI 、UART 、ADC、PWM、GPIO 、I2S(支持8路数字麦克风阵列输入)和千兆以太网。

注:以下问题,均为在使用飞凌RK3399开发板过程中,遇到的一些问题及提供的解决思路,其它品牌RK3399开发板,用户可根据飞凌提供的解决思路,尝试解决。

一、RK3399修改调试串口波特率

RK3399调试串口默认波特率为1500000,但部分转换芯片最高支持115200,于是部分情况下就需要修改RK3399调试串口波特率

RK3399调试串口相关的设置均可在设备树中修改。

打开设备树:kernel/arch/arm64/boot/dts/rockchip/ok3399.dts

找到fiq_debugger字段:

fiq_debugger: fiq-debugger {
compatible = “rockchip,fiq-debugger”;
rockchip,serial-id = <2>;
rockchip,wake-irq = <0>;
rockchip,irq-mode-enable = <0>; /* If enable uart uses irq instead of fiq /
rockchip,baudrate = <1500000>; /
Only 115200 and 1500000 */
pinctrl-names = “default”;
pinctrl-0 = <&uart2c_xfer>;
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH 0>;
};

修改波特率需要修改baudrate的值,但只能修改内核阶段。

二、RK3399 Linux下修改各分区大小的方法

首先,解压源码,RK3399烧写以一个update.img的方式烧写,所以修改分区需要重新编译

打开源码目录下的/param/parameter.txt文件

看到如下内容:

CMDLINE: mtdparts=

rk29xxnand:0x00002000@0x00004000(uboot),

0x00002000@0x00006000(trust),

0x00002000@0x00008000(misc),

0x00010000@0x0000a000(boot),

0x00010000@0x0001a000(recovery),

0x00010000@0x0002a000(backup),

0x00020000@0x0003a000(oem),

0x00f00000@0x0005a000(rootfs),

-@0x00f5a000(userdata:grow)

RK3399 Linux的分区信息如上。

注意:

1、其格式为:分区大小+@+起始地址

2、在修改分区大小的时候必须要注意,修改某个分区要对应修改下一个分区的起始地址,以此类推。

3、后一个分区的起始地址为前一个分区的起始地址加上分区大小。

三、RK3399 Desktop版本命令行连接WiFi的方法

RK3399 Desktop版本使用Ubuntu文件系统,用NetworkManager网络管理器来控制网络连接。

在输入WiFi密码连接对应的WiFi后,会在/etc/NetworkManager/system-connections/目录下生成一个和WiFi名字对应的文件,内容是WiFi的配置信息。

仿照生成的配置文件,创建一个新文件sudo vi /etc/NetworkManager/system-connections/forlinx-test

内容按照实际WiFi进行设置,类似如下:

[connection]

id=forlinx

uuid=a19cdac4-f704-498e-8802-32bbefdd0441

type=wifi

permissions=user:forlinx:;

[wifi]

mac-address=C0:84:7D:12:8A:27

mac-address-blacklist=

mode=infrastructure

ssid=forlinx

[wifi-security]

auth-alg=open

key-mgmt=wpa-psk

psk=fl03123102650

[ipv4]

dns-search=

method=auto

[ipv6]

addr-gen-mode=stable-privacy

dns-search=

method=auto

红色字体涉及到的内容需要根据实际WiFi的情况调整,上述只是举例。

mac-address WiFi模块mac地址

ssid 要连接的WiFi名称

key-mgmt 要连接的WiFi加密方式

psk 要连接的WiFi的密码

创建好之后修改文件权限sudo chmod 600 /etc/NetworkManager/system-connections/forlinx-test

执行sync

重启RK3399开发板即可自动连接设定的WiFi

四、RK3399 Linux+QT版本开机应用程序自启动方法。

RK3399应用程序自启动
查看/etc/init.d目录时,会发现有许多以"K"开头,或者以"S"开头的脚本文件,这些文件在系统启动过程中都会自启动,S开头是开机启动,K开头是关机时运行。
Linux buildroot的桌面程序就是以/etc/init.d/S60matrix-browser脚本文件启动的。如果想在RK3399中自启动自己的程序就可以修改该文件,将RK3399启动的桌面程序替换为自己的应用程序即可。

步骤1:创建编译可以运行的helloworld qt程序,得到可在RK3399开发板上运行的bin文件helloworld

步骤2:将步骤1生存的helloworld拷贝到在RK3399开发板/usr/bin/目录下

步骤3:修改/etc/init.d/S60matrix-browser,代码修改如下,修改完保存退出:
[root@rk3399:/]# vi /etc/init.d/S99matrix-browser
#!/bin/sh
#Start linux launcher…

case “$1” in
start)
printf "Starting matrix-browser: "
source /etc/profile.d/env.sh
#/usr/bin/matrix-browser -no-sandbox --disable-gpu localhost >> /dev/null &
/usr/bin/helloworld &
;;
stop)
#killall matrix-browser
killall helloworld
printf “stop finished”
;;
*)
echo “Usage: $0 {start|stop}”
exit 1
;;
esac
exit 0

步骤4:输入sync同步保存命令,重启RK3399开发板,就可以看到helloworld程序自动启动了。

五、RK3399 Desktop中安装Docker环境

步骤1. 安装必要的一些系统工具

$ sudo apt-get update

$ sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common

步骤2. 安装 GPG 证书

$ curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

步骤3. 写入软件源信息

$ sudo add-apt-repository “deb [arch=arm64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable”

步骤4. 更新并安装 Docker-CE

$ sudo apt-get -y update

查找Docker-CE 的版本

$ apt-cache madison docker-ce

输出:docker-ce | 18.06.3ce3-0~ubuntu | http://mirrors.aliyun.com/docker-ce/linux/ubuntu/

trusty/stable amd64 Packages

安装指定版本的Docker-CE

例如:

$ sudo apt-get -y install docker-ce=18.06.3ce3-0~ubuntu

再安装docker-ce的过程中,会产生以下错误信息,这是由于在内核在编译的时候没有打开docker支持。

docker相关配置没打开,使用附件的config替换arch/arm64/configs/rockchip_linux_defconfig,然后重新编译,烧写之后即可安装。

六、RK3399全编译afptool文件报错

在进行RK3399 Linux的编译过程中,产生如上报错是因为afptool是32位系统下的文件,在64位系统中无法运行。

执行以下命令,设置64位兼容32位程序:

sudo dpkg --add-architecture i386

sudo apt-get update

sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386

重新编译即可编译成功。

以上为近期整理出的RK3399问题及解决思路, 欢迎大家指正,交流。

飞凌拥有一支专业的技术支持团队,随时为您解决各类使用过程种遇到的问题。

飞凌嵌入式RK3399开发板使用过程中问题实录及解决思路相关推荐

  1. qt工程在linux系统里颜色显示错误_【飞凌嵌入式RK3399开发板试用体验】+QT开发环境搭建测试(二)...

    作者:飞扬的青春 在拿到开发板之后,已经体验了Android操作系统,接下来就是体验Linux下的开发,本次以QT的一个小案例来测试下. 首先是自己先搭建了一个Ubuntu18.04的虚拟机,使用真机 ...

  2. 飞凌嵌入式RK3399开发板人工智能为广告机赋能

    对于广告机运营商来说,不知道每个广告机前经过的人群特点,就不知道当前应该播放哪条广告才会更精准: 对于广告创意方来说,不知道广告有没有吸引到目标客户群,就不知道创意好不好: 当广告投放出去后,广告主没 ...

  3. 飞凌嵌入式iMX8MP 开发板试用体验--编译内核源码

    FETMX8MP-C核心板基于NXP i.MX 8M Plus处理器开发设计,该系列处理器专注于机器学习与视觉.高级多媒体以及具有高可靠性的工业自动化.旨在满足智慧城市.工业互联网.智能医疗.智慧交通 ...

  4. 实测|飞凌嵌入式OK3588-C开发板4G模组的使用与测试

    本篇试用报告由发烧友  ouxiaolong提供,感谢ouxiaolong的支持.飞凌嵌入式会持续开展开发板有奖试用活动,更有京东E卡等着你!欢迎大家的持续关注. 飞凌嵌入式OK3588-C开发板是一 ...

  5. 干货 | 飞凌嵌入式OKT507-C开发板如何在Android系统上进行OTA升级

    OTA升级是Android系统所提供的标准软件升级方式.它功能十分强大,并且提供了完全升级(完整包)和增量升级(差异包)两种模式.下面我们以飞凌嵌入式OKT507-C开发板为例,为大家讲解一下具体步骤 ...

  6. 飞凌嵌入式 RK3399核心板 iMX6ULL核心板 iMX6UL核心板 PX30,RK3368,RK3288,RK3399,i.mx6芯片参数对比分析

    飞凌嵌入式 RK3399核心板 iMX6ULL核心板 iMX6UL核心板 https://blog.csdn.net/qq_42792038/article/details/89382711?ops_ ...

  7. 发烧友实测 | 飞凌嵌入式OKA40i-C开发板试用体验之远程视频监控

    本篇试用报告由发烧友zealsoft提供,感谢zealsoft的支持.飞凌嵌入式会在电子发烧友和电路城论坛持续开展开发板有奖试用活动,更有京东E卡等着你!欢迎大家的持续关注. "感谢飞凌嵌入 ...

  8. lighttp支持PHP移植到imx6,[Qt开发指南]飞凌嵌入式iMX6开发板QT移植

    虚拟机环境: ubuntu12.04 32bit /64bit 目标平台: i.MX6 开发板 交叉编译工具链: gcc gcc-4.6.2-glibc-2.13-linaro-multilib-20 ...

  9. 【飞凌嵌入式 OK3399-C+开发板试用体验】开箱上电

    收到开发板一周多的时间,因为忙于别的事情没来得及发第一帖,现在补上. 收到开发板,开箱,给我第一印象是开发板的外设接口真的很齐全,特别是背面的m.2固态硬盘口和minipcie接口都很不错,这样开发板 ...

最新文章

  1. 【转】语音、音频的思考
  2. linux内核唤醒过程,Linux内核启动过程分析
  3. Java笔试——2021届秋招编程题汇总
  4. sql注入_1-4_post盲注
  5. 大四实习有点晚[转载]
  6. oracle语句求保有率,Oracle之保有量计算(当前记录等于前几条记录之和)
  7. 哪种开源许可证最适合商业化?
  8. python 曲面_Python之OpenGL笔记(35):曲面物体的构建
  9. uniapp 小程序授权登录时 获取不到用户头像等信息 只能得到灰色缺省头像以及nickname 为“微信用户”等
  10. 渗透测试报告模板_演习防守方总结模板写作公式
  11. 京东E卡查询绑定助手电脑版APP
  12. 威尔特拉斯定理_什么是数学 (R·柯朗 H·罗宾 著)
  13. android的otg功能,android怎么打开otg功能
  14. 高三班主任写给学生的一封信
  15. 推荐一些前端小姐姐的公众号
  16. 使用曲面细分渲染毛发
  17. 调皮的程序员:Linux之父雕刻在Linux内核中的故事
  18. 【数据堂开放数据】活体检测数据免费开放
  19. 这样讲解EMI/EMS/EMC,非专业人士看后都懂了
  20. 解决ORA-00904: invalid identifier标识符无效

热门文章

  1. 智能制造新模式, 柔性制造正当时
  2. fNIRS | 近红外功能成像技术基本原理、实验设计和数据采集
  3. 11.16模拟赛总结
  4. 芯微电子IPO终止:业绩开始大幅下滑,王日新、王苟新兄弟不同命
  5. 华为od统一考试B卷【阿里巴巴找黄金宝箱】Python 实现
  6. 【数据库】DBMS几种进程模型优劣与举例
  7. 基于 Hadoop 的58同城离线计算平台设计与实践
  8. webpack打包css image,webpack 打包CSS 引入图片
  9. 360急救盘ISO镜像制作
  10. 漂亮的网页动态飘花灯笼特效代码