Have ideas to improve npm?Join in the discussion! »

    @iainfarq/homebridge-bme280

    1.4.0 • Public • Published

    homebridge-bme280

    Bosch BME280 temperature/humidity/barometric pressure sensor service plugin for Homebridge.

    NPM Downloads

    • Display of temperature, humidity and Barometric Pressure from a BME280 connected to a RaspberryPI.
    • Archives results every hour to a google spreadsheet
    • Support the graphing feature of the Eve app for trends

    Forked from homebridge-280 to use bme280, which has a full implementation of the BME280 options. See the datasheet for all oversampling and filtering options.

    Installation

    1. Install Homebridge using npm install -g homebridge
    2. Install this plugin npm install -g @iainfarq/homebridge-bme280
    3. Update your configuration file - see below for an example

    Follow the excellent directions in the bme280 package to connect the device to the I2C bus.

    Configuration

    • accessory: "BME280"
    • name: descriptive name
    • name_temperature (optional): descriptive name for the temperature sensor
    • name_humidity (optional): descriptive name for the humidity sensor
    • refresh: Optional, time interval for refreshing data in seconds, defaults to 30 seconds.
    • options: options for bme280. Note that the 'forcedMode' option is set to true by default; this should better match any homebridge use - self heating is reduced, and the sensor is only active once per refresh cycle.

    If you get an I/O error, make sure the I2C address is correct (usually 0x76 or 0x77 depending on a jumper).

    Simple Configuration

    {
      "bridge": {
        "name": "BME280Example",
        "username": "CB:22:33:E2:CE:31",
        "port": 51826,
        "pin": "033-44-254"
      },
      "accessories": [
        {
          "accessory": "BME280",
          "name": "Sensor",
          "name_temperature": "Temperature",
          "name_humidity": "Humidity",
          "options": {
            "i2cBusNo": 1,
            "i2cAddress": "0x77"
          }
        }
      ],
      "platforms": []
    }

    More complex configuration, using all available bme280 options:

    {
      "bridge": {
        "name": "BME280Example",
        "username": "CB:22:33:E2:CE:31",
        "port": 51826,
        "pin": "033-44-254"
      },
      "accessories": [
        {
          "accessory": "BME280",
          "name": "Sensor",
          "name_temperature": "Temperature",
          "name_humidity": "Humidity",
          "refresh": 15,
          "options": {
            "i2cBusNo": 1,
            "i2cAddress": "0x77",
            "humidityOversampling": "OVERSAMPLE.X8",
            "pressureOversampling": "OVERSAMPLE.X16",
            "temperatureOversampling": "OVERSAMPLE.X2",
            "filterCoefficient": "FILTER.F16",
            "standby": "STANDBY.MS_20",
            "forcedMode": false
          }
        }
      ],
      "platforms": []
    }

    This plugin creates two services: TemperatureSensor and HumiditySensor.

    Credits

    • NorthernMan54 - Barometric Pressure and Device Polling
    • simont77 - History Service
    • fivdi - Comprehensive implementation of the BME280 interface

    License

    MIT

    Install

    npm i @iainfarq/homebridge-bme280

    DownloadsWeekly Downloads

    15

    Version

    1.4.0

    License

    MIT

    Unpacked Size

    14.7 kB

    Total Files

    6

    Last publish

    Collaborators

    • avatar