【问题标题】:what does the returned value of BLE thermometer mean?BLE温度计的返回值是什么意思?
【发布时间】:2021-02-02 07:46:21
【问题描述】:

我正在使用小米 LYWSD03MMC,我通过 BLE 特性获得了此设备的温度,它显示:21 0a 17 7e 0b,但是我知道这是十六进制值但不幸的是我无法理解什么意思。我只知道17这个数字,就是湿度,是十六进制,当我把它转换成十进制时,它返回23。

【问题讨论】:

    标签: bluetooth-lowenergy iot temperature xiaomi


    【解决方案1】:

    您正在阅读的特征的 UUID 是什么?

    如果格式为0000xxxx-0000-1000-8000-00805F9B34FB,则应记录在https://www.bluetooth.com/

    您可以在 16-bit UUID Numbers Document 中找到 Characteristic UUID 到名称的映射: https://www.bluetooth.com/specifications/assigned-numbers/

    然后可以使用该名称在GATT Specification Supplement 中查找字段的更详细说明。

    【讨论】:

      【解决方案2】:

      根据来自 github 的 this 脚本,前两个值描述了温度,需要转换为小端。这将导致 0a21 的十六进制值,十进制为 2539。这需要除以 100 才能得到 25.39 度的温度。

      如您所说,第三个值是湿度,最后两个值描述电池电压。转换为小端 (0b7e) 和十进制 (2942),这个值需要除以 1000,得到的电压为 2.942

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-25
      • 2014-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多