Code Monkey home page Code Monkey logo

iobroker.sonoff's Introduction

Logo

ioBroker Sonoff

Number of Installations Number of Installations NPM version

Test and Release Translation status Downloads

This adapter uses Sentry libraries to automatically report exceptions and code errors to the developers. For more details and for information how to disable the error reporting see Sentry-Plugin Documentation! Sentry reporting is used starting with js-controller 3.0.

Comparison of ioBroker adapters using MQTT protocol

If you only have Tasmotas speaking MQTT protocol go for ioBroker.sonoff. For other scenarios consider the different options:

ioBroker.sonoff ioBroker.mqtt (in broker mode) ioBroker.mqtt (in client mode) ioBroker.mqtt-client
Has a built-in MQTT broker yes yes no no
Relays messages to other MQTT subscribers NO!!! yes not aplicable not aplicable
External MQTT broker unsupported unsupported required required
Tasmota MQTT messages to ioBroker Objects smart processing 1:1 processing of all messages 1:1 processing of subscribed messages 1:1 processing of subscribed messages
non-Tasmota MQTT messages to ioBroker Objects no processing 1:1 processing of all messages 1:1 processing of subscribed messages 1:1 processing of subscribed messages
publish ioBroker values as MQTT messages none configured subtrees configured subtrees individually configured values

Usage

This adapter communicates with Sonoff devices with Tasmota firmware or ESP devices via MQTT.

Following topics are expected:

  • tele/DeviceNAME/STATE
  • tele/DeviceNAME/SENSOR
  • tele/DeviceNAME/INFOx
  • tele/DeviceNAME/ENERGY
  • cmnd/DeviceNAME/POWERx
  • stat/DeviceNAME/POWERx
  • /DeviceNAME/BM280/Temperature
  • /DeviceNAME/BM280/Humidity
  • /DeviceNAME/BM280/Temperatur
  • /DeviceNAME/BM280/Feuchtigkeit
  • /DeviceNAME/BM280/Vcc
  • /DeviceNAME/BM280/VCC
  • /DeviceNAME/BM280/Laufzeit
  • /DeviceNAME/BM280/RSSI
  • /DeviceNAME/BM280/POWER
  • /DeviceNAME/BM280/POWER1
  • /DeviceNAME/BM280/POWER2
  • /DeviceNAME/BM280/POWER3
  • /DeviceNAME/BM280/POWER4
  • /DeviceNAME/BM280/Switch1
  • /DeviceNAME/BM280/Switch2
  • /DeviceNAME/BM280/Total
  • /DeviceNAME/BM280/Today
  • /DeviceNAME/BM280/heute
  • /DeviceNAME/BM280/Yesterday
  • /DeviceNAME/BM280/gestern
  • /DeviceNAME/BM280/Faktor
  • /DeviceNAME/BM280/Factor
  • /DeviceNAME/BM280/Power
  • /DeviceNAME/BM280/Leistung
  • /DeviceNAME/BM280/Voltage
  • /DeviceNAME/BM280/Spannung
  • /DeviceNAME/BM280/Current
  • /DeviceNAME/BM280/Strom
  • /DeviceNAME/BM280/Punkt
  • /DeviceNAME/BM280/Counter1
  • /DeviceNAME/BM280/Counter2
  • /DeviceNAME/BM280/Counter3
  • /DeviceNAME/BM280/Counter4
  • /DeviceNAME/BM280/Pressure
  • /DeviceNAME/BM280/SeaPressure
  • /DeviceNAME/BM280/Druck
  • /DeviceNAME/BM280/Approx. Altitude
  • /DeviceNAME/BM280/Module
  • /DeviceNAME/BM280/Version
  • /DeviceNAME/BM280/Hostname
  • /DeviceNAME/BM280/IPAddress
  • /DeviceNAME/BM280/IPaddress
  • /DeviceNAME/BM280/RestartReason
  • /DeviceNAME/BM280/CarbonDioxide
  • /DeviceNAME/DHT11/Illuminance
  • /DeviceNAME/SonoffSC/Light
  • /DeviceNAME/SonoffSC/Noise
  • /DeviceNAME/SonoffSC/AirQuality
  • /DeviceNAME/SDS0X1/PM2.5
  • /DeviceNAME/SDS0X1/PM10
  • /DeviceNAME/SDS0X1/UvLevel
  • /DeviceNAME/SDS0X1/Latitude
  • /DeviceNAME/SDS0X1/Longitude
  • /DeviceNAME/SR04/Distance

Note: The list could be easily extended. Please send Pull Requests or debug data for unknown states to developer (via issue).

Auto-creation of objects

In the web config you can determine which MQTT telegrams create the new objects not in default data points:

  • TELE_SENSOR - creates objects from tele/xxx/SENSOR telegrams
  • TELE_STATE - creates objects from tele/xxx/STATE telegrams
  • STAT_RESULT - creates objects from stat/xxx/RESULT telegrams

Usually TELE_SENSOR should be sufficient for most users.

  • Create object tree creates objects as tree structure

Warning! This option will mess up your sonoff object tree! You have to redo all the settings for storage... Store the object structure as JSON file, so you can recreate your old structure. Best is to stop the adapter, delete all objects under sonoff and start the adapter again.

Flags for LED controllers

The mode states will be created only if device has one of the states:

  • Red, Green, Blue, WW, CW, Color, RGB_POWER, WW_POWER, CW_POWER, Hue, Saturation

