0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

瑞芯微(EASY EAI)RV1126B 蓝牙使用

广州灵眸科技有限公司 2026-04-02 17:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1. 蓝牙简介

在蓝牙协议栈中,有两种协议用作蓝牙数据传输,它们分别是:SPP(经典蓝牙串口协议)和BLE(低功耗蓝牙协议)。

单模蓝牙模组:仅支持SPP或BLE的其中一种。

双模蓝牙模组:既支持SPP,同时又支持BLE。

而EASY-EAI-Nano-TB采用的蓝牙模组为DB37,它是【仅支持BLE协议】的【单模】蓝牙模组。

1.1 bluez

Bluez作为当前最成熟的开源蓝牙协议栈,它是一个基于GNU General Public License (GPL)发布的开源项目,已成为linux官方的蓝牙协议栈(从Linux2.4.6开始便成为Linux 内核的一部分),在Linux的各大发行版中已经得到了广泛的应用。

可以这么理解:如何在Linux上使用蓝牙?=如何使用bluez?

Bluez具体就是一套Linux官方支持的开源的蓝牙协议栈处理工具集,具体包含了以下几个工具:bccmd、bluemoon、bluetoothctlbluetoothd、btattach、btmon、ciptool、hciattach、hciconfig、hcidump、hcitool、hex2hcd、l2ping、l2test、mpris-proxy、rctest、rfcommsdptool。

1.2 前期准备

首先安装bluez。

apt-get install bluez

确认bluez已经成功安装:

bluetoothctl -v

能够如下输出版本号,说明bluez已经成功安装。

v2-e03957598ad84d37551f063bb148d039_720w.webp

利用hciconfig工具可以确认蓝牙设备已可以正常工作。

hciconfig -a

v2-4c4d0e5cebf35b0867da369318f9e4bc_720w.webp

2. bluetooth工具

hci*系列的工具一般用于直接操作蓝牙协议栈的HCI层,在新版的bluez工具集里逐渐不维护。而主流用于操作蓝牙设备的是bluetooth工具:bluetoothd和bluetoothctl。

2.1 bluetoothd

是一个用于管理蓝牙驱动的【应用层】服务,一般把它启动起来就行。可以通过ps命令查看它是否已在后台启用:

sudo ps -ef | grep -i bluetoothd

v2-c08d3398bd17afe47bafeccb9bb66a2f_720w.webp

在ubuntu系统中,不需要手动对此进程进行启停。而是通过systemctl服务对bluetoothd进行管理,以下是关于bluetoothd服务启/停和状态查看的命令:

sudo systemctl status bluetooth.service ##查看bluetoothd服务状态 sudo systemctl start bluetooth.service ##启动bluetoothd服务,状态重启后不会保存 sudo systemctl stop bluetooth.service ##停止bluetoothd服务,状态重启后不会保存 sudo systemctl enable bluetooth.service ##使能服务,重启设备后bluetoothd自动启动 sudo systemctl disable bluetooth.service ##禁能服务,重启设备后bluetoothd不会启动

2.2 bluetoothctl

一个通过D-Bus与bluetoothd交互的工具,相当于bluetoothd服务的客户端。bluetoothctl通过bluetoothd简介去操作蓝牙硬件。bluetoothctl内部集成了一个shell交互功能,直接在命令行运行bluetoothctl工具即可进入该工具的内部shell。

v2-2ee06a0d6fd93af83475ac01efc004ce_720w.webp

输入help可以查看该工具支持的命令。

v2-8460ff8137b870097308426615dbd303_720w.webp

给蓝牙芯片上电命令:

power on

v2-f70ef03765f286e3e87de9776e923597_720w.webp

进入advertise子菜单:给芯片改名,并让芯片可以给其他蓝牙主机扫描发现。

menu advertise name EASY-EAI-Nano-TB

v2-87879fc649adc5a7514c7e652fbb765a_720w.webp

然后back命令,返回上级菜单:

back

3. BLE协议通讯

BLE低功耗蓝牙基于GATT。

3.1 开发板作为主机

首先把【手机】的蓝牙调试助手【配置成从机】:开启从机模式,开启广播。

v2-885286de2789f5228f774f06f9c155a8_720w.webp

