我面临一些问题与网络蓝牙API。问题是我有一个温湿度记录器蓝牙设备,通过传感器记录温湿度数据。我想通过在javascript中使用web蓝牙来获取我的web应用程序中的数据。那么我该如何完成这个任务呢?
我尝试过网络蓝牙,但我只知道设备名称和电池级别,但我无法获取温湿度数据。
发布于 2022-01-19 07:32:46
如果蓝牙设备使用关贸总协定环境感知服务(关贸总协定指定号码0x181A),您应该能够读取并得到有关关贸总协定的温度(0x2A6E)和湿度(0x2A6F)特性的通知。
以下是一些应该有效的代码。
const serviceUuid = 0x181A;
// Requesting Bluetooth Device assuming it advertises
// the GATT Environmental Sensing Service...
const device = await navigator.bluetooth.requestDevice({
filters: [{services: [serviceUuid]}]});
// Connecting to GATT Server...
const server = await device.gatt.connect();
// Getting Environmental Sensing Service...
const service = await server.getPrimaryService(serviceUuid);
// Getting Humidity Characteristic...
const characteristic = await service.getCharacteristic(0x2A6F);
// Reading Humidity...
const value = await characteristic.readValue();
console.log(value);https://stackoverflow.com/questions/70754363
复制相似问题