ecowitt-gateway

1.0.1 • Public • Published

Ecowitt Gateway

GitHub last commit npm npm GitHub

Features

  • Gets Live Data
  • Gets Device Information
  • Get/Set Custom Server Configuration

Requirements

  • NodeJS 8+
  • Ecowitt Gateway Firmware 1.5.7+ (1.5.9+ for CO2 and 1.6.4+ for Rain commands)

Methods

getSensors({            //Optional filter can be by type and/or status. Accepts strings or arrays of strings for type and status.
    type: 'WH65',
    status: 'active'
})

getLiveData(includeRain = true, filterActiveSensors = false) //Gets current Weather conditions. Including rain will append the getRain data while filterActiveSensors will remove non-active sensors if shown

getRainData()           //Gets Rain Data.

getRain()               //New method to get Rain information including Piezo and Rain Events

getSoilMoistureCalibration() //Gets Soil Moisture Calibration Data (including current analog and digital value for all connected sensors)

getPM25Offset()         // Gets PM25 Offset Data

getCO2Offset()          // Gets CO2 Offset Data

getFirmwareVersion()    //Gets current Firmware version.

getSystemParams()       //Gets System Parameters. (in development)

getMacAddr()            //Gets MAC Address

getCustomServerInfo()   //Gets Custom Server Information

setCustomServerInfo({  //Sets Custom Server Information (All Fields optional)
    station: 'STATION ID',        //Station Name
    key: 'KEY',                   //Station Key
    server: '192.168.X.X',        //Server Location
    port: 3000,                   //Port Number
    interval: 60,                 //Interval to send update in seconds(minimum 16)
    protocol: 'wunderground',     //Protocol (wunderground or ecowitt)
    enabled: true,                //Custom Server Enabled
    path_ecowitt: '/weather',     //Server Path for Wunderground Protocol
    path_wunderground: '/weather' //Server Path for Ecowitt Protocol
})

static discover(timeout)  //Find Gateways, Timeout in milliseconds

Example

const EWG = require('ecowitt-gateway');
const gw = new EWG('192.168.X.X', 45000); //port default is 45000 and is optional

gw.getLiveData()
   .then(data => {
      console.log(JSON.stringify(data));
   });

Future Development

  • Get & Set more configuration settings

Package Sidebar

Install

npm i ecowitt-gateway

Weekly Downloads

28

Version

1.0.1

License

GPL-3.0

Unpacked Size

64.9 kB

Total Files

12

Last publish

Collaborators

  • bmdevx