然后再在开发板中(bluetoothctl这里)进行【开启扫描】、【关闭扫描】、【连接设备】

开启扫描:

scan on

发现目标设备后停止扫描:

scan off

列出扫描到的设备(找到MAC地址):

devices

与目标设备配对、信任、连接:

pair xx:xx:xx:xx:xx:xx trust xx:xx:xx:xx:xx:xx connect xx:xx:xx:xx:xx:xx

蓝牙连接成功后,蓝牙主机(开发板)进入gatt子菜单:

menu gatt

查看特征属性:

list-attributes

(可以通过【BLE调试助手app】得知:fff1用于【从机发送】,fff2用于【从机接收】)

从机发送特征属性为:

Characteristic (Handle 0x0000) /org/bluez/hci0/dev_78_C3_C4_C4_94_8D/service002f/char0030 0000fff1-0000-1000-8000-00805f9b34fb Unknown

从机接收特征属性为:

Characteristic (Handle 0x0000) /org/bluez/hci0/dev_78_C3_C4_C4_94_8D/service002f/char0034 0000fff2-0000-1000-8000-00805f9b34fb Unknown

3.1.1 主机接收,从机发送

首先要选择fff1

select-attribute /org/bluez/hci0/dev_78_C3_C4_C4_94_8D/service002f/char0030

然后打开通知

notify on

v2-b20854afb36fa5c6b382cbfde3e966a5_720w.webp

然后操作app,发送1Byte的hex数据过去开发板。

v2-8aff33ff79f36168a782396bdb7dd45d_720w.webp

3.1.2 主机发送,从机接收

属性要改选fff2

select-attribute /org/bluez/hci0/dev_78_C3_C4_C4_94_8D/service002f/char0034

然后执行write操作

write 0x67

最后app上就能收到了从开发板发过来的数据

v2-47c560f5de6b80892c3821707b9af03b_720w.webp

3.2 开发板作为从机

先在开发板打开一个新的终端,编译并运行gatt-server服务(一个用于与【主机】通信的应用程序):

v2-94f72f1483a78818f472728cf22d4884_720w.webp

再回到bluetoothctl执行以下命令,开启蓝牙广播:

advertise on

v2-d80eec134298f4e41c704cbb4c5e6b35_720w.webp

采用【BLE调试助手app】,扫描并连接开发板蓝牙。

v2-1df3fa2e25a5b012497a8477aeab5c79_720w.webp

3.2.1 主机接收,从机发送

【BLE调试助手app】向开发板读取数据:

v2-a46483921a65f3f685d21169b5cb4831_720w.webp

执行上诉操作以后,开发板上的gatt-server就会打印下方信息:

v2-28f7ce1227f97e0879e533165fea7757_720w.webp

3.2.2 主机发送,从机接收

【BLE调试助手app】向开发板发送数据:

v2-6b723608f8db248c297b3de1792ad61c_720w.webp

开发板上的gatt-server就会收到如下信息:

