noble/bleno

Unable to use GATT server with central role

Open

#326 ouverte le 6 juil. 2017

Voir sur GitHub
 (1 commentaire) (1 réaction) (0 assignés)JavaScript (465 forks)batch import
help wanted

Métriques du dépôt

Stars
 (2 083 stars)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

I'm trying to use noble and bleno together in a single application to allow linux to be in the central role but also be the GATT server. I actually have this working, but had to remove an if statement in bleno. Namely, I had to remove this if:

BlenoBindings.prototype.onLeConnComplete = function(status, handle, role, addressType, address, interval, latency, supervisionTimeout, masterClockAccuracy) {
  // if (role !== 1) {
  //   // not slave, ignore
  //   return;
  // }
  ...
}

from here.

With that if the AclStream never gets set up and bleno never responds to discover services requests (or any other request).

I understand why that check is there, since a connection callback is valid in both the central and peripheral contexts, however, I believe a GATT server is equally valid in both contexts. Any thoughts on this? Would an environment variable be the right approach to skip that check in cases like mine?

Guide contributeur