UNPKG

@workshop2/bno055-imu-node

Version:

Interact with a BNO055 IMU from your Node.js app

50 lines (49 loc) 1.77 kB
import { DeviceAddress, OpMode, PowerLevel, SystemError, SystemStatus } from './constants'; import { CalibrationStatusMap, Offsets, SelfTestResult, SensorUnits, Versions, AxisMapping } from './types'; export declare class BNO055 { private readonly bus; readonly address: number; static begin(address: DeviceAddress, mode?: OpMode, busNumber?: number): Promise<BNO055>; mode: OpMode; units: SensorUnits; private constructor(); getAxisMapping(): Promise<AxisMapping>; getCalibrationStatuses(): Promise<CalibrationStatusMap>; getEuler(): Promise<{ h: number; r: number; p: number; }>; getMode(): Promise<OpMode>; getPage(): Promise<number>; getQuat(): Promise<{ w: number; x: number; y: number; z: number; }>; getSelfTestResults(): Promise<SelfTestResult>; getSensorOffsets(): Promise<Offsets | undefined>; setSensorOffsets(offsets: Offsets): Promise<void>; getSystemError(): Promise<SystemError>; getSystemStatus(): Promise<SystemStatus>; getTemperature(): Promise<number>; getUnits(): Promise<SensorUnits>; getVersions(): Promise<Versions>; /** * Checks that all relevant calibration status values are set to 3 (fully calibrated) */ isFullyCalibrated(): Promise<boolean>; resetSystem(): Promise<void>; setAxisMapping({ X, Y, Z }: AxisMapping): Promise<void>; setMode(mode: OpMode): Promise<void>; setPowerLevel(level?: PowerLevel): Promise<void>; useExternalClock(): Promise<void>; verifyConnection(): Promise<void>; /** * I2C Helper Methods */ private readDoubleByte; private readBlock; private writeDoubleByte; }