Giter Site home page Giter Site logo

northernman54 / homebridge-mcuiot Goto Github PK

View Code? Open in Web Editor NEW
30.0 10.0 12.0 7.42 MB

Homebridge platform plugin that support's a network of nodemcu's running nodemcu-dht-yl69-mdns to display Temperature and Humidity.

JavaScript 59.04% HTML 0.40% CSS 0.08% Shell 13.47% Lua 27.02%

homebridge-mcuiot's Introduction

NPM Downloads

NOTICE: I'm in the process of deprecating my usage of this plugin.

And in the process of migrating all my devices to the Tasmota firmware and the homebridge-tasmota plugin. With the transition I'm not changing my devices, just flashing them with Tasmota.

If someone wants to take over ownership of this codebase and repository, please let me know.

MCUIOT

Introduction

This is a homebridge platform plugin, supporting multiple ESP8266 / nodemcu device's configured as remote sensor module. Supported sensor's include DHT22, BME280 and YL-69 Soil Moisture Sensor. Included is also monitoring of a garage door position sensor. Also supports auto device discovery using mDNS, removing the need to manage devices via the config.json file. Historical display of temperature data is available via HomeKit apps thats support graphing.

Full build instructions are here in the Wiki

Also the YL-69 Moisture sensor will create a phantom "Leak Sensor", and will trigger a Leak event when the amount of moisture detected crosses a defined threshold.

Homekit Accessories Created

  • DHT - Combination Temperature / Humidity Sensor
  • BME - Combination Temperature / Humidity / Barometric Pressure Sensor
  • YL - Water Leak Sensor
  • GD - Garage Door Opener - Only reporting on position
  • BAT - Reads ADC pin, and displays as a battery level

Installation

  1. Install homebridge using: npm install -g homebridge
  2. Install homebridge-mcuiot using: npm install -g homebridge-mcuiot
  3. Update your configuration file, see sample-config.json in this directory.
  4. Install nodemcu-dht-yl69-mdns on your Nodemcu devices, and connect a DHT22 or BME280 Temperature/Humidity and YL-69 Soil Moisture sensors. See https://github.com/NorthernMan54/homebridge-mcuiot/tree/master/nodemcu for details on the NodeMCU build and configuration.

Nodemcu Device build

See https://github.com/NorthernMan54/homebridge-mcuiot/tree/master/nodemcu for details on the NodeMCU build and configuration.

Device management

Adding devices

Devices are auto discovered using mDNS, and will add new devices when they appear on mDNS. In the event that devices are not discovered, restarting homebridge will trigger a reconciliation between the plugin and mDNS, and add missing devices. Missing devices are not removed during startup, see below for how to remove non-existent devices.

Removing devices

Devices are removed using the 'Identify Accessory' function. When you use the function from your app, it checks to see if the device is truly not responding then removes the device. The identity function is not available in the Home app, but in others.

Configuration


    "bridge": {
        "name": "Bart",
        "username": "CC:22:3D:E3:CD:39",
        "port": 51826,
        "pin": "031-45-154"
    },

    "description": "HomeBridge",

"platforms": [
	{ "platform":	"mcuiot",
    "name":     "MCUIOT",
    "debug":    false,
    "aliases": {
      "NODE-2BA4CB": "Front Porch",
      "NODE-8F8FE": "Cold Cellar",
      "NODE-DC4492": "Office",
      "NODE-DC4492GD": "Garage Door"
    } }
	 ],

"accessories": [ ]

}

Optional parameters

  • refresh - Refresh rate in seconds for data, defaults to 60 seconds
  • leak - Threshold for Moisture sensor to trigger leak detected, defaults to 10%
  • port - Optional, port of web server to monitor devices, defaults to 8080
  • battery - Optional - BAT, percentage to set battery low alert based on reading of ADC pin.
  • storage - Storage of chart graphing data for history graphing, either fs or googleDrive, defaults to fs
  • spreadsheetId ( optional ): Log data to a google sheet, this is part of the URL of your spreadsheet. ie the spreadsheet ID in the URL https://docs.google.com/spreadsheets/d/abc1234567/edit#gid=0 is "abc1234567".
  • aliases - Friendly names for your nodemcu's
  • debug - Enable debug logging ( This is the same as enabling via command line DEBUG=MCUIOT homebridge)

