引言
很荣幸入选了“电子发烧友”的贝启科技BQ3568HM开源鸿蒙开发板评测活动,上周在出差,今天才有机会开箱一下开发板,简单测试一下。
开发板介绍
以下简介来自厂商:
贝启科技BQ3568开源鸿蒙开发板是一款功能全面的开发板,产品搭载Rockchip RK3568处理器,采用Quad-core ARM Cortex-A55 CPU架构,主频高达2.4GHz,并配备ARM G52 2EE图形处理器,支持OpenGL ES 1.1/2.0/3.2、OpenCL 2.0和Vulkan 1.1等图形标准。在GPU方面,内嵌高性能2D加速硬件。同时,支持RKNN NPU AI,计算能力达到0.8TOPs@INT8,并支持多种深度学习框架如Caffe、TensorFlow、TFLite等。内存方面,提供LPDDR4X 2GB(4GB/8GB可选)的内存容量,存储则有16GB(32GB/64GB/128GB可选)的存储空间,并支持SATA3.0 SSD/HDD和TF-Card存储扩展。接口方面,该设备支持多种接口类型,包括HDMI、USB3.0、USB2.0、SATA、MIPI CSI等,并具备双频Wi-Fi、蓝牙5.0、GPS、NFC、红外遥控器等连接功能。此外,还支持最多四个4G模块、RS232、UART、SD卡槽、SIM卡槽等扩展接口。在软件方面,该设备支持Ubuntu 20.04/Android 11操作系统,并可适配Linux和OpenHarmony操作系统。系统升级支持通过USB本地升级。最后,该产品的尺寸为长146mm×宽90mm。

套件里面包括贝启科技BQ3568HM开源鸿蒙开发板、5.5寸触摸屏、电源适配器、USB数据线及WiFi天线。
开机测试
插上电源开机后,系统显示的是润和的DAYU的logo,看来厂商提供的软件包主要来自主线代码,定制的内容不多。

进入系统后看了一下版本,是4.1.7.5,这个版本应该是最稳定。

从厂商提供的资料看,他们支持OpenHarmony 5.0。后面有时间可以测试一下。
硬件接口
下图是开发板的接口图,从中可以看到,厂商把RK3568提供的接口基本都引出来了。

板上画红圈的地方有两个按键,分别是RESET和电源,这两个按键非常常用,不过这个位置稍微有点不顺手,而且容易按错。
厂商提供了一些配件,其中WiFi天线是一定要接上的,否则无法接入WiFi网络。USB转TTL的接口板暂时用不到。两根USB是用于程序烧录的,后面可能会用到。
技术资料
厂商的技术资料主要通过自己的论坛:开源鸿蒙技术交流-Bearkey-开源社区。
资料汇总贴:BQ3568HM开源鸿蒙系统主板资料汇总帖-开源鸿蒙技术交流-Bearkey-开源社区
代码下载的页面:BQ3568_代码下载-开源鸿蒙技术交流-Bearkey-开源社区。目前支持到OpenHarmony 4.1版本,这个页面下载的版本是厂商修改过的版本,无需再打补丁。如果下载的是主线代码,厂商也提供了OpenHarmony 4.1版本的补丁。从补丁看,内容有点少,包括RKNN的补丁没有在里面。估计这个要自己改。
已经有很多厂商可以支持5.0,论坛上没有提及,不过下面的网盘上有5.0的补丁和编译好的镜像。
厂商提供了百度网盘,其中的资料比论坛上丰富很多,包括视频教程、几个测试程序的源码和HAP包。

示例程序测试
设备连接
使用USB线将开发板连接到电脑上,在命令行运行hdc list targets -v命令查看设备状态,得到如下内容:
G:\HUAWEI\OpenHarmony\Sdk\11\toolchains>hdc list targets -v
150100414a54443452063df492a27a00 USB Connected localhost hdc
COM1 UART Ready hdc
运行Hello world示例
在官方提供的示例中,有一个是Hello word示例,即bq_hello.hap。可以执行命令hdc install C:\Users\Administrator\Downloads\bq_hello.hap直接安装该程序,这时桌面会出现一个叫“label”的图标。点击该图标,会显示“Hello World”字样。

安装LED示例
官方还提供了一个控制LED灯的示例:bq_led.hap。安装该示例时产生如下错误:
G:\HUAWEI\OpenHarmony\Sdk\11\toolchains>hdc install C:\Users\Administrator\Downloads\bq_led.hap
[Info]App install path:C:\Users\Administrator\Downloads\bq_led.hap, queuesize:0, msg:error: failed to install bundle. code:9568347 error: install parse native so failed.
AppMod finish
产生该错误是由于设备支持的Abi类型与C++工程中配置的Abi类型不匹配。执行hdc shell param get const.product.cpu.abilist命令得到该开发板的属性值为default。
在shell中执行如下命令:
app bin etc fonts lib profile usr
可以看出该开发板没有lib64目录,则程序中的“abiFilters”参数中需要至少包含armeabi/armeabi-v7a中的一个类型。也就是说虽然该开发板是一个64位的ARM开发板,但是安装的OpenHarmony是32位的ARM版本。
而使用压缩软件打开bq_led.hap包,发现该软件采用的abiFilters是arm64-v8a,也就是说是64位的ARM应用,所以会出现上面的错误。

要解决这个问题,要么修改程序的“abiFilters”参数,使其增加32位ARM的支持,要么重新编译操作系统,安装64位的镜像文件。
结语
总的来看,这是一块中规中矩的RK3568开发板,接口丰富,功能全面。