Node's Pocket Monsters

    @abandonware/eddystone-beacon-scanner

    3.0.1-2 • Public • Published

    node-eddystone-beacon-scanner

    Scan for Eddystone beacons using Node.js

    Uses noble for BLE peripheral scanning, then attempts to parse discovered peripherals using the Eddystone Protocol Specification.

    Setup

    npm install eddystone-beacon-scanner

    Examples

    See examples folder.

    Usage

    var EddystoneBeaconScanner = require('eddystone-beacon-scanner');

    Register event handlers

    Found

    Triggered when a beacon is first found.

    EddystoneBeaconScanner.on('found', function(beacon) {
      // ...
    });

    Updated

    Triggered when a beacon advertisement detected.

    EddystoneBeaconScanner.on('updated', function(beacon) {
      // ...
    });

    Lost

    Triggered when a beacon has not been detected for 5 seconds.

    EddystoneBeaconScanner.on('lost', function(beacon) {
      // ...
    });

    The beacon object will have the following properties depending on the frame type:

    URL
    • type - Eddystone type
    • txPower - Measured received power at 0 m in dBm
    • url - (expanded) URL the beacon is broadcasting
    • tlm - TLM data, only present when interleaved broadcasts are used by the beacon
    • rssi - RSSI of discovered beacon
    • distance - Approximate distance from beacon
    UID
    • type - Eddystone type
    • txPower - Measured received power at 0 m in dBm
    • namespace - 10-byte ID Namespace
    • instance - 6-byte ID Instance
    • tlm - TLM data, only present when interleaved broadcasts are used by the beacon
    • rssi - RSSI of discovered beacon
    • distance - Approximate distance from beacon
    TLM
    • tlm
      • version - TLM version
      • vbatt - Battery voltage
      • temp - Temperature
      • advCnt - Advertising PDU count
      • secCnt - Time since power-on or reboot
    • rssi - RSSI of discovered beacon
    • distance - Approximate distance from beacon

    Start scanning

    Start scanning for Eddystone beacons, you can specify whether to allow duplicates (default is false).

    You can also specify the grace period (time to wait before declaring the beacon as lost). Default is 5000 ms.

    EddystoneBeaconScanner.startScanning(allowDuplicates, gracePeriod);

    Note: the lost event will only be triggered when allowDuplicates is set to true.

    Stop scanning

    Stop scanning for Eddystone beacons.

    EddystoneBeaconScanner.stopScanning();

    Install

    npm i @abandonware/eddystone-beacon-scanner

    DownloadsWeekly Downloads

    6

    Version

    3.0.1-2

    License

    MIT

    Unpacked Size

    48.8 kB

    Total Files

    14

    Last publish

    Collaborators

    • rzr
    • rzrfreefr