UNPKG

@chrispyduck/homie-sensors

Version:

Sensor library intended for ues with homie-device

45 lines 1.63 kB
import { HomieDevice } from "@chrispyduck/homie-device"; import { I2CDevice } from "./I2CDevice"; import { II2CConfiguration } from "./II2CConfiguration"; import { ISensor, ISensorEvents } from "../ISensor"; import { ITemperatureAndHumidity } from "../interfaces/ITemperatureAndHumidity"; export declare const I2C_ADDRESS = 56; declare enum State { Unknown = 0, Idle = 1, ReceiveStatus = 10, ReceiveMeasurement = 11, Reset = 99 } export interface IAHT20Events extends ISensorEvents<ITemperatureAndHumidity> { "temperature": (temp: number) => void; "humidity": (hum: number) => void; } export interface IAHT20 { on<U extends keyof IAHT20Events>(event: U, listener: IAHT20Events[U]): this; emit<U extends keyof IAHT20Events>(event: U, ...args: Parameters<IAHT20Events[U]>): boolean; } export default class AHT20 extends I2CDevice<ITemperatureAndHumidity> implements ISensor<ITemperatureAndHumidity>, IAHT20 { static readonly DefaultConfiguration: II2CConfiguration; constructor(config?: II2CConfiguration); private humidity$; get humidity(): number; private temperature$; get temperature(): number; private lastReset; private zeroReads; private readonly buffer; private state$; private setState; get state(): State; protected onInit: () => Promise<void>; protected reeset: () => Promise<void>; register: (device: HomieDevice) => void; private queryStatus; private readStatus; private initializeDevice; read: () => Promise<ITemperatureAndHumidity>; private crc8x_simple; } export {}; //# sourceMappingURL=AHT20.d.ts.map