亲爱的对话框,
这是Vishnu,我们早在7月份就购买了物联网传感器加密狗模块。最初,我们尝试通过提供的IoTsensor应用程序将Senor Dongle与我们的智能手机连接,我们能够看到原始数据的3D运动和图表。过了一段时间,我们认为我们想要读取每个传感器的原始数据值,呈现在传感器狗模块。为此,我们使用一个外部模块通过蓝牙连接读取原始传感器数据。我们成功地连接到外部模块,并能够在外部模块的调试窗口中显示一些数据。
32字节的数据在我的调试窗口显示如下:02 01 06 03 02 a7 2e 0b 09 49 6f 54 2d 44 4b 2d 53 46 4c 06 ff d2 00 00 d4 d9 00 00 00 000 000 000 000 000 000 000 000 000 000 000 000
问题是我要如何确保上面显示的数据是连接的Sensor Dongle的数据?还有一件事当我移动时数据不会改变,旋转传感器适配器模块。
在任何手册中是否有明确定义物联网传感器狗的原始数据值。
我所遵循的方法是正确的,或通过任何其他方法,我可以读取原始传感器数据?请说明是否存在其他方法。
谢谢你!
毗瑟奴
设备:
嗨vishnuatdialog,
我不太明白您所描述的外部模块,但您可以连接到一个通用BLE应用程序,并获得设备通过蓝牙发送的原始值(您必须触发物联网传感器应用程序发送的适当命令)。这已经在一篇旧的文章(第7点)中解释了如何去做。
https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bl..。
关于印刷的价值观UART和能够意识到发送的值通过BLE接口是相同的,印在UART的一面,没有默认functionallity允许你这么做,但是你可以添加一些代码,以便打印值发送祝福,例如,您可以在user_add_sensor_report_acc_gyro_mag()函数中放置一些打印指令,以便打印推送到BLE接口的数据。例如,通过放置以下代码(DBG_MSG3("Acc data x:%i, y:%i, z:%i \n\r", sensor_data.accel_xyz.)x, sensor_data.accel_xyz。在pdrc->val_z = sensor_data.accel_xyz.z;指令将打印推入BLE报告中的值。
由于MT_dialog
亲爱的对话框,
正如你在我之前的文章中提到的第7点,我将IoT-DK-SFL传感器加密狗模块连接到一个通用应用程序(nrfconnect)。通过使用控制点WR命令我编写了0x01,之后我可以看到所有传感器十六进制格式的实时特征值变化。我附上的图片是加速度计(acc_hexdecimal_data)和温度传感器(Temp_hexdecimal_data)的日志信息,用高亮显示。如果我想把这些十六进制值转换成原始数据,例如:2g表示acc, 10℃表示temp。
这种转变应该如何发生?
我的第二个问题是,在将IoT-DK-SFL传感器狗模块连接到nrfconnect app之前,nrfconnect会显示附近的广告设备,如附件中的图片(advertising_devices)。当我点击IoT-DK-SFL它显示所有设备信息。在那是什么意思的RAW和不完整的服务UUID列表,我在图片中突出显示(广告ng_devices)?
在RAW上录制后,它显示了我在这篇文章的第一条评论中提到的32字节的数据。我也附上了这张RAW数据的图片,图片名称为“RAW 32字节数据”,请查收。
现在来开始这篇文章,我提到的是我通过一个服务器-客户端方式的蓝牙连接IoT-DK-SFL模块到外部蓝牙模块。在我外部蓝牙模块的调试窗口中,我可以看到IoT-DK-SFL传感器软件狗模块的名称、RSSI值、蓝牙地址和32字节的RAW数据。但是我不能看到我们的传感器的服务和特征UUID和价值。
附件是所有图片的zip格式。
谢谢你!
毗瑟奴
嗨vishnuatdialog,
这取决于您在连接的另一端(与物联网连接的客户端)使用的应用程序,您获得的值是十六进制小端序格式,也头适用于价值的应用程序发送为了标签数据发送的外围设备(你可以找到数据的结构和通知包中的值嗯- b - 063 DA14583物联网传感器开发工具包)。所以让我们举个例子,你从acc_hexadecimal_data.png得到的第一个数据,第一个通知是(0x)01-02-03- 1f -03 ca - ff -30-40,如果你解码你将得到:
至于将这些数据解释为加速度、温度和角速度,这取决于您对每个传感器的设置,传感器的数据表显示了适当的转换,以获得您需要的数据。
关于你在设备上获得的值,我认为RAW是应用程序的一个功能,如果你按它将表明该设备的广告数据,而没有应用程序解析广告字符串的标签,例如,标签0x02意味着以下数据是设备支持的16位UUID服务的列表,但也有其他服务没有在这个列表中提到。请检查BLE规范中的广告旗帜。
我不确定我是否得到了最后一个问题,我认为你连接你的设备到一个普通的蓝牙客户端加密狗,所以你可以连接到设备,但你不能看到服务和数据,为了能够看到外围设备的服务,客户端应该启动一个发现程序,以“发现”外围设备的特征,在客户端设备知道设备的可用特性后,它应该发送一些命令,以便物联网传感器狗开始向客户端报告(就像你对通用应用程序的手机所做的那样)。
由于MT_dialog
你好,毗瑟奴,
你能告诉我们如何使用nrfconnect app获取日志文件吗?
如果你能提供步骤,我们就能拿到日志。
你试过采集传感器融合数据吗还是只采集原始数据?
谢谢,
迪夫
你好迪应,
首先,你必须在你的安卓手机上安装nRF connect, nRF Logger应用程序。
现在连接你的物联网传感器电子狗nrfconnect应用。然后利用控制点或者说是命令写0 x01 nRF连接应用程序,这个你有触发传感器发送原始数据的电子狗nRF连接应用。现在去个人UUID的传感器和阅读原始传感器数据的向下箭头。原始传感器数据是十六进制格式,它正在迅速变化。在这之后,当断开连接的适配器从nRF连接应用程序那里,你会在屏幕上得到一个消息,保存日志,点击yes。现在日志数据保存在nRF Logger应用程序。这就是你可以看到你的日志信息。
不,我还没试着捕捉传感器融合数据。
谢谢你!
D.Vishnu