当前位置: 首页 > 知识库问答 >
问题:

在raspbarry pi3上使用react native ble manager和nodejs bleno时出现问题

牧熙云
2023-03-14

我需要通过蓝牙将手机连接到Raspberry,获取可用wifi列表,在手机上选择一个,将其发送到Raspberry并连接到选定的网络。

我为react native选择了“react native ble manager”,为raspberry选择了bleno。

在用我的手机连接到Raspberry后,我正试图成为一名污点管理者。已读,但响应的readData为空字符串

树莓的特性:

onReadRequest(offset, callback) => {
    callback(Characteristic.RESULT_SUCCESS, new Buffer('Hello'));
  });
},

React Native:

BleManager.read(peripheralInfo.id, '12AB', '34CD')
            .then((readData) => {
                // Success code
                console.log('Read:', readData);
            })

你知道我做错了什么吗?我应该做些什么来将我的信息从移动应用发送到raspberry

共有1个答案

蔡鹏程
2023-03-14

在BLE中一次发送的字符数不能超过20个。所以,如果你有一个大字符串,那么数据必须以20字节的数据块发送。这种分块已经在react原生ble manager中实现。所以,如果您的字符串超过20个字符,那么您将在periferal中收到多个onWriteRequest回调。你必须正确处理回叫。

 类似资料:
  • 我们目前正在为nodejs使用“ioredis”适配器。我们的一些逻辑是调用无集群的redis,我们希望使用向“副本”发送命令以减少来自主节点的负载的“规模读取”属性来扩展我们的调用。 问题是,我们使用并希望扩展的最常用命令是“zrevrange”,它只是不调用副本。 ioredis版本:2.5.0,我们使用的redis在AWS ElastiCache引擎版本:3.2.4

  • 问题内容: 目前,我正在安装psycopg2以便在Eclipse中使用python工作。 我发现很多问题: 第一个问题不起作用,并显示以下消息 错误:找不到pg_config可执行文件。 固定于: 当我在项目中导入psycopg2时,我会观察: ImportError:dlopen(/Library/Frameworks/Python.framework/Versions/3.4/lib/pyth

  • 我这里有个奇怪的错误: 我正在开发一个GAE应用程序来读取一些Twitter数据,在阅读了大量文档后,我让它在我的测试服务器上工作(在我的pc上运行),但在real(我的appspot域)上部署和测试后,它显示以下消息: 401:身份验证凭据(https://dev.twitter.com/pages/auth)失踪或失踪 我尝试重新创建我的OAuthAppToken和OAuthAppTokenS

  • 在Firefox 51.0.1上使用Selenium 3.0.1打开Firefox浏览器的URL时,我遇到了问题 环境: 我收到以下例外: 组织。openqa。硒。火狐。NotConnectedException:45000毫秒后无法连接到端口7055上的主机127.0.0.1。Firefox控制台输出:“错误。还附加了快照。”。 这是我的代码: 非常感谢。

  • 问题内容: 我正在尝试使用JavaScript计算两次之间的差异。这只是基本的数学运算,但是在使用and 时,我似乎对此有一些疑问。 如果您想知道为什么要将功能应用于日期,那是因为我使用本地存储在客户端存储一些数据,并在客户端再次访问我的网站时使用它(这种方式比发出更多请求要快)到服务器)。该数据通常会不时更新一次(我是通过另一个网站的API获取数据),因此我设置了一个变量,并将其与其他数据一起存

  • 问题内容: 我有一个返回定义为的方法: 我不清楚此方法的实际实现,但是当我尝试这样做时: 我收到以下编译时错误消息: Map类型的put(String,capture#9-of?)方法不适用于参数(String,String) 问题是什么?是什么类型的吗? 提前致谢。 问题答案: 通配符的意思是“值类型参数可以是任何东西”- 并不 意味着“您可以像使用任何想要的东西一样使用它”。换句话说,a 作为