States:

  • modeLedExor - exor for white LEDs and color LEDs => if the white LEDs are switched on, color LEDs are switched off and vice versa (default true)
  • modeReadColors - allow for color read from MQTT (default false)

Changelog

2.5.1 (2022-04-23)

  • (Apollon77) Fix crash case reported by Sentry

2.5.0 (2022-03-21)

  • (GreatSUN) Implement writing of NSPanel Widget changes
  • (Apollon77) Fix crash case reported by Sentry

2.4.7 (2021-11-14)

  • (Apollon77) Fix crash case (Sentry IOBROKER-SONOFF-1S)

2.4.6 (2021-11-13)

  • (Apollon77) Fix some crash cases reported by Sentry (IOBROKER-SONOFF-B, IOBROKER-SONOFF-R, IOBROKER-SONOFF-4, IOBROKER-SONOFF-1, IOBROKER-SONOFF-13, IOBROKER-SONOFF-1J, IOBROKER-SONOFF-16, IOBROKER-SONOFF-3, IOBROKER-SONOFF-H)
  • (Apollon77) Adjust Uptime to mixed because it seems that it can be number or string

2.4.5 (2021-07-21)

  • (Apollon77) Fix some crash cases reported by Sentry

2.4.4 (2021-07-19)

  • (bluefox) Added UvaIntensity and UvbIntensity

2.4.3 (2021-07-18)

  • (bluefox) Better type detection for non-described states

2.4.2 (2021-07-17)

  • (bluefox) Optimize for js-controller 3.3

2.4.1 (2021-07-17)

  • (Apollon77/bluefox) Optimize for js-controller 3.3
  • (Apollon77) Add Sentry for error reporting with js-controller 3.x+

2.4.0 (2021-02-04)

  • (anwa) add several data points
  • (anwa) Fix translation for 'ignorePings'
  • (anwa) Fix wrong unit for humidity
  • (anwa) Config option to create a complete object tree instead of a flat structure
  • (anwa) Change Action type to string
  • (Apollon77) js-controller 2.0 is required at least

2.3.3 (2019-11-27)

  • (bluefox) Error with empty packet was caught

2.3.2 (2019-10-23)

  • (bluefox) Fixed the password input in the configuration
  • (bluefox) Allowed to set the IP interface for server
  • (bluefox) Fixed tests for js-controller 2.0
  • (bluefox) Fixed the monitoring of the client connection
  • (bluefox) Changed "indicator.connected" to "indicator.reachable" for clients
  • (bluefox) Supported {POWERn: "true"}
  • (bluefox) Correct processing of {temp: nan}

2.2.3 (2019-01-10)

  • (simatec) Support for compact mode

2.2.2 (2018-06-22)

  • (bluefox) Configuration was fixed

2.2.1 (2018-06-20)

  • (bluefox) '-' in names was allowed again

2.2.0 (2018-05-22)

  • (gemu2015) auto generate objects, support for arrays (channel), led-controllers improved

2.1.3 (2018-05-08)

  • (bluefox) Added HC-SR04 Ultrasonic Sensor

2.1.2 (2018-04-23)

  • (bluefox) Added support of UvLight, Longitude and Latitude

2.1.1 (2018-04-13)

  • (bluefox) Support of the particle concentration sensor

2.1.0 (2018-03-30)

  • (gemu2015) Support of the devices control (many thanks :)
  • (gemu2015) Support of many new values
  • (modmax) Update alive status of the clients
  • (modmax) Added POWER5-8 and Switch3-4

2.0.2 (2018-03-19)

  • (modmax) Fixing reconnection of clients
  • (bluefox) Add SeaPressure

2.0.1 (2018-03-17)

  • (bluefox) Replace stream handler
  • (bluefox) Add timeout for clients
  • (bluefox) Add Light/Noise/AirQuality
  • (bluefox) Do not send pingresp for invalid clients

1.0.3 (2018-03-03)

  • (bluefox) Add Analog0/1/2/3 sensor

1.0.2 (2018-02-17)

  • (Apollon77) Add Illuminance sensor

1.0.1 (2018-02-05)

  • (bluefox) Ready for admin3
  • (bluefox) Added CO2 sensor

1.0.0 (2017-11-27)

  • (AlZiBa) typo @ alive
  • (AlZiBa) add Today's power consumption for Sonoff POW
  • (AlZiBa) unit of power consumption is kWh

0.3.3 (2017-11-03)

  • (bluefox) Add counters

0.3.2 (2017-10-22)

  • (Tan-DE) Small change for Switch1. Switch2 and additional IPaddress added.

0.3.1 (2017-10-12)

  • (bluefox) Fix tests and LWT

0.3.0 (2017-10-06)

  • (bluefox) Add INFO and ESP

0.2.0 (2017-10-05)

  • (bluefox) Add ENERGY and DS18x20

0.1.0 (2017-10-01)

  • (bluefox) initial commit

License

The MIT License (MIT)

Copyright (c) 2017-2022, bluefox [email protected]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

iobroker.sonoff's People

Contributors

algar42 avatar alziba avatar anwa avatar apollon77 avatar dependabot[bot] avatar dobis19 avatar feurer98 avatar gemu2015 avatar germanbluefox avatar greatsun avatar hurdurderp avatar jbubik avatar johnnybyzhang avatar ldittmar81 avatar mccrossen avatar mobilutz avatar modmax avatar paul53 avatar simatec avatar tan-de avatar unclesamswiss avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.