亲爱的对话框,
这是Vishnu,我们在7月份购买了IoT传感器加密狗模块。最初,我们试图通过提供iotsensor应用程序将此Senor Dongle连接到我们的智能手机,我们能够看到RAW数据的3D移动和图形。过了一会儿,我们认为我们想读取每个传感器的原始数据值,该传感器在传感器加密狗模块中呈现。为此,我们使用外部模块通过蓝牙连接读取原始传感器数据。我们成功连接到外部模块,并能够在外部模块的调试窗口上显示一些数据。
32字节的数据在我的调试窗口显示AS:02 01 06 03 02 A7 2E 0B 09 49 6F 54 2D 44 4B 2D 53 46 4C 06 FF D2 00 00 00 00 00 00
问题是我应该如何确保上面显示的数据是连接的传感器加密狗的数据?当我移动时,此数据不会更改,旋转传感器加密狗模块。
在任何手册中有任何具体定义IOT传感器加密狗的原始数据值。
我遵循的方式是正确的或通过任何其他方法,我可以阅读原始传感器数据?如果存在任何其他方法,请提及。
谢谢你。
Vishnu.
设备:
嗨Vishnuatdialog,
我没有完全获取要描述的外部模块,但您可以连接到通用BLE应用程序并获取设备发送到蓝牙的原始值(您必须触发IoT传感器应用程序发送的相应命令)。这已经解释说明如何在较旧的帖子中进行,在点(7)中。
https://support.dialog-semicondiondiondum/forums/post/dialog-smartbond-bl ...
关于UART上的值的打印并能够意识到通过BLE界面发送的值与UART侧的打印相同,没有默认的功能,允许您这样做,但是您可以添加一些代码才能打印通过BLE发送的值,例如,您可以在user_add_sensor_report_acc_gyro_mag()函数中放置一些打印指令,以便打印推出朝向BLE界面的数据。例如,通过放置以下代码(DBG_MSG3(“ACC数据x:%i,Y:%i,z:%i \ n \ r”,sensor_data.accel_xyz.x,sensor_data.accel_xyz.y,sensor_data.accel_xyz.z);)在pdrc-> val_z = sensor_data.accel_xyz.z下方右侧;指令将打印在BLE报告中推送的值。
谢谢mt_dialog.
亲爱的对话框,
正如您在我的旧版中的第NO:7中提到的那样,我将IoT-DK-SFL传感器加密狗模块连接到通用应用程序(NRFConnect)。通过使用Control Point WR命令,我写了0x01,之后我能够看到所有传感器以十六进制格式的实时特征值。我附上的图片在这里突出显示了加速度计(Acc_hexdecimal_data)和温度传感器(Temp_hexdecimal_data)的日志信息。如果我想将这些十六进制值转换为原始数据:2G for ACC,10°C TEMP。
这种转换应该如何发生?
在将IoT-DK-SFL传感器加密狗模块连接到NRFConnect应用程序之前,我的第二个问题是,NRFConnect显示附近的广告设备如附图(advertising_devices)。当我点击IOT-DK-SFL时,它显示所有设备信息。在那些通过RAW和不完整的服务列表UUID列表是什么意思,我在图片中突出显示了哪些(广告语,_devices)?
在RAW录制后,它会显示我在这篇文章的第一次评论中提到的32字节的数据。我还在附上这个原始数据的图片,请用图片名称“原始32字节数据”找到它。
现在来开始这篇文章,我提到的是我通过Server-Client方式通过蓝牙连接将IoT-DK-SFL模块连接到外部蓝牙模块。在我的外部蓝牙模块的调试窗口中,我能够查看IoT-DK-SFL传感器加密狗模块的名称,RSSI值,蓝牙地址和32字节原始数据。但我无法看到我们传感器的服务和特征UUID和价值观。
附件由ZIP格式的所有图片组成。
谢谢你。
Vishnu.
嗨Vishnuatdialog,
这取决于您在连接的另一端使用的应用程序(与IOT连接的客户端),您获得的值是十六进制的小endian格式,并且应用程序也将标题应用于该值为了标记从外设发送到设备的数据(您能够在UM-B-063DA14583 IOT传感器开发套件中找到数据的结构和通知包中的值)。因此,让我们掌握从Acc_hexadecimal_data.png中获得的第一个数据,第一个通知是(0x)01-02-03-1F-03-CA-FF-30-40,如果您解码您将获得:
关于将这些数据解释为加速,温度和角速度,这取决于每个传感器上的设置,传感器指示的数据表指示正确的转换,以便获得所需的内容。
关于您在设备上获取的值,我想原始是应用程序的函数,如果按下它将指示设备的广告数据,而无需应用程序解析广告字符串的标记,例如标签0x02意味着以下数据是设备支持的16位UUID服务的列表,但此列表中未提及的其他服务也是如此。请检查BLE规格中的广告标志。
我不确定我得到最后一个问题,我想你将你的设备连接到通用蓝牙客户端加密狗,所以你能够连接到设备,但你不能看到服务和数据,顺序井为了能够看到外围设备的服务,客户端应该发起发现过程,以便“发现”外围设备的特征,在客户端设备知道设备的可用特征之后,它应该按顺序发送一些命令对于IoT传感器加密狗开始向客户报告(与您使用手机与通用应用程序完全一样)。
谢谢mt_dialog.
你好Vishnu,
您能否请告诉我们如何使用NRFConnect应用程序获取日志文件?
如果您可以为我们提供一个步骤,我们可以获得日志。
您是否尝试捕获传感器融合数据,或者您只是捕获原始数据?
谢谢,
divya.
嗨divya panchal,
首先,您必须在Android Mobile上安装NRF Connect,NRF Logger应用程序。
现在将您的IoT传感器加密狗连接到NRFConnect应用程序。然后通过使用NRF Connect应用程序中的Control Point WR命令写入0x01,通过此,您已触发传感器加密狗,用于将原始数据发送到NRF Connect应用程序。现在转到单独的传感器UUID,并将其向下箭头读取原始传感器数据。原始传感器数据采用十六进制格式,它正在快速变化。在此之后,当从NRF Connect应用程序断开连接加密器时,您将在屏幕上收到一条消息以保存日志,单击“是”。现在,在NRF Logger应用程序中保存的日志数据。就在那里,您可以看到您的日志信息。
不,我没有尝试捕获传感器融合数据。
谢谢
D.Vishnu.