1、 权限和相关属性这是最基本的啦<uses-featureandroid:name="android.hardware.bluetooth_le"android:required="true"/> <uses-permissionandroid:name="android.permission.BLUETOOTH"/> <uses-permissionandro
转载 2023-08-17 10:53:32
64阅读
小米是这么选的:1) 插电的设备,用WiFi;2) 需要和手机交互的,用BLE;3) 传感器用ZigBee。 WIFI,WIFI是目前应用最广泛的无线通信技术,传输距离在100-300M,速率可达300Mbps,功耗10-50mA。Zigbee,传输距离50-300M,速率250kbps,功耗5mA,最大特点是可自组网,网络节点数最大可达65000个。蓝牙,传输距离2-30M,速率1Mb
BLE 4.2 比 BLE4.1 多了一些新的特性。 Low power IP (IPv6/6LoWPAN) Bluetooth Smart Internet Gateways (GATT) https://www.semiconductorstore.com/blog/2015/BLE 4 2 v
转载 2018-01-29 12:31:00
228阅读
2评论
蓝牙ble的传输速率是指主从机每秒所传输的字节数。既然是传输速率那就涉及到时间和每次所传递包大小的问题。     ble对于数据的传输有一个字节上的限制,默认情况下是20个字节,但并不是不可修改的。默认情况下mtu是23个字节(除去3个字节的标志位剩余为20个字节),主机完全可以通过调用BluetoothGatt#requestMtu(int mtu)来修改每个包所传输的字节数。     同样,b
1.GAP概述GAP 协议层定义了 BLE 设备的发现流程,设备管理和设备连接的建⽴。 BLE GAP 协议层采⽤ API 调⽤和事件 (Event) 返回的设计模式,通过事件返回来获取 API 在协议栈的处理结果。当对端设备主动发起请求时,也是通过事件返回获取对端设备的状态。BLE 设备定义了四类 GAP ⻆⾊:• ⼴播者 (Broadcaster):处于这种⻆⾊的设备通过发送⼴播 (Adver
Bluetoth学习笔记前言    蓝牙技术其实包括BR/EDR、LE以及AMP三种。其中BR是传统的蓝牙技术,也是我们最常用的一种。LE是低功耗模式,是目前流行的模式。三种模式RF都使用2.4GHz ISM(Industrial Scientific Medical) 频段,频率范围是2.400-2.4835 GHz。1、BR/EDR(Basic Rate/Enhanced
前言这段时间参与了一款与蓝牙外设交互的项目, 以前没有涉及过数据传输方面的开发, 踩了不少坑, 同时也学到了很多东西. 此时, 项目也即将进入尾声, 有时间把这些记录一二. 本人才疏学浅, 如有错误,大佬轻喷.BLE4.0开发这方面网上的Demo一大堆, 暂时不做太多的赘述, 只对坑点做一个摘要.需求使然, 要对设备的接近远离有一个比较精确的计算, 使用的方案是对蓝牙的信号强度进行分析. 然而,
文章目录前言一、材料准备二、蓝牙模块初始化三、App开发过程4.1 搜索设备4.2 连接设备4.3 获取服务列表和其特征列表4.4 主动订阅通知4.5 如何接受设备发来的数据4.6 如何发送数据到设备另外,不要把我的博客作为学习标准,我的只是笔记,难有疏忽之处,如果有,请指出来,也欢迎留言哈!前言    工作了三年,职业之路不能偏离方向,当海浪掀起,周围会有
现象: 连上鼠标后,能够出现鼠标图标,并且可以移动一下,然后再怎么移动鼠标都没反应了,在蓝牙的驱动层(btusb.c),加打印信息,发现这个时候即使移动蓝牙鼠标,bulk端点也没有数据上报上来了,但设置界面还可以执行扫描,能够扫描到其他的蓝牙设备,说明蓝牙usb驱动包括蓝牙的usb dongle这个时候还能工作,而为什么不上报鼠标数据,很可能
1. 蓝牙绑定   绑定真正来说属于通用访问规范的讨论范畴。绑定指的无非是将密钥及相关身份信息保存到数据库中。如果设备不保存这些值,他们虽然能匹配,但不能绑定。   只要当中某一个设备不保存,重新连接后,只有一个设备拥有LTK,因此加密的启动将会失败。   为了避免这种情况,两个设备在最初配对时就会交换绑定信息,从而能够清楚地知道对方是否保留了该绑定信息。 &nbsp
这是系列文章的第二篇,第一篇 Android BLE开发指南(一)入门基础 主要介绍了BLE开发的一些基础知识。那么接下来的 这篇文章主要讲解BLE中心设备端程序的开发流程,让你的Android设备可以通过 BLE 进行数据的收发。1. 权限配置<uses-permission android:name="android.permission.BLUETOOTH"/> <
1.BLE通信中主要有两对角色:在GAP通信过程中是以Central和Peripheral角色存在的:Peripheral发起广播, Central发起扫描请求。Central收到Peripheral的扫描回复后建立连接。在GATT通信过程中是以Server和Client角色存在的:serve端用于提供数据,Client端用于使用Server提供的数据并完成处理。*在GAP中的Central和Pe
转载 9月前
112阅读
TI的蓝牙4.0BLE协议栈为BLE-CC254x-1.4.0,即现在的版本是1.4版本的。可以从TI官方下载或从附件中下载安装,默认是安装在C盘中。因为上一篇博文提到进行空中固件升级,当时没有安装在C盘下,死活生成不了bin文件,改在C盘下生成了。所以,我个人建议,还是默认安装吧,也占不了多大空间。TI蓝牙4.0BLE协议栈的结构如下图所示:由控制器和主机两部分构成,分层的思想很明晰。控制器包括
这篇博客主要讲解AndroidBLE蓝牙4.0的基本概念,以及基础用法。 BLE 即 Bluetooth Low Energy,蓝牙低功耗技术,是蓝牙4.0引入的新技术,在安卓4.3(API 18)以上为BLE的核心功能提供平台支持和API。与传统的蓝牙相比,BLE更显著的特点是低功耗,所以现在越来越多的智能设备使用了BLE,比如满大街的智能手环,还有体重秤、血压计、心电计等很多BLE设备都使用
转载 2023-08-20 20:51:42
379阅读
一、前言在上一篇文章Android 蓝牙BLE开发从官方源码demo开始(一)我们已经看了官方的demo,知道了怎么开始配置Android蓝牙4.0,并且也成功地进行扫描并获取回调的蓝牙设备参数,然后对参数进行处理展示,其中第一个参数device,表示一个远程蓝牙设备,里面有它独有的蓝牙地址Address和Name;我们要拿到这个设备Address进行蓝牙连接和读写操作。谷歌给我们提供了官方源码d
一.BLE和BT区别其实我知道许多程序员不太喜欢阅读除了代码以外的文档,因为有时这些过于冗长的文档对编程并没有更多的好处,有了协议,接口,demo差不多很多人就能写出很好质量的代码了。但其实更深入的编程是少了阅读的,阅读文档可以解决很多编程中遇到的困难,比如在大数据大流量情况下,很多正常的程序会表现...
转载 2015-07-25 10:14:00
254阅读
2评论
本文旨在提供一个方便没接触过Android上低功耗蓝牙(Bluetooth Low Energy)的同学快速上手使用的简易教程,因此对其中的一些细节不做过分深入的探讨,此外,为了让没有Ble设备的同学也能模拟与设备的交互过程,本文还提供了中央设备(central)和外围设备(peripheral)的示例代码,只需2部手机大家就可以愉快的“左右互搏”了。准备工作角色上面我们提到了中央设备(centr
目录1. 功能部分1.1 BLE简介1.2. 详细流程1.3 几个注意点:2. 界面部分3. 遇到的坑:4. 推荐学习资料即将迈入新阶段,贼开心,总结下。如果有误,麻烦指出。先看下最终效果(图中的“刷新”只是方便测试,表明从硬件接收到了新的数据包而已):1. 功能部分1.1 BLE简介核心功能使用的是Android官方提供的BLE SDK。在BLE协议中,有两个角色——周边和中央。周边用来提供数据
转载 2023-07-09 15:20:03
115阅读
Mesh设计出来的目的主要是为了解决什么呢?在我看来比较适合的场景为数据量小,对可靠性或者实时性要求不高,但规模较大的场景。 我们知道BLE 5.0出现的多连接理论上可以支持一个蓝牙设备连接无限制个设备,但实际上由于芯片资源限制,一个设备能连接10个设备就算极限了,而且对于成本来说极不划算。在这种情况下,mesh的优势之一就在于不需要建立连接,因此发送消息的步骤相对来说要少一点,可以试着比较一下广
为什么会在RocketMQ系列里面参杂一篇ByteBuffer的文章呢?因为RocketMQ存储消息,是存储在文件中的,而且刚好使用的是ByteBuffer。这个属于Java NIO的内容,平时用到的非常少,如果像我一样没有相关的知识做铺垫,强行看RocketMQ消息存储相关的代码会比较头疼。为了减少学习难度,这里很有必要先介绍一下ByteBuffer相关的知识。Buffer就是缓冲区的意思。如果
  • 1
  • 2
  • 3
  • 4
  • 5