GithubHelp home page GithubHelp logo

twocolors / node-red-contrib-esphome Goto Github PK

View Code? Open in Web Editor NEW
20.0 20.0 6.0 323 KB

Node-RED nodes to ESPhome devices

License: MIT License

HTML 57.82% TypeScript 42.18%
diy esphome iot node-red nodejs

node-red-contrib-esphome's People

Contributors

crxporter avatar dependabot[bot] avatar guyluz11 avatar twocolors avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

node-red-contrib-esphome's Issues

Possible collab

Thinking of integrating your package in a smart home automation platform named CyBear Jinni

It is open source here is a link.

When do you intend to make this public, I can't find it in the Palette install tab

image

Node change nothing on HA or ESP

I´m giving a set value of 0-100 for fan control (speedlevel; 100) to the input and nothing happens on HA.
The feedback of the input is the last value on HA.
If I´m changing set value in HA the input is giving the right feedback.
The output of ESP is only changing when I´m setting anything on HA, but not in Node-Red.

Seems to be a problem with write protection.

With kind regards,
Thorsten

all sensor one message

There is a 16-channel binary sensor device.
I would need all the channels in one message at once.
example:
a1: true
a2:false
a3:false

"Status" output not reporting status (there is a workaround)

Hi @twocolors

Please remember I am willing to help with docs; I don't know how to reach you privately.

This is not a problem, I am simply reporting it.

When I use the ESP-IN node, the Status output does not send any message. That is OK, because I can still subscribe to the actual switches for their status, so my flows still work 100%. But if that output is supposed to send status data on everything, it's not working yet.

Thank you for your continued work on this project.

Cant get value to espout-Node for Servo vontrol

Hello!

First of all: great project!

I try to controll a servo with the espout-Node but cant find a way to inject the value correct.

If i try a inject node with number as a payload the servo gets always the position 0.
grafik

I tried to inject it as JSON value and wasnt more sucssesfull. Can you tell me what Im doing wrong?
grafik

When I`m using the Home Assistent Dashboard I can move the servo fine.

grafik

Thank und and greetings!

Feature request get all entities of device

I am setting my node-red by creating the JSON with code and importing it to node-red.

Currently there is no way for me to get all the entity's id and types, it is not saved on ESPHome device node and there isn't any node that can retrieve the list of entities for a specific device.

I would love to see all of the available entities' data saved under the device node including all the available data for each entity (name, type, id, pin?, platform?, output?).

Error at startup

Node red crash at startup.

31 Mar 11:12:15 - [red] Uncaught Exception:
31 Mar 11:12:15 - [error] TypeError: Cannot read properties of undefined (reading 'type')
    at Node.<anonymous> (/data/node_modules/node-red-contrib-esphome/build/nodes/out.js:48:36)
    at Generator.next (<anonymous>)
    at /data/node_modules/node-red-contrib-esphome/build/nodes/out.js:8:71
    at new Promise (<anonymous>)
    at __awaiter (/data/node_modules/node-red-contrib-esphome/build/nodes/out.js:4:12)
    at Node._inputCallback (/data/node_modules/node-red-contrib-esphome/build/nodes/out.js:46:47)
    at /usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:210:26
    at Object.trigger (/usr/src/node-red/node_modules/@node-red/util/lib/hooks.js:166:13)
    at Node._emitInput (/usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:202:11)
    at Node.emit (/usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:186:25)
31 Mar 11:12:28 - [info] 

node-red version 3.0.2
Config from UI only, device with password.

User docs

Hi @twocolors

I have written quickstart guide for these nodes, but I am also old, and am doing something wrong. I can't see how to message you directly, so I'm just going to attach it as a text file, maybe you can copy and paste.

Thank you again for this very useful node.

node-red-contrib-esphome_quickstart.txt

Is there a property I can query to get the IP address of an esphome node?

Hi @twocolors

I am trying to implement a sort of "heartbeat" so that I can detect if an important device goes offline for some reason. But right now I have to maintain a list of IP addresses to ping; this is not very convenient and it becomes painful as the list grows longer.

It would be much easier if I could simply query the node what its IP is, because I could write more universal code.

Once again, many thanks for your work on this.

"Assertion failed" and "sendMessage timeout"

Hello,

i try to connect a new esphome project - my first project with esphome.
While i'm not using HA i tried MQTT but had a lot of reboots. The maintainer told me to try to disable mqtt and use the API instead.
Thats why i moved to this project.

But unfortunately i have much more issues with that flow in Node-RED.
First connection is fine but after a while it loses connection, i see a lot of reconnects on esp-side and get a lot of messages like:

"Assertion failed"
"sendMessage timeout"

My Node-RED is on latest version 3.1.0 with node.JS v18 on docker.

Is there anything that could be improved or better logs?

Thanks

script for esp32

can you help me to find the script or firmware to install to esp32????thanks

Question regarding requirements

Hi! Great work. Looks very promising!
Question: Does this really require Node version >=16, or could it also work with older versions? (Like 14.17)

Node-RED install error

Getting an error while trying to install this package from the Node-RED ide

image

-----------------------------------------------------------
2023-01-20T14:57:34.452Z Install : node-red-contrib-esphome 0.0.2

2023-01-20T14:57:34.470Z npm install --no-audit --no-update-notifier --no-fund --save --save-prefix=~ --production --engine-strict node-red-contrib-esphome@0.0.2
2023-01-20T14:57:34.714Z [err] npm WARN config production Use `--omit=dev` instead.
2023-01-20T14:57:36.557Z [err] npm
2023-01-20T14:57:36.557Z [err]  
2023-01-20T14:57:36.557Z [err] ERR! code
2023-01-20T14:57:36.558Z [err]  ENOENT
2023-01-20T14:57:36.558Z [err] npm
2023-01-20T14:57:36.558Z [err]  
2023-01-20T14:57:36.558Z [err] ERR!
2023-01-20T14:57:36.558Z [err]  syscall
2023-01-20T14:57:36.558Z [err]  spawn git
2023-01-20T14:57:36.558Z [err] npm
2023-01-20T14:57:36.558Z [err]  
2023-01-20T14:57:36.558Z [err] ERR!
2023-01-20T14:57:36.558Z [err]  
2023-01-20T14:57:36.558Z [err] path git
2023-01-20T14:57:36.559Z [err] npm
2023-01-20T14:57:36.559Z [err]  ERR!
2023-01-20T14:57:36.559Z [err]  errno
2023-01-20T14:57:36.559Z [err]  -2
2023-01-20T14:57:36.560Z [err] npm 
2023-01-20T14:57:36.560Z [err] ERR! enoent
2023-01-20T14:57:36.560Z [err]  An unknown git error occurred
2023-01-20T14:57:36.560Z [err] npm
2023-01-20T14:57:36.560Z [err]  ERR! 
2023-01-20T14:57:36.560Z [err] enoent This is related to npm not being able to find a file.
2023-01-20T14:57:36.560Z [err] npm 
2023-01-20T14:57:36.560Z [err] ERR! 
2023-01-20T14:57:36.560Z [err] enoent 
2023-01-20T14:57:36.562Z [err] 
2023-01-20T14:57:36.562Z [err] npm 
2023-01-20T14:57:36.562Z [err] ERR!
2023-01-20T14:57:36.562Z [err]  A complete log of this run can be found in:
2023-01-20T14:57:36.562Z [err] npm
2023-01-20T14:57:36.562Z [err]  ERR!
2023-01-20T14:57:36.562Z [err]      /root/snap/node-red/854/.npm/_logs/2023-01-20T14_57_34_694Z-debug-0.log
2023-01-20T14:57:36.570Z rc=254

Adding new device manually

Feature request:
I would like to add my espHome devices manually by IP or by mDNS name.

Currently I saw that users can add a new device only if it found the device on the network.

Screenshot_20230208_081550_Firefox

Refreshing state

Is it possible to have an input field with timesets for refreshing the state of the node ?
Because it´s neccessary to have the status not only on change.
Thanks

EsphomeNativeApiConnection MaxListenersExceededWarning

node-red  | (node:7) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 message.SensorStateResponse listeners added to [EsphomeNativeApiConnection]. Use emitter.setMaxListeners() to increase limit
node-red  | (Use `node --trace-warnings ...` to show where the warning was created)

Struggling to send commands to ESPHome devices - could anyone please post an example flow?

First, let me say how happy I am to see this project. All of my home automation is in Node-RED; I only use Home Assistant as an ersatz state machine. If this works, I can eliminate an entire VM.

Anyway, I installed it, and I can see devices, and see the exposed controls, which is exciting!

However, I am struggling to actually send commands. I know that the documentation seems to list what's required, but I'm not succeeding. If I get this working, I'm happy to write up a tutorial with steps for noob users that want to do this.

SO: here's my difficulty. There's an ESPHome device in this room that controls the light above me. I want to be able to turn it on and off - basic, right?

So I added an ESPHome Out node, correctly configured. The right device comes back, I can see the entities inside it.

So now I need to inject a command to make it work.

What I need is to understand how that instruction needs to be formatted, and where it should go: msg.payload?

Boolean True and False don't seem to work.

String ON and OFF don't seem to work.

If I could see one working example, I could figure it out from there, probably.

Halp? Thanks.

Non-fatal bug, just letting you know

Hi @twocolors

This does not break anything, it just sends a message into debug.

When I deploy a flow, I get an error message in the debug window, for example:

Entity (2974081917) not found on device

However, this does not stop the ESPHome node from working, and my automations still work correctly despite this message.

Thank you for your continued work on this.

FR: Ability to use the encryption key instead of password

Hi, I have been testing this palette for over a week now and it works pretty good. The problem is, the api password feature is deprecated and it is recommended to use an encryption key instead (it will stop working in programs like Home Assistant in the near future).

Is there a way to add this to this node so that we are able to connect with the api encryption key instead?

BTW, Great Work!!!! I've been looking for a palette for ESPHome for a very long time! Keep it up!

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.