Optional - Enable access to Google to log data and store graphing data

This presumes you already have a google account, and have access to google drive/sheets already

Step 1: Turn on the Drive API a. Use this wizard ( https://console.developers.google.com/start/api?id=sheets.googleapis.com ) to create or select a project in the Google Developers Console and automatically turn on the API. Click Continue, then Go to credentials.

b. On the Add credentials to your project page, click the Cancel button.

c. At the top of the page, select the OAuth consent screen tab. Select an Email address, enter a Product name if not already set, and click the Save button. I used 'Sheets Data Logger'

d. Select the Credentials tab, click the Create credentials button and select OAuth client ID.

e. Select the application type Other, enter the name "Drive API Quickstart", and click the Create button.

f. Click OK to dismiss the resulting dialog.

g. Click the file_download (Download JSON) button to the right of the client ID.

h. Move this file to your .homebridge and rename it logger_client_secret.json.

Step 2: Authorize your computer to access your Drive Account

a. Change to the directory where the plugin is installed i.e.

cd /usr/lib/node_modules/homebridge-mcuiot/node_modules/mcuiot-logger

b. Run the authorization module

node quickstart.js

c. Browse to the provided URL in your web browser.

If you are not already logged into your Google account, you will be prompted to log in. If you are logged into multiple Google accounts, you will be asked to select one account to use for the authorization.

d. Click the Accept button.

e. Copy the code you're given, paste it into the command-line prompt, and press Enter.

Credits

  • Homebridge communityTypes - Homespun and SphtKr
  • simont77 - History Service
  • agruen - Simplified setup / installation instructions

homebridge-mcuiot's People

Contributors

awein avatar chimcen avatar northernman54 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

homebridge-mcuiot's Issues

Error with latest lua files from git when not using a battery on adc pin

Hi,

i've tested the latest git version on my nodemcu with a bem280 connected.
Idon't use a battery - i've connected my node with usb to a wallcharger.

I've setup model "bme" in config.lua, but when grab the data from the node i've receiving this error:

PANIC: unprotected error in call to Lua API (main.lua:59: attempt to concatenate global 'batteryString' (a nil value))

Messages in the log, after removing the plugin and devices

Currently migrate my esp8266 to HAA for native support (thanks for the work on homebridge-mcuiot, it was one of my first approaches to homekit / homebridge), remove devices by validating ID in EVE app, and then remove homebridge-mcuiot from config .json, but these messages still appear in the log, even with the plugin uninstalled.

[5/3/2020, 3:05:50 PM] [mcuiot] Reading MCUIOT: NODE-80FD3D
[5/3/2020, 3:06:50 PM] [mcuiot] Reading MCUIOT: NODE-80F55D
[5/3/2020, 3:06:50 PM] [mcuiot] Reading MCUIOT: NODE-80FD3D
[5/3/2020, 3:07:50 PM] [mcuiot] Reading MCUIOT: NODE-80F55D
[5/3/2020, 3:07:50 PM] [mcuiot] Reading MCUIOT: NODE-80FD3D
[5/3/2020, 3:08:50 PM] [mcuiot] Reading MCUIOT: NODE-80F55D
[5/3/2020, 3:08:50 PM] [mcuiot] Reading MCUIOT: NODE-80FD3D
[5/3/2020, 3:09:50 PM] [mcuiot] Reading MCUIOT: NODE-80F55D
[5/3/2020, 3:09:50 PM] [mcuiot] Reading MCUIOT: NODE-80FD3D
[5/3/2020, 3:10:50 PM] [mcuiot] Reading MCUIOT: NODE-80F55D
[5/3/2020, 3:10:50 PM] [mcuiot] Reading MCUIOT: NODE-80FD3D

Error starting homebridge after install homebridge-mcuiot

Hi,

i've tried to install homebridge with mcuiot plugin.
But after installing mcuiot i got this errors instead:

`root@Raspi:/home/pi# homebridge
[2018-9-7 02:24:47] Loaded config.json with 0 accessories and 1 platforms.
[2018-9-7 02:24:47] ---
*** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node
*** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node&f=DNSServiceRegister
[2018-9-7 02:24:48] Loaded plugin: homebridge-mcuiot
[2018-9-7 02:24:48] Registering platform 'homebridge-mcuiot.mcuiot'
[2018-9-7 02:24:48] ---
[2018-9-7 02:24:48] Loading 1 platforms...
[2018-9-7 02:24:48] [MCUIOT] Initializing mcuiot platform...
[2018-9-7 02:24:48] Loading 0 accessories...
[2018-9-7 02:24:48] [MCUIOT] configureAccessory MCUIOT Reset Switch
Setup Payload:
X-HM://0023ISZEXOJJ6
Scan this code with your HomeKit app on your iOS device to pair with Homebridge:
...........................................................................................
[2018-9-7 02:24:48] [MCUIOT] Starting mDNS listener
[2018-9-7 02:24:48] Homebridge is running on port 51826.
events.js:165
throw er; // Unhandled 'error' event
^

Error: listen EADDRINUSE :::8080
at Server.setupListenHandle [as _listen2] (net.js:1345:14)
at listenInCluster (net.js:1386:12)
at Server.listen (net.js:1474:7)
at Object.exports.init (/usr/local/lib/node_modules/homebridge-mcuiot/lib/web.js:27:12)
at mcuiot.didFinishLaunching (/usr/local/lib/node_modules/homebridge-mcuiot/index.js:167:20)
at API.emit (events.js:180:13)
at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:99:13)
at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:45:10)
at Object. (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
at Module._compile (module.js:649:30)
Emitted 'error' event at:
at emitErrorNT (net.js:1365:8)
at process._tickCallback (internal/process/next_tick.js:114:19)
at Function.Module.runMain (module.js:692:11)
at startup (bootstrap_node.js:194:16)
at bootstrap_node.js:666:3
`

Any advice?

Performed on my raspberry pi 3 a fresh install of raspian stretch.

My DHT22 with NodeMCU is configured properly and runnung (values from webinterface when hitting ip adress of the NodeMCU):
{ "Hostname": "NODE-41E2B", "Model": "DHT", "Version": "1.5", "Firmware": "2.2.0", "Data": {"Temperature": 24.9, "Humidity": 57.3, "Moisture": 0, "Status": 0, "Barometer": -999, "Dew": -999 }}

or by sending dns-sd -B _dht22._tcp by cmd on my win10 machine:
image

Content of config.json:
{
"bridge": {
"name": "Homebridge",
"username": "CD:22:3D:E3:CE:97",
"port": 51826,
"pin": "031-45-801"
},

    "platforms": [
			{
				"platform": "mcuiot",
				"name": "MCUIOT",
				"aliases": {
					"NODE-41E2B": "Wohnzimmer"
							}
			}
	],
    
    "accessories": []

}

bme280.init deprecated

bme280.init is deprecated in bme.lua. bmetest.lua, test.lua and init.lua not working with newest NodeMCU Firmware

MCU stops working after a while

Hello there,

I successfully build this project and added it to Homberidge. It works fine for about 12-16 hours, then the led stops blinking and the nodecmu seems to be turned off.
Unplugging it and plugging is in again solves the problem for the next 12-16 hours and so on. Any ideas why that happens ?

Homebridge in multiple instances, generates duplicate devices

I am running 2 instances of homebridge on the same machine through PM2. Both instances share the same node environment and therefore the same global plugin directory. The problem occurs that in instance number 1 of homebridge I have

{
            "platform": "mcuiot",
            "port": 8081
        }

in the config.json file, and in instance number 2 of homebridge I do not mention mcuiot. By adding the 2 bridges to homekit, it shows me duplicate devices, with exactly the same values but mentioning different bridges.

Just having homebridge-mcuiot installed is enough for homebridge to start looking for devices? In the homebridge instance I had to customize the port since by default instance 2 starts with port 8080. Is there a way to tell homebridge to ignore a plugin?

Red LED blinking when device is queried, LED state = 2

Setting the LED state to 2 in config.lua seems like it should result in LED activity only when the device is booting or an error has occurred. However, while the blue LED remains off, the red LED blinks whenever the device is queried.

-- LED state
module.ledState = 2 -- 0: fully disabled, 1: LEDs on, 2: Connected off (Boot/Error only)

Configured for DHT with DHT22 attached.
Curl output:

{ "Hostname": "NODE-XXXXXX", "Model": "DHT", "Version": "1.5", "Firmware": "2.2.0", "Data": {"Temperature": 19.8, "Humidity": 48.6, "Moisture": 0, "Status": 0, "Barometer": -999, "Dew": -999 }}

BME280/BMP280 Read Error

I'm getting the following error regardless of whether I've got a BMP280 or BME280 lined up with my board. Any fix?

BME280 Read Error %d nil
PANIC: unprotected error in call to Lua API (main.lua:56: attempt to concatenate a nil value)

Adding MCUIOT to config.json prevents Homebridge from starting

After adding to the config.json:

{
    "platform": "mcuiot",
    "name": "MCUIOT"
}

Homebridge will no longer successfully load.

systemctl status homebridge reports:
homebridge.service - Node.js HomeKit Server
Loaded: loaded (/etc/systemd/system/homebridge.service; enabled; vendor prese
Active: activating (auto-restart) (Result: exit-code) since Sat 2018-05-12 01
Process: 14608 ExecStart=/usr/bin/homebridge $HOMEBRIDGE_OPTS (code=exited, st
Main PID: 14608 (code=exited, status=1/FAILURE)
May 12 01:20:54 home-MS-7969 systemd[1]: homebridge.service: Main process exited May 12 01:20:54 home-MS-7969 systemd[1]: homebridge.service: Unit entered failed May 12 01:20:54 home-MS-7969 systemd[1]: homebridge.service: Failed with result

Getting error during the dofile("test.lua")

I'm getting the led.lua:14: attempt to call field 'alarm' (a nil value) when i execute the test.lua file with ESplorer.
I did not edit this file.
I followed your instructions.
I'm using NodeMcu Amica with DHT-11 connected according to your instructions.
Both of the NodeMcu leds are turned on (blue) when i test the file .
What am I doing wrong ?

Thanks!

How can i remove a Sensor from Homekit?

Hi there ...
I switched a NodeMCU and now i can not remove the old Sensor from the Homekit.
Alse they will be shown on the Webseite of mcuit.
NODE-53CF55 | Error | timeout | timeout
NODE-53DA15 | Error | timeout | timeout
I delet the entries in the config.json, but they are already shown in the Home app and on the website.
Can you please help me?!
Thanks a lot ... Kai

"Error finding AP" on test.lua

I've uploaded all files in the described order to my nodemcu using ESPlorer (running on macOS). I always get the following message:

`

dofile("test.lua");
Heap Available: -c 37280
Heap Available: -l 33432
Heap Available: -m 27384
Heap Available: -setup 22336
Booting...
Heap Available: -boot 22584
Setting Init Timer
Configuring Wifi ...
Heap Available: -start 22672
Error finding AP
`

My passwords.lua file:
-- Rename this to passwords.lua, and add your WIFI SSID and Password local module = {} module.SSID = {} module.SSID["SSID1"] = { ssid="Stay Connected!", pwd = "password" } return module

Set offset for BME280

Hi, thanks for the great tutorial and scripts!

I printed some enclosures and built 6 Tempsensor-Stations.
When putting them next to each other I'm getting different temps (one shows repeatedly 1°C too much). Is there a possibility to set a temp-offset per device? e.g "+1.0" oder "0.7"

Humidity not displaying in Home

Been using with BME280 for months without issue, all worked well. Now the humidity doesn’t show up in the Home app but does show in Eve. I believe Humidity used to work in Home, but now shows “...”
Same exact thing happening with two different devices.

Supported hardware

In the documentation it is mentioned I need a ESP8266 supported device. Mainly, the NodeMCU device is mentioned as this device. My question is: is it possible to flash my Wemos D1 mini with the firmware to function with the homebridge-mcuiot? And if I can flash this; is there anything different in flashing to a NodeMCU? The wemos d1 mini also has a ESP8266 so I guess it should be supported. And: is it easy to flash my wemos back to its original firmware?

Thanks in advance

getaddrinfo Error when starting Homebridge

Only the Reset Switch shows up in Home-Kit, the server and the sensor are working fine, when I start Homebridge I get this Error-Message:
{ Error: getaddrinfo -3008
at errnoException (/usr/local/lib/node_modules/homebridge-mcuiot/node_modules/mdns/lib/resolver_sequence_tasks.js:199:11)
at getaddrinfo_complete (/usr/local/lib/node_modules/homebridge-mcuiot/node_modules/mdns/lib/resolver_sequence_tasks.js:112:10)
at GetAddrInfoReqWrap.oncomplete (/usr/local/lib/node_modules/homebridge-mcuiot/node_modules/mdns/lib/resolver_sequence_tasks.js:120:9)
code: -3008, errno: -3008, syscall: 'getaddrinfo' }

Also I noticed in ESPlorer where you get this:
Registering service dht22 with mDNS
Web Server Started
GET / HTTP/1.1
host: node-86695.local.:80
Connection: close
I get this:
Registering service dht22 with mDNS
Web Server Started
GET / HTTP/1.1
Host: 192.168.178.109
Connection: keep-alive
Still Homebridge and the sensor are working just fine, only it doesn't show up at all in Home-Kit

Thanks for helping me in advance

voltage reading

Hi!
Can you add to homebridge-mcuiot voltage reading from ESP8266? I have 2600mAh battery connected to ESP8266 on my terrace and would like to know when the battery level is critical and I have to charge it.

Hostname of NodeMCU

Hi,

is there a way to rename the NodeMCU module? So it will be show with a different name as e.g. "Node-xxx" in Homekit apps?

Error at reading values frome BME280

Hi,

i've used your code before and it worked.
I used it with an Wemos NodeMCU Mini D1 and a BME280 1.8-5V Breakoutboard (purple board with only 4 wire outputs - VCC,GND,SDA,SCL).

Today i've bought new of them, but received a BME280 1.71-3.6V Breakoutboard (purple board with 6 wire outputs - VCC,GND,SDA,SCL,CSB,SDD).

I've connected them as the "old" one - SDA=D6, SDL=D5, GND and VCC=3.3V.
I#ve also loaded the same firmware and the same config from the old one to the new one.

The board is connecting my WiFi and starts up a web server.
When i'd like to check the value readings in browser i'm only getting a read error:

------------------------------------
> dofile("test.lua");
Heap Available: -c 37960
Heap Available: -l 33992
Heap Available: -b 32512
Heap Available: -m 27192
Heap Available: -setup 22512
Booting...
Heap Available: -boot 22800
Setting Init Timer
Configuring Wifi ...
Heap Available: -start 22536
> Connecting to linksys ...
IP unavailable, Waiting...

============================================
Name is:         NODE-73ECAC
ESP8266 mode is: 1
MAC address is:  86:f3:eb:73:ec:ac
IP is:           192.168.1.102
============================================
Registering service dht22 with mDNS
Web Server Started
GET / HTTP/1.1
Host: 192.168.1.102
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1
Accept-Language: de-de
DNT: 1
Accept-Encoding: gzip, deflate


BME280 Read Error %d	1
PANIC: unprotected error in call to Lua API (main.lua:44: attempt to concatenate a nil value)
-------------------------------------------------------

ERROR-No dispatcher /inform

hi northernman54,
first off all - thanks for your awesome work!
i have an issue with the mcuiot-plugin. do you have any idea?


[2018-9-14 01:14:04] Loaded config.json with 1 accessories and 2 platforms.
[2018-9-14 01:14:04] ---
*** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node
*** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node&f=DNSServiceRegister
[2018-9-14 01:14:06] Loaded plugin: homebridge-mcuiot
[2018-9-14 01:14:06] Registering platform 'homebridge-mcuiot.mcuiot'
[2018-9-14 01:14:06] ---
[2018-9-14 01:14:06] Loaded plugin: homebridge-raspberrypi-temperature
[2018-9-14 01:14:06] Registering accessory 'homebridge-raspberrypi-temperature.RaspberryPiTemperature'
[2018-9-14 01:14:06] ---
[2018-9-14 01:14:07] Loaded plugin: homebridge-weather-plus
[2018-9-14 01:14:08] Registering platform 'homebridge-weather-plus.WeatherPlus'
[2018-9-14 01:14:08] ---
[2018-9-14 01:14:08] Loading 2 platforms...
[2018-9-14 01:14:08] [MCUIOT] Initializing mcuiot platform...
[2018-9-14 01:14:08] [WeatherPlus] Initializing WeatherPlus platform...
[2018-9-14 01:14:08] [WeatherPlus] Initializing platform accessory 'Wiedenzhausen'...
[2018-9-14 01:14:08] [WeatherPlus] Initializing platform accessory 'Wiedenzhausen Today'...
[2018-9-14 01:14:08] [WeatherPlus] Initializing platform accessory 'Wiedenzhausen In 1 Day'...
[2018-9-14 01:14:08] [WeatherPlus] Initializing platform accessory 'Wiedenzhausen In 2 Days'...
[2018-9-14 01:14:08] [WeatherPlus] Initializing platform accessory 'Wiedenzhausen In 3 Days'...
[2018-9-14 01:14:08] [WeatherPlus] Initializing platform accessory 'Wiedenzhausen In 4 Days'...
[2018-9-14 01:14:08] [WeatherPlus] Initializing platform accessory 'Wiedenzhausen In 5 Days'...
[2018-9-14 01:14:08] [WeatherPlus] Initializing platform accessory 'Wiedenzhausen In 6 Days'...
[2018-9-14 01:14:08] Loading 1 accessories...
[2018-9-14 01:14:08] [Pi Temp] Initializing RaspberryPiTemperature accessory...
[2018-9-14 01:14:08] [MCUIOT] configureAccessory MCUIOT Reset Switch
Setup Payload:
X-HM://0023ISYVJGPHP
Scan this code with your HomeKit app on your iOS device to pair with Homebridge:
Or enter this code with your HomeKit app on your iOS device to pair with Homebridge:
_
### [2018-9-14 01:14:09] [MCUIOT] Starting mDNS listener
[2018-9-14 01:14:09] Homebridge is running on port 51826.
[2018-9-14 01:14:09] [MCUIOT] Web Server listening on: http://localhost:8080**_
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform
ERROR-No dispatcher /inform

the three bme280 and nodemcu are configured properly and running (values from webinterface when hitting ip adress of the NodeMCU)

{ "Hostname": "NODE-169F92", "Model": "BME", "Version": "1.2", "Firmware": "2.2.0", "Data": {"Temperature": 24.94, "Humidity": 47.163, "Moisture": 10, "Status": 0, "Barometer": 961.092, "Dew": 12.92 }}

{ "Hostname": "NODE-1618A3", "Model": "BME", "Version": "1.2", "Firmware": "2.2.0", "Data": {"Temperature": 25.64, "Humidity": 46.114, "Moisture": 1, "Status": 0, "Barometer": 961.653, "Dew": 13.21 }}

{ "Hostname": "NODE-16995A", "Model": "BME", "Version": "1.2", "Firmware": "2.2.0", "Data": {"Temperature": 24.96, "Humidity": 56.269, "Moisture": 3, "Status": 0, "Barometer": 962.385, "Dew": 15.66 }}

regards,
alex

Negative temperatures not working

Need to add this

sensor
.getService(Service.TemperatureSensor)
.getCharacteristic(Characteristic.CurrentTemperature)
.setProps({
minValue: -100,
maxValue: 100
});

SyntaxError: Unexpected token

Hello,
with the latest version I am getting the following error.
Homebridge is then entering a restart loop.

[MCUIOT] configureAccessory MCUIOT Reset Switch
[6/28/2019, 6:00:05 PM] [MCUIOT] configureAccessory NODE-CD2B3
[6/28/2019, 6:00:05 PM] [MCUIOT] Reading MCUIOT: NODE-CD2B3
[6/28/2019, 6:00:05 PM] [MCUIOT] configureAccessory NODE-5D2CF8
[6/28/2019, 6:00:05 PM] [MCUIOT] Reading MCUIOT: NODE-5D2CF8
[6/28/2019, 6:00:05 PM] [MCUIOT] configureAccessory NODE-5CFCBE
[6/28/2019, 6:00:05 PM] [MCUIOT] Reading MCUIOT: NODE-5CFCBE
[6/28/2019, 6:00:05 PM] [MCUIOT] configureAccessory NODE-5D53E
[6/28/2019, 6:00:05 PM] [MCUIOT] Reading MCUIOT: NODE-5D53E
[6/28/2019, 6:00:05 PM] [MCUIOT] configureAccessory NODE-2AA86A
[6/28/2019, 6:00:05 PM] [MCUIOT] Reading MCUIOT: NODE-2AA86A
[6/28/2019, 6:00:05 PM] [MCUIOT] configureAccessory NODE-5D1C37
[6/28/2019, 6:00:05 PM] [MCUIOT] Reading MCUIOT: NODE-5D1C37
[6/28/2019, 6:00:05 PM] [MCUIOT] Starting Bonjour listener
[6/28/2019, 6:00:05 PM] [MCUIOT] Web Server listening on: http://localhost:8080
[6/28/2019, 6:00:05 PM] SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse (<anonymous>)
    at mcuiot.<anonymous> (/homebridge/node_modules/homebridge-mcuiot/index.js:279:23)
    at Request._callback (/homebridge/node_modules/homebridge-mcuiot/index.js:763:7)
    at Request.self.callback (/homebridge/node_modules/homebridge-mcuiot/node_modules/request/request.js:185:22)
    at Request.emit (events.js:198:13)
    at Request.<anonymous> (/homebridge/node_modules/homebridge-mcuiot/node_modules/request/request.js:1161:10)
    at Request.emit (events.js:198:13)
    at IncomingMessage.<anonymous> (/homebridge/node_modules/homebridge-mcuiot/node_modules/request/request.js:1083:12)
    at Object.onceWrapper (events.js:286:20)
    at IncomingMessage.emit (events.js:203:15)
[6/28/2019, 6:00:05 PM] Got SIGTERM, shutting down Homebridge...

Any ideas? Thanks in advance.

Update for node LTS 10

fs.js:129
throw new ERR_INVALID_CALLBACK();
^

TypeError [ERR_INVALID_CALLBACK]: Callback must be a function
at maybeCallback (fs.js:129:9)
at Object.writeFile (fs.js:1159:14)
at storeToken (/opt/node/lib/node_modules/homebridge-acurite-temperature/node_modules/mcuiot-logger/logger.js:220:8)
at /opt/node/lib/node_modules/homebridge-acurite-temperature/node_modules/mcuiot-logger/logger.js:201:13
at /opt/node/lib/node_modules/homebridge-acurite-temperature/node_modules/google-auth-library/lib/auth/oauth2client.js:154:5
at Request._callback (/opt/node/lib/node_modules/homebridge-acurite-temperature/node_modules/google-auth-library/lib/transporters.js:106:7)
at Request.self.callback (/opt/node/lib/node_modules/homebridge-acurite-temperature/node_modules/request/request.js:185:22)
at Request.emit (events.js:182:13)
at Request. (/opt/node/lib/node_modules/homebridge-acurite-temperature/node_modules/request/request.js:1161:10)
at Request.emit (events.js:182:13)

homebridge@homebridge:/opt/node/lib/node_modules/homebridge-acurite-temperature/node_modules/mcuiot-logger$ node --version
v10.15.0

Home App temperature 0.5°C steps BME 280

Hi,
I recently set up Homebridge and noticed that the temperature displayed in the home app is not 100% accurate (20.3°C displayed as 20.5°C, 21.1°C as 21.0°C etc). Is there a way to change that?
Also, the barometer values are not showing up.

Hope to get a reply,
Leon

Entering altitude of measurement place didn't work

Hi,

in bme.lua i've entered my correct altitude - for testing purposes i've changed the altidude to "0" and expected that the baro measurement will no be calculated at sea level.

But nothing has changed - baro value still stuck at ~ 965...

[Question] Possibility of considering other types of sensors

First of all thank all the work for excellent plugin, it works perfectly.

Second, I would like to see the possibility of incorporating other types of sensors, such as an hc-sr501, and behaving as an independent accessory connected to the same ESP8266 board. It would be great to be able to indicate this through config.json.

Greetings.

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.