v2-5500b03899189a426b5740d38ca2fbb6_720w.webp
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    26

    文章

    6405

    浏览量

    120534
  • 瑞芯微
    +关注

    关注

    27

    文章

    841

    浏览量

    54647
  • EASY-EAI灵眸科技

    关注

    4

    文章

    95

    浏览量

    3720
  • RV1126B
    +关注

    关注

    0

    文章

    83

    浏览量

    239
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    (EASY EAI)RV1126B 音频输入

    1.声卡资源介绍EASY-EAI-Nano-TB仅有一块由RV1126B主控输出的声卡。通过串口调试或ssh调试,可以进入开发板终端。执行aplay命令查看声卡相关的详细信息,如下所示
    的头像 发表于 12-18 13:41 2546次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> 音频输入

    (EASY EAI)RV1126B PWM使用

    1.PWM简介1.1开发板PWM资源1.2查找PWM节点rv1126b的pwm资源表如下:【PWM1CH0】对应的是pwm1_4ch_0,寄存地址为20700000。【PWM1CH1】对应
    的头像 发表于 01-06 10:49 8149次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> PWM使用

    (EASY EAI)RV1126B 音频输出

    1.声卡资源介绍EASY-EAI-Nano-TB仅有一块由RV1126B主控输出的声卡。通过串口调试或ssh调试,可以进入开发板终端。执行aplay命令查看声卡相关的详细信息,如下所示
    的头像 发表于 04-01 17:13 8493次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> 音频输出

    EASY EAI Nano-TB(RV1126B)开发板试用】+初识篇

    Nano-TB是灵眸科技研发的一款应用于AIoT领域的开发板,它基于RV1126B处理器,集成了4个Cortex-A53及独立的NEON协处理器,它支持4K@30fps的H.
    发表于 10-25 22:06

    EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-灯闪

    接上文【EASY EAI Nano-TB(RV1126B)开发板试用】开箱测评 https://pan.baidu.com/s/15pnbJXPN5TrfV2KfsKaZyQ?pwd=1234 打开
    发表于 11-01 21:26

    EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目

    接上文【EASY EAI Nano-TB(RV1126B)开发板试用】通过wifi连接,使用ssh登录EASY EAI Nano-TB(
    发表于 11-02 18:34

    EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-红绿灯按钮项目

    0接上文【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目-实现开机起动 EASYEAINano-TB(RV1126B
    发表于 11-03 10:00

    请问各位大佬,如何解决, RV1126B 使用 mpp 自带工具 调试时,内核直接报错崩溃!

    请问各位大佬,如何解决, RV1126B 使用 mpp 自带工具 调试时,内核直接报错崩溃! 调试输出如下:
    发表于 11-19 16:01

    EASY EAI Nano-TB(RV1126B)开发板试用】+1、开箱上电

    ,避免因接触不良导致显示或采集异常。 2 硬件解析:强劲AI核心与丰富接口 2.1 核心处理器性能 EASY EAI Nano-TB开发板的核心基于
    发表于 11-19 21:39

    EASY EAI Nano-TB(RV1126B)开发板试用】介绍、系统安装

    ,并介绍了系统镜像安装部署的相关流程。 介绍 EASY-EAI-Nano-TB是灵眸科技研发的一款应用于AIoT领域的AIOT主板。 核心板基于
    发表于 12-23 18:05

    RV1126系列选型指南:从RV1126RV1126B,一文看懂升级差异

    2025年7月,正式发布新一代AI视觉芯片RV1126B。作为其金牌方案商,EASYEAI灵眸科技同步推出搭载该芯片的AIoT核心板EAI11
    的头像 发表于 09-04 10:50 5072次阅读
    <b class='flag-5'>RV1126</b>系列选型指南:从<b class='flag-5'>RV1126</b>到<b class='flag-5'>RV1126B</b>,一文看懂升级差异

    【免费试用】EASY EAI Nano-TB(RV1126B)开发套件评测

    EASY-EAI-Nano-TB是灵眸科技研发的一款应用于AIoT领域的AIOT主板。核心板基于RV1126B处理器设计,并引入了新
    的头像 发表于 09-23 08:09 1227次阅读
    【免费试用】<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b> Nano-TB(<b class='flag-5'>RV1126B</b>)开发套件评测

    RV1126B特性概述

    RV1126BRockchip在2025年第二季度全新推出的Arm架构AI视觉芯片,搭载4核Cortex-A53与自研3Tops算力NPU。全面替代上一代的
    的头像 发表于 10-09 11:22 2125次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RV1126B</b>特性概述

    替代升级实锤!实测RV1126B,CPU性能吊打RV1126

    AI智能芯片迭代提速,推出了全新的Arm架构AI视觉芯片RV1126B,是否替换RV1126,CPU性能是挤牙膏还是大突破。带着这些核
    的头像 发表于 12-11 17:13 2504次阅读
    替代升级实锤!实测<b class='flag-5'>RV1126B</b>,CPU性能吊打<b class='flag-5'>RV1126</b>

    (EASY EAI)RV1126B 人体关键点识别

    的特点。本人员检测算法在数据集表现如下所示:基于EASY-EAI-Nano-TB(RV1126B)硬件主板的运行效率:17个人体关键点索引定义:2.快速上手2.1开发
    的头像 发表于 01-23 10:13 3474次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> 人体关键点识别