系统软件包

BQ-3588-C预装的debian11内预置了以下常用到的各种软件包

Toybrick Property

软件包说明

Toybrick Property基于D-BUS实现安卓系统属性的相关接口:getprop、setprop和C/C++库函数。

软件包

toybrick-prop

1.包含运行时链接库(路径:/usr/lib/aarch64-linux-gnu):libtoybrick_prop.so.0和libtoybrick_prop.so.0.0.0

2.执行如下命令安装:

sudo -y install toybrick-prop toybrick-log

toybrick-prop-bin

1.包含可执行文件和启动服务:

1.可执行文件(路径:/usr/bin):toybrick_propd,getprop,setprop,toybrick-prop.sh

2.启动服务(路径:/usr/lib/systemd/system):toybrick-prop.service

2.执行如下命令安装:

sudo -y install toybrick-prop-bin

3.开机启动服务:

sudo systemctl enable toybrick-prop.service

4.Prop命令使用帮助:

  • 列出所有系统属性

 1getprop
 2
 3[persist.dev.model]: [TB-RK3588B0]
 4[persist.sys.usb.config]: [adb]
 5[dev.model]: [TB-RK3588B0]
 6[sys.usb.config]: [adb]
 7[sys.usb.touch.width]: [1920]
 8[sys.usb.touch.height]: [1080]
 9[sys.usb.touch.points]: [10]
10[sys.usb.touch.in]: [/dev/hidg2]
11[sys.usb.touch.report.id]: [4]
12[sys.usb.touch.report.size]: [64]
13[sys.usb.touch.feature.id]: [2]
14[sys.usb.keyboard.in]: [/dev/hidg0]
15[sys.usb.mouse.in]: [/dev/hidg1]

说明:以persist开头的系统属性会保存在/etc/prop/目录下,重启系统系统会自动加载导入配置。

  • 列出所有前缀为指定字段的系统属性

 1getprop list sys.usb
 2
 3[sys.usb.config]: [adb]
 4[sys.usb.touch.width]: [1920]
 5[sys.usb.touch.height]: [1080]
 6[sys.usb.touch.points]: [10]
 7[sys.usb.touch.in]: [/dev/hidg2]
 8[sys.usb.touch.report.id]: [4]
 9[sys.usb.touch.report.size]: [64]
10[sys.usb.touch.feature.id]: [2]
11[sys.usb.keyboard.in]: [/dev/hidg0]
12[sys.usb.mouse.in]: [/dev/hidg1]
  • 查看单个系统属性

1getprop sys.usb.config
2
3adb
  • 设置系统属性(需要root权限)

1sudo setprop dev.version v0.1    // 设置dev.version属性,重启后丢失
2sudo setprop persist.dev.version v0.1   //设置persist.dev.version属性,保存在/etc/prop/dev.json
  • 删除指定的property

1sudo setprop dev.version   //删除dev.version属性
2sudo setprop persist.dev.version //删除dev.version属性, 同时删除/etc/prop/dev.json里的相关配置

toybrick-prop-dev

1.包含编译连接所需的相关文件:

  • 头文件(路径:/usr/include/toybrick):toybrick_properties.h,properties.h和system_properties.h

  • 编译时链接库(路径:/usr/lib/aarch64-linux-gnu):libtoybrick_prop.so

  • pkgconfig(路径:/usr/lib/aarch64-linux-gnu/pkgconfig):toybrick_prop.pc

2.执行如下命令安装:

sudo -y install toybrick-prop-dev toybrick-log

3.编译链接选项:

1LDDFLAG=`pkg-config --libs toybrick_prop`
2CFLAG=`pkg-config --cflags toybrick_prop`

4.包含头文件:

1#include <toybrick/toybrick_properties.h>
2#include <toybrick/properties.h>
3#include <toybrick/system_properties.h>

5.示例代码:test.c

 1#include <toybrick/toybrick_properties.h>
 2#include <stdio.h>
 3int main(int argc, char **argv)
 4{
 5    const char *key = "dev.model";
 6    const char *default_value = "TB-RK3588B0";
 7    char value[PROPERTY_VALUE_MAX];
 8    int ret;
 9
10    ret = property_get(key, value, default_value);
11    printf("key %s, value %s, len %d\n", key, value, ret);
12    return ret;
13}

编译命令:

gcc test.c `pkg-config --libs toybrick_prop` `pkg-config --cflags toybrick_prop` -o test

Toybrick Usbconfig

软件包说明

Toybrick Usbconfig基于Type-C OTG口实现虚拟USB设备如:adb ,ntb, rndis网卡,虚拟摄像头,虚拟声卡,虚拟键盘鼠标和触摸屏等。

软件包

toybrick-usbd

包含可执行文件和启动服务。

  • 可执行文件(路径:/usr/bin):toybrick_usbd,toybrick_adbd等

  • 启动服务(路径:/usr/lib/systemd/system):toybrick-usb.service

  • 执行如下命令安装:

sudo apt -y install toybrick-usbd

  • 开机启动服务:

sudo systemctl enable toybrick-usb.service

  • USB Config配置

1sudo setprop sys.usb.config adb  //当前支持adb功能,下个版本计划支持adb,ntb,rdnis,key,touch,keyboard,uvc,uvc等
2sudo setprop persist.sys.usb.config adb  //写入磁盘,永久生效。

Rockchip ISP

软件包说明

Rockchip ISP运行RKISP 3A tunning服务和camera示例代码,默认支持imx327,imx415,imx464,os04a10hk,ov3855和ov50c40模组。

软件包

rockchip-isp

包含可执行文件,iqfile文件和启动服务

  • 可执行文件(路径:/usr/bin):rkaiq_3A_server

  • 启动服务(路径:/usr/lib/systemd/system):rockchip-isp.service

  • 执行如下命令安装:

sudo apt -y install rockchip-isp

  • 开机服务器:

sudo systemctl enable rockchip-isp.service

  • 新增iqfile:将iqfile文件拷贝到/etc/iqfiles目录下,重启服务。

1cp ${IQFILE} /etc/iqfiles/
2sudo systemctl restart rockchip-isp.service

rockchip-isp-sampl

1.包含camera示例代码(路径:/usr/share/camera)

2.编译示例代码

1cp -r /usr/share/camera ./
2cd camera
3make

Edge Utils

软件包说明

Edge Utils包含蓝牙、WIFI、IO、网络配置、显示、camera等实用工具。

软件包

edge-utils

包含系统相关工具(路径:/usr/local/bin)

执行如下命令安装:

sudo apt -y install edge-utils

Toybrick Vendor

软件包说明

Toybrick vendor提供/dev/vendor-storage的SN、MAC等的读写命令、C语言调用接口和示例代码。

软件包

toybrick-vendor-bin

  • 包含/dev/vendor-storage的SN、MAC等的读写命令(/usr/bin/toybrick_vendor)

  • 执行如下命令安装:

sudo apt -y install toybrick-vendor-bin

  • 命令帮助:

 1toybrick_vendor --help
 2Usage:
 3toybrick_vendor get {sn | product | id } len
 4toybrick_vendor set {sn | product | id } data
 5toybrick_vendor get mac count
 6toybrick_vendor set mac mac0 mac1 ...
 7e.g.
 8toybrick_vendor set mac 329bb75e915e 329bb75e915f        //写入两个mac地址
 9toybrick_vendor get mac 2                                //读取两个mac地址
10toybrick_vendor set sn xxxxxxxx                          //写入SN号
11toybrick_vendor get sn 16                                //读取SN号,count值必须大于实际SN号的长度

toybrick-vendor-dev

1.包含编译连接所需的相关文件:

  • 头文件(路径:/usr/include/toybrick):toybrick-vendor.h

  • 编译时链接库(路径:/usr/lib/aarch64-linux-gnu):libtoybrick_vendor.so

  • pkgconfig(路径:/usr/lib/aarch64-linux-gnu/pkgconfig):toybrick_vendor.pc

2.执行如下命令安装:

sudo -y install toybrick-vendor-dev

3.编译链接选项:

1LDDFLAG=`pkg-config --libs toybrick_vendor`
2CFLAG=`pkg-config --cflags toybrick_vendor`

4.包含头文件:

#include <toybrick/toybrick-vendor.h>

5.示例代码:test.c

1#include <toybrick/toybrick-vendor.h>
2#include <stdio.h>
3
4int main(int argc, char **argv)
5{
6    const char *sn = "xxxxxxxx";
7
8    return vendor_set_sn(sn, strlen(sn));
9}

编译命令:

gcc test.c `pkg-config --libs toybrick_vendor` `pkg-config --cflags toybrick_vendor` -o test`

Vendor Firmware

软件包说明

Vendor Firmware包含WIFI,蓝牙模组的firmware固件。

软件包

vendor-firmware

1.包含系统相关工具(路径:/vendor,/system)

2.执行如下命令安装:

sudo apt -y install vendor-firmware

Toybrick Server

软件包说明

Toybrick Server集成启动服务,开启启动执行toybrick-server.sh脚本,启动蓝牙服务,并调用/usr/local/bin/toybrick-custom.sh

注意:toybrick-server.sh会因为软件包升级而被覆盖,如果用有需要添加开机启动脚本请新建/修改/usr/local/bin/toybrick-custom.sh。

软件包

toybrick-server

包含可执行文件和启动服务

  • 可执行文件(路径:/usr/bin):toybrick-server.sh

  • 启动服务(路径:/usr/lib/systemd/system):toybrick.service

  • 执行如下命令安装:

sudo apt -y install toybrick-server

  • 开机启动服务:

sudo systemctl enable toybrick.service

Rockchip MPP

软件包说明

Rockchip MPP集成VPU视频编解码库、开发头文件和测试命令。

开发指导详见:边缘计算SDK工程的docs/common/MPP/目录下文档。

软件包

rockchip-mpp

1.包含运行时链接库(路径:/usr/lib/aarch64-linux-gnu):librockchip_mpp*.so.*

2.执行如下命令安装:

sudo -y install rockchip-mpp

rockchip-mpp-tests

1.包含可执行文件:

可执行文件(路径:/usr/bin):mpi_dec_test,mpi_enc_test等

2.执行如下命令安装:

sudo -y install rockchip-mpp-tests

rockchip-mpp-dev

1.包含编译连接所需的相关文件:

  • 头文件(路径:/usr/include/rockchip):MPP相关头文件

  • 编译时链接库(路径:/usr/lib/aarch64-linux-gnu):librockchip_mpp.so

  • pkgconfig(路径:/usr/lib/aarch64-linux-gnu/pkgconfig):rockchip_mpp.pc

2.执行如下命令安装:

sudo -y install rockchip-mpp-dev

3.编译链接选项:

1LDDFLAG=`pkg-config --libs rockchip_mpp`
2CFLAG=`pkg-config --cflags rockchip_mpp`

Rockchip RGA

软件包说明

Rockchip RGA集成RGA 2D图像加速库、开发头文件和测试命令。

开发指导详见:边缘计算SDK工程的docs/edge/rga/目录下文档。

软件包

rockchip-rga

1.包含运行时链接库(路径:/usr/lib/aarch64-linux-gnu):librga*.so.*

2.执行如下命令安装:

sudo -y install rockchip-rga

rockchip-rga-bin

1.包含可执行文件:

可执行文件(路径:/usr/bin):rgaImDemo等

2.执行如下命令安装:

sudo -y install rockchip-rga-bin

rockchip-rga-dev

1.包含编译连接所需的相关文件:

  • 头文件(路径:/usr/include/rockchip):RGA相关头文件

  • 编译时链接库(路径:/usr/lib/aarch64-linux-gnu):librga.so

  • pkgconfig(路径:/usr/lib/aarch64-linux-gnu/pkgconfig):rockchip_rga.pc

2.执行如下命令安装:

sudo -y install rockchip-rga-dev

3.编译链接选项:

1LDDFLAG=`pkg-config --libs rockchip_rga`
2CFLAG=`pkg-config --cflags rockchip_rga`