BLEデバイスに接続した場合に20秒ほど接続に時間がかかる



  • https://obniz.com/ja/doc/reference/common/ble/central-read-write

    上記のソースコードを利用して、omron環境センサー(2JCIE-BL01)に接続したところ、
    接続処理に毎度20秒ほどかかってしまうようなのですが
    これはこのようなものなのでしょうか。

    ■使用したソースコード

    // Javascript Full Example
    
    var obniz = new Obniz("OBNIZ_ID_HERE");
    obniz.onconnect = async function () {
      await obniz.ble.initWait();
      var peripheral = await obniz.ble.scan.startOneWait({ localName: "Env" });
      if(peripheral) {
        console.log("found");
        try{
          await peripheral.connectWait();
          console.log("connected");
          var service = peripheral.getService("0C4C3000-7700-46F4-AA96D5E974E32A54");
          var char = service.getCharacteristic("0C4C3001-7700-46F4-AA96D5E974E32A54");
          var data = await char.readWait();
          console.log(data); // => ex [0x02, 0xFF]; 
        }catch(e){
          console.log("connection failed");
        }
      }
    }
    

    ■ログ
    68af01d8-f100-4792-9912-42f88ddaf59f-image.png



  • これよりも接続にかかる時間を短くできる方法があればご教示いただければ幸いです。



  • @GDAS さん

    BLEの通信速度は環境にも依存するため、実行速度に関して確実なことは言えませんが...

    2JCIEの場合、
    ・advertisement頻度を高めてデバイスを見つけやすくする
    ・connectしないでadvertisementモードで使う
    などで実行速度の向上は可能かと思います。


Log in to reply
 

SUGGESTED TOPICS

  • 2
  • 7
  • 2
  • 2
  • 3
  • 2