0
[IRC会話の言い訳]Web Bluetoothが複数の `characteristicvaluechanged`イベントを送信する方法を教えてください。
ardunioとDHT11センサーとHM10 Bluetoothセンサーによる温度センサーの構築を試みています。 Web Bluetoothで温度値を取得しても、characteristicvaluechanged
イベントが発生していないようです。初期値のみを与える。
document.querySelector('button')
.addEventListener('click', connectBluetooth)
function connectBluetooth() {
navigator.bluetooth
.requestDevice({
optionalServices: [ 0xffe0 ],
acceptAllDevices: true
})
.then(device => device.gatt.connect())
.then(server => server.getPrimaryService(0xffe0))
.then(service => service.getCharacteristic(0xffe1))
.then(characteristic => {
characteristic.addEventListener('characteristicvaluechanged',
handleValueChanged)
return characteristic.readValue()
})
.catch(err => console.error(err))
}
function handleValueChanged(event) {
console.log('Handling...')
let value = event.target.value.getUint8(0)
console.log(`The value is: ${value}`)
}