I made heavy use of the Node Red RPi GPIO nodes. I don’t know what they do under the hood or how they call the pins, but those are the nodes in use in lots of my flows.
The first one here? Can you try to find more information about rpi-gpio out from the interface?
The issue with a lot of these plugins/libraries are that they were designed without the proper abstractions. They become heavily Pi specific rather than generic which makes even creating a compatible library a mess. For example, PWM and GPIO are very different and should not be in the same function.
If we were to create a library for node-red, you may have to rewire your flows since we would not mix these two operations together.
I can see that now, being stuck in the Pi ecosystem for these.
Is it possible for you to create nodes that behave like the Pi nodes? If so, I could likely just swap them out easily enough, and create new ones going forward with that. It’s inconvenient to have two different versions, but workable and not deal-breaking.
With the RPi GPIO nodes, I drop one on the canvas, then select from the graphic which pin that node will apply to in this flow. Then send it a 1/0 to control. Same thing with the Read/input version, but it sends a message in the flow upon state change.
The DS18B20 nodes are a mystery to me… I was using code to query them on arduino’s and ESP’s, but since deploying Pi’s, I’ve just shut my brain off and used nodes. So I’d assume they query 1-w somehow…They might work if I merge a 1-w overlay, I’ll try if I get time home tonight.
I’d like to keep it as drag-and-drop nodes so coworkers can follow along in my work and repair things without me. If I learned python and wrote custom functions in it, that would make debugging extra difficult.
Yes, we are working on a library that works across all of our boards. Our lgpio tool already behaves this way with lgpio get
and lgpio set
. It’s just a matter of reading the gpio mappings we have already created into node-red library and then using them there. This is in the works already.