obniz Parts Library

EMDCB

GitHub
EMDCB
Usable Devices :
obniz_board
m5stickc
obnizble
esp32
esp32gateway
m5stackbasic
ak-030
obnizble_lte
obniz_plc

EMDCB

EMDCBはBLEを使用した人感センサおよび照度センサです。
天井等に取り付け、室内の光量、人の出入りを測定できます。

isDevice(peripheral)

BLEでスキャンしたperipheralがEMDCBかどうかを判定します。

// Javascript Example
await obniz.ble.initWait();
const EMDCB = Obniz.getPartsClass("EMDCB");
obniz.ble.scan.onfind = async (peripheral) => {
  if (EMDCB.isDevice(peripheral)) {
    console.log("device find");
    console.log(peripheral);
  }
};
await obniz.ble.scan.startWait();

getData()

アドバタイズ情報を解析し、データを取得します。
Sensor DataとCommissioning Dataの2種類のアドバタイズが存在し、返すデータが異なります。
(データフォーマット参照)

// Javascript Example
await obniz.ble.initWait();
const EMDCB = Obniz.getPartsClass("EMDCB");
obniz.ble.scan.onfind = async (peripheral) => {
  if (EMDCB.isDevice(peripheral)) {
    const result = EMDCB.getData(peripheral);
    console.log(result)
  }
};
await obniz.ble.scan.startWait();

データフォーマット

Sensor Data

{
  address: string;
  energy_level?: number; //電池残量(%)
  light_level_solar_cell?: number; //太陽電池の光量(lx)
  light_level_sensor?: number; //センサーの光量(lx)
  occupancy_status?: boolean; //人がいるかどうか
}

Commissioning Data

{
  address: string;
  commissioning_info?: number[]; //AES key & device address(22byte)
}

Supported from: obniz.js 3.26.0