Hi,
my setup
Central is a nodejs app using pc-ble-driver-js
Our peripheral is nrf52840
I read the examples and they help me a lot so thanks!
Currently when I try to read (in central side)characteristics value (total of 19 characteristics ) the total time is 2.5 secs ..which is a lot (since in your physical layer you mention that speed is 1Mbs). const services = await bleManager.getServices(this.device.instanceId);
for (const service of services) {
const characteristics = await bleManager.getCharacteristicsByService(service.instanceId);
for (const characteristic of characteristics) {
if (readableCharacteristic.includes(characteristic.uuid as characteristicEnum)) {
if (additionalChars.includes(characteristic.uuid as characteristicEnum) ||
connectionChars.includes(characteristic.uuid as characteristicEnum)) {
const value = await bleManager.getCharacteristicValueBy(characteristic.instanceId);
this.characteristics[characteristic.uuid as characteristicEnum] = { value: value,id: characteristic.instanceId};
} else {
this.characteristics[characteristic.uuid as characteristicEnum] = { value: null,id: characteristic.instanceId};
}
} else {
this.characteristics[characteristic.uuid as characteristicEnum] = { value: null,id: characteristic.instanceId};
}
}
}
public async getCharacteristicValueBy(CharacteristicInstanceId) : Promise<number[]>{
return new Promise((resolve, reject)=> {
this.ble.adapter.readCharacteristicValue(CharacteristicInstanceId, (err, value) => {
if (err) {
reject(Error(`failed to read value ${CharacteristicInstanceId}`));
} else {
resolve(value)
}
});
});
}
Is there a way to make it faster ?
Thanks,
Ben