# 系统软件包 TB-RK3588x预装的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. 执行如下命令安装: ```shell 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. 执行如下命令安装: ```shell sudo -y install toybrick-prop-bin ``` 2. 开机启动服务: ```shell sudo systemctl enable toybrick-prop.service ``` 2. Prop命令使用帮助: - 列出所有系统属性 ```shell getprop [persist.dev.model]: [TB-RK3588X0] [persist.sys.usb.config]: [adb] [dev.model]: [TB-RK3588X0] [sys.usb.config]: [adb] [sys.usb.touch.width]: [1920] [sys.usb.touch.height]: [1080] [sys.usb.touch.points]: [10] [sys.usb.touch.in]: [/dev/hidg2] [sys.usb.touch.report.id]: [4] [sys.usb.touch.report.size]: [64] [sys.usb.touch.feature.id]: [2] [sys.usb.keyboard.in]: [/dev/hidg0] [sys.usb.mouse.in]: [/dev/hidg1] ``` *说明:以persist开头的系统属性会保存在/etc/prop/目录下,重启系统系统会自动加载导入配置。* - 列出所有前缀为指定字段的系统属性 ```shell getprop list sys.usb [sys.usb.config]: [adb] [sys.usb.touch.width]: [1920] [sys.usb.touch.height]: [1080] [sys.usb.touch.points]: [10] [sys.usb.touch.in]: [/dev/hidg2] [sys.usb.touch.report.id]: [4] [sys.usb.touch.report.size]: [64] [sys.usb.touch.feature.id]: [2] [sys.usb.keyboard.in]: [/dev/hidg0] [sys.usb.mouse.in]: [/dev/hidg1] ``` - 查看单个系统属性 ```shell getprop sys.usb.config adb ``` - 设置系统属性(需要root权限) ```shell sudo setprop dev.version v0.1 // 设置dev.version属性,重启后丢失 sudo setprop persist.dev.version v0.1 //设置persist.dev.version属性,保存在/etc/prop/dev.json ``` - 删除指定的property ```shell sudo setprop dev.version //删除dev.version属性 sudo 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. 执行如下命令安装: ```shell sudo -y install toybrick-prop-dev toybrick-log ``` 2. 编译链接选项: ```shell LDDFLAG=`pkg-config --libs toybrick_prop` CFLAG=`pkg-config --cflags toybrick_prop` ``` 2. 包含头文件: ```c #include #include #include ``` 2. 示例代码:test.c ```c #include #include int main(int argc, char **argv) { const char *key = "dev.model"; const char *default_value = "TB-RK3588X0"; char value[PROPERTY_VALUE_MAX]; int ret; ret = property_get(key, value, default_value); printf("key %s, value %s, len %d\n", key, value, ret); return ret; } ``` 编译命令: ```shell 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 - 执行如下命令安装: ```shell sudo apt -y install toybrick-usbd ``` - 开机启动服务: ```shell sudo systemctl enable toybrick-usb.service ``` - USB Config配置 ```shell sudo setprop sys.usb.config adb //当前支持adb功能,下个版本计划支持adb,ntb,rdnis,key,touch,keyboard,uvc,uvc等 sudo 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 - 执行如下命令安装: ```shell sudo apt -y install rockchip-isp ``` - 开机服务器: ```shell sudo systemctl enable rockchip-isp.service ``` - 新增iqfile:将iqfile文件拷贝到/etc/iqfiles目录下,重启服务。 ```shell cp ${IQFILE} /etc/iqfiles/ sudo systemctl restart rockchip-isp.service ``` #### rockchip-isp-sample 1. 包含camera示例代码(路径:/usr/share/camera) 2. 编译示例代码 ```shell cp -r /usr/share/camera ./ cd camera make ``` ## Edge Utils ### 软件包说明 Edge Utils包含蓝牙、WIFI、IO、网络配置、显示、camera等实用工具。 ### 软件包 #### edge-utils 1. 包含系统相关工具(路径:/usr/local/bin) 2. 执行如下命令安装: ```shell 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) - 执行如下命令安装: ```shell sudo apt -y install toybrick-vendor-bin ``` - 命令帮助: ```shell toybrick_vendor --help Usage: toybrick_vendor get {sn | product | id } len toybrick_vendor set {sn | product | id } data toybrick_vendor get mac count toybrick_vendor set mac mac0 mac1 ... e.g. toybrick_vendor set mac 329bb75e915e 329bb75e915f //写入两个mac地址 toybrick_vendor get mac 2 //读取两个mac地址 toybrick_vendor set sn xxxxxxxx //写入SN号 toybrick_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. 执行如下命令安装: ```shell sudo -y install toybrick-vendor-dev ``` 3. 编译链接选项: ```shell LDDFLAG=`pkg-config --libs toybrick_vendor` CFLAG=`pkg-config --cflags toybrick_vendor` ``` 4. 包含头文件: ```c #include ``` 5. 示例代码:test.c ```c #include #include int main(int argc, char **argv) { const char *sn = "xxxxxxxx"; return vendor_set_sn(sn, strlen(sn)); } ``` 编译命令: ```shell 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. 执行如下命令安装: ```shell 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 - 执行如下命令安装: ```shell sudo apt -y install toybrick-server ``` - 开机启动服务: ```shell 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. 执行如下命令安装: ```shell sudo -y install rockchip-mpp ``` #### rockchip-mpp-tests 1. 包含可执行文件: 可执行文件(路径:/usr/bin):mpi_dec_test,mpi_enc_test等 2. 执行如下命令安装: ```shell 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. 执行如下命令安装: ```shell sudo -y install rockchip-mpp-dev ``` 3. 编译链接选项: ```shell LDDFLAG=`pkg-config --libs rockchip_mpp` CFLAG=`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. 执行如下命令安装: ```shell sudo -y install rockchip-rga ``` #### rockchip-rga-bin 1. 包含可执行文件: 可执行文件(路径:/usr/bin):rgaImDemo等 2. 执行如下命令安装: ```shell 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. 执行如下命令安装: ```shell sudo -y install rockchip-rga-dev ``` 3. 编译链接选项: ```shell LDDFLAG=`pkg-config --libs rockchip_rga` CFLAG=`pkg-config --cflags rockchip_rga` ```