【BLE】nrf connect配置为服务端进行蓝牙主从通信实验
需求背景
在进行BLE模块调试时,我们通常配置nrf connect APP作为蓝牙客户端,扫描蓝牙开发板的广播,进行连接。
然而当进行蓝牙主从通信实验时,为了调试主机端程序,如果手上只有一块开发板,就需要将蓝牙开发板配置为客户端,将手机上的nrf connect APP配置为服务端。
建议使用安卓系统上的nrf connect,功能较全。
创建ADVERTISER
- 进入nrf connect,选择ADVERTISER页面,点击右下角的加号,添加advertising data和scan response data。
- 在scan response data中添加16 bit service uuid:0xFFF0(主机通过UUID过滤策略自动连接从机)
添加LED SERVICE
- 点击nrf connect左上角菜单选项,选择configure GATT server
- 点击最上面的白色小三角,在弹出列表中选择第一个加号,添加服务,设置服务名为LED
- 在LED中点击ADD SERVICE,name处填LED,软件会自动弹出nordic led button service,可选择该名称,UUID会自动填写,然后可将12和13字节替换为自己实验中服务的16bit UUID,我的时FFF0
- 点击刚才的服务,ADD CHARACTERISTIC,添加开关灯的属性,name为switch,UUID为base id + FFF1,properties为read和write,permissions为read和write,initial value为0x01010101
连接测试
- 打开蓝牙开发板,为主机模式
- nrf connect上点击ADVERTISER页面,将上面设置的广播右边的开关切换为打开
- 主从机连接后,主机RTT VIEWER打印发现服务成功
- nrf connect连接页面上默认为CLIENT,点击旁边的SERVER,可以看到刚才创建的服务,同时可以看到服务FFF0属性FFF1的默认值为0x01-01-01-01
- 通过按键控制蓝牙主机端给从机端发送消息,可以看到nrf connect服务属性的值在进行相应的变化
备注
- 实验参考 谷雨物联 的 21 write/read属性服务实验
- 以上的图片批注待之后补上
【BLE】nrf connect配置为服务端进行蓝牙主从通信实验相关推荐
- frpc客户端 linux安装,centos配置frp服务端,与客户端
选择下载frp版本 选择linux_amd64.tar.gz 当前教程最新版为:v0.30.0wget https://github.com/fatedier/frp/releases/downloa ...
- linux7.3启动iscsi服务,RHEL7 配置iscsi服务端并实现客户端自动开机挂载
环境:server 172.25.0.11 --iscsi server iqn:iqn.2016-02.com.example:server0 client 172.25.0.10 --iscsi ...
- 最新华为交换机配置ssh服务端配置案例
最新华为交换机配置ssh服务端配置案例 # aaa local-user dcrmyy password irreversible-cipher Huawei@123local-user dcrmyy ...
- 华为路由器配置NTP服务端和客户端
华为路由器配置NTP服务端和客户端 基础配置 R1: <Huawei>sys-view #进入系统配置模式 Enter system view, return user view with ...
- apollo 配置中心 支持php,apollo配置中心服务端部署
apollo配置中心服务端部署 木某人 • 2020 年 05 月 07 日 Apollo服务端安装部署 apollo-configservice:提供配置获取接口,提供配置更新推送接口,接口服务对象 ...
- SpringBoot(23) 集成socket.io服务端和客户端实现通信
一.前言 websocket和socket.io区别? websocket 一种让客户端和服务器之间能进行双向实时通信的技术 使用时,虽然主流浏览器都已经支持,但仍然可能有不兼容的情况 适合用于cli ...
- Java中利用socket实现简单的服务端与客户端的通信(中级)——实现任意双向通信
本文计划采用socket实现客户端和服务端的任意双向通信,即客户端可以随时给服务端发消息,服务端也可以随时给客户端发消息,最终结果就是一个类似与QQ的聊天软件的功能. 以下代码可以直接拷贝到Eclip ...
- Java中利用socket实现简单的服务端与客户端的通信(基础级)
在上一篇文章中,简单的介绍了java中入门级的socket编程,简单的实现了客户端像服务器端发送数据,服务器端将数据接收并显示在控制台,没有涉及多线程.上一篇文章的链接:Java中利用socket实现 ...
- 使用WebSocket实现服务端和客户端的通信
开发中经常会有这样的使用场景.如某个用户在一个数据上做了xx操作, 与该数据相关的用户在线上的话,需要实时接收到一条信息. 这种可以使用WebSocket来实现. 另外,对于消息,可以定义一个类进行固 ...
最新文章
- mybatis映射器${}和#{}的区别
- javascript等待异步线程完成_前端:什么是单线程,同步,异步?彻底弄懂 JavaScript 执行机制...
- Linux cpuidle framework
- LeetCode 1700. 无法吃午餐的学生数量(队列模拟 / 不模拟)
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示
- Qt 该文件不能在当前页码(936)中表示字符
- 《Python算法教程》——2.4 请提防黑盒子
- phpstudy探针文件
- 【第十届泰迪杯B题电力负荷预测代码】
- 线性代数之行列式(1) ——行列式的定义以及二阶行列式
- NYOJ 62 笨小熊
- Python3使用代理爬取某网文献摘要(完整源码)
- 【javascript】实现模板生成大量数据
- ale.js 对比其他框架
- 在Ubuntu中出现权限不够和找不到文件的解决方法
- 计算机视觉的顶会顶刊
- Java 读取word文件的页数
- 数据仓库 python_python新手如何通过即时转换彻底改变收藏的数据仓库
- dll和exe的区别
- 深度学习装机、系统、环境配置指南--预算15000