Options
All
  • Public
  • Public/Protected
  • All
Menu

Class ObnizBLE<EventTypes>

Use a obniz device as a BLE device. Peripheral and Central mode are supported

Type parameters

  • EventTypes: string

Hierarchy

Index

Constructors

constructor

Properties

Obniz

Obniz: Obniz

obniz to be used

characteristic

characteristic: typeof BleCharacteristic

descriptor

descriptor: typeof BleDescriptor

Optional extendedAdvertisement

extendedAdvertisement: BleExtendedAdvertisement

hci

Optional onUpdatePhy

onUpdatePhy: undefined | ((txPhy: "1m" | "2m" | "coded", rxPhy: "1m" | "2m" | "coded", handler?: undefined | number) => void)

This is a callback function used when an external device gets connected or disconnected.

await obniz.ble.initWait();
obniz.ble.onUpdatePhy = ((txPhy, rxPhy) => {
   console.log("txPhy "+txPhy+" rxPhy "+rxPhy);
});

peripheral

peripheral: BlePeripheral

scan

scan: BleScan

service

service: typeof BleService

timeout

timeout: number = 30 * 1000

Rsponse waiting timeout in milliseconds

Static prefixed

prefixed: string | boolean

Accessors

isInitialized

  • get isInitialized(): boolean
  • Initialized status.

    // Javascript Example
    obniz.ble.isInitialized; // => false
    await obniz.ble.initWait();
    obniz.ble.isInitialized; // => true

    Returns boolean

Methods

addListener

  • addListener(event: EventTypes, fn: ListenerFn, context?: any): this

debugHandler

  • debugHandler(text: string): void
  • Parameters

    • text: string

    Returns void

directConnect

  • Connect to peripheral without scanning. Returns a peripheral instance, but the advertisement information such as localName is null because it has not been scanned.

    // Javascript Example
    
    await obniz.ble.initWait();
    var peripheral = obniz.ble.directConnect("e4b9efb29218","random");
    peripheral.onconnect = ()=>{
      console.log("connected");
    }
    deprecated

    replaced by {@link #directConnectWait()}

    Parameters

    Returns null | BleRemotePeripheral

directConnectWait

  • Connect to peripheral without scanning, and wait to finish connecting.

    It throws when connection establish failed. Returns a peripheral instance, but the advertisement information such as localName is null because it has not been scanned.

    // Javascript Example
    await obniz.ble.initWait();
    try {
      var peripheral = await obniz.ble.directConnectWait("e4b9efb29218","random");
      console.log("connected");
    } catch(e) {
      console.log("can't connect");
    }

    Parameters

    Returns Promise<BleRemotePeripheral>

emit

  • emit(event: EventTypes, ...args: Array<any>): boolean
  • Calls each of the listeners registered for a given event.

    Parameters

    • event: EventTypes
    • Rest ...args: Array<any>

    Returns boolean

eventNames

  • eventNames(): Array<EventTypes>
  • Return an array listing the events for which the emitter has registered listeners.

    Returns Array<EventTypes>

fastValidate

  • fastValidate(commandUri: any, json: any): boolean
  • Parameters

    • commandUri: any
    • json: any

    Returns boolean

getConnectedPeripherals

  • Return connected peripherals.

    // Javascript Example
    await obniz.ble.initWait();
    let target = {
      localName: "Blank"
    };
    var peripheral = await obniz.ble.scan.startOneWait(target);
    if(peripheral) {
      try {
        await peripheral.connectWait();
      } catch(e) {
        console.error(e);
      }
    }
    console.log(obniz.ble.getConnectedPeripherals());

    Returns BleRemotePeripheral[]

    connected peripherals

initWait

  • Initialize BLE module. You need call this first everything before. This throws if device is not supported device.

    esp32 C3 or esp32 S3 Put true in the argument when not using the BLE5.0 extended advertise

    // Javascript Example
    await obniz.ble.initWait();

    Parameters

    Returns Promise<void>

listenerCount

  • listenerCount(event: EventTypes): number
  • Return the number of listeners listening to a given event.

    Parameters

    • event: EventTypes

    Returns number

listeners

  • Return the listeners registered for a given event.

    Parameters

    • event: EventTypes

    Returns Array<ListenerFn>

notifyFromObniz

  • notifyFromObniz(json: any): void

off

  • off(event: EventTypes, fn?: EventEmitter.ListenerFn, context?: any, once?: undefined | false | true): this
  • Parameters

    • event: EventTypes
    • Optional fn: EventEmitter.ListenerFn
    • Optional context: any
    • Optional once: undefined | false | true

    Returns this

on

  • on(event: EventTypes, fn: ListenerFn, context?: any): this
  • Add a listener for a given event.

    Parameters

    • event: EventTypes
    • fn: ListenerFn
    • Optional context: any

    Returns this

once

  • once(event: EventTypes, fn: ListenerFn, context?: any): this
  • Add a one-time listener for a given event.

    Parameters

    • event: EventTypes
    • fn: ListenerFn
    • Optional context: any

    Returns this

removeAllListeners

removeListener

  • removeListener(event: EventTypes, fn?: EventEmitter.ListenerFn, context?: any, once?: undefined | false | true): this
  • Remove the listeners of a given event.

    Parameters

    • event: EventTypes
    • Optional fn: EventEmitter.ListenerFn
    • Optional context: any
    • Optional once: undefined | false | true

    Returns this

resetWait

  • resetWait(): Promise<void>
  • Reset Target Device and current SDK status without rebooting. If error occured while reset, then target device will reboot.

    // Javascript Example
    await obniz.ble.resetWait();

    Returns Promise<void>

schemaBasePath

  • schemaBasePath(): string

setDefaultPhyWait

  • setDefaultPhyWait(usePhy1m: boolean, usePhy2m: boolean, usePhyCoded: boolean): Promise<void>
  • ESP32 C3 or ESP32 S3 only

    Sets the PHY to use by default

    // Javascript Example
    await obniz.ble.setDefaultPhyWait(false,false,true);//coded only

    Parameters

    • usePhy1m: boolean
    • usePhy2m: boolean
    • usePhyCoded: boolean

    Returns Promise<void>

validate

  • validate(commandUri: any, json: any): WSSchema.MultiResult
  • Parameters

    • commandUri: any
    • json: any

    Returns WSSchema.MultiResult

Generated using TypeDoc