Wall mounted Node-RED touch screen device: Request for ideas and volunteers

Hi folks,

Winter is coming, which means my wife will ask again when I will have room temperature control ready: for example when she enters the bathroom at 07:00 in the morning, the room shouldn't be heated. I can't count anymore how much years in sequence she has asked me that same question. It is getting embarrassing...

I need to have a temperature sensor in every room, that let my belovely Node-RED system know whether the heating should be turned. And since I have to install such a device in every room, I would like to go a step further: I want to have a small touch screen, where I show a small Node-RED dashboard that offers us functionality that useful in that particular room. Some examples:

  • In the bathroom I want to show temperature and humidity, and you should be able to control it with buttons on the dashboard.
  • At the top of my stairs I want to show a keyboard to enable/disable the alarm easily when we go to sleep. And it should beep when we go downstairs in the morning while having forgotten to disable the alarm.
  • In my bedroom I want to show my camera's easily, to get a quick overview of what is happening when the alarm suddenly goes of.
  • ...

So I need to have a device with following properties:

  1. It should have a nice design.
  2. It should be on-wall mounted, so I don't have to create a large hole in my wall.
  3. It should be affordable, since I want to put such a device in every room.
  4. It should have a temperature/humidity sensor.
  5. It should have beeper/speaker, for example to inform me that I forgot to disable the alarm.
  6. It should have a small PIR sensor. For example to start activating the touch screen as soon as you enter the room, to make sure the dashboard is alive and connected when you want to start using it.
  7. It should have wifi and a ethernet connection (because I am a 'cable guy').
  8. It should have optionally batteries. Not a requirement for myself (see point 7...).
  9. It should have a responsive touchscreen. I had tested a resistive touch screen, but that doesn't feel right. But the capacitive seem to be too expensive for my purpose.
  10. It should be easy to click the case on the wall, in order to be able to remove it easily. Which means a plastic part screwed on the wall, in which you can click the front part.
  11. There should be a few different sizes of the plastic case.
  12. It should be possible to turn the case 90 degrees to mount it in landscape format on the wall. Or perhaps create two separate cases, since there will be air vents.
  13. And last but not least: the cpu should be good enough to run a minimal Node-RED installation, with the Node-RED dashboard. I don't want people having to start learning other technologies, in order to be able to use this device. So pure Node-RED! :slight_smile:

And every year I google evenings without luck. I keep hoping year after year to find anything out of the box, but I give up hope now. If you want something like that, companies start thinking: oh that guy must have lots of money to spend. Let's go and get it there ...

But I need help from the community:

  1. I don't have a 3D printer and I don't know anything from designing cases or 3D printing. I even don't know if 3D printing resolution is good enough to create a nice smooth shiny case...
  2. I am a software guy, so don't have time to digg into the electronics part.
  3. And so on...

There is a lot of potential in this community, so it would be nice to get some ideas, experiences and so on. And of course if there are volunteers for case designing, experimenting with electronics, ... that would be awesome. If people will wait for me to do it all on my own, it will never happen!!

I will start the discussion by sharing some ideas that I have already been talking about with some folks behind the scene. My starting point was this device.

From @bobcroft I good a good advice: WAF is very important and to that end you should not have the vents on the front radii but rather on the top and bottom faces. A clever design would ensure that rising, heated, air from the Pi would draw incoming air over the sensor, thus common vents are entirely possible and would ensure that air at ambient temperature is moved over the sensor.

So the temperature sensor (BME280) should be an isoloated plastic part of the case, allow air passing it. And using the rising heat of the RPI to pull air through the temperature sensor air shaft:

image

Which would then start to look something like this:

image

Today a day of holiday to start installing LED strips in the dining room. Chances are pretty high that Node-RED will be used to control those :thinking:

Think something like this covers most of your requests
They vary in price but all you need is there

Nextion or similar type devices? Not running NR but communicating via MQTT. Has GPIO and enough brains for onboard sensors and indicators like buzzers.

About your Nr 10 requirement:

In the second part you mix the requirement with a solution.
Another option is to have 1-2 magnets in the device and a metal plate on the wall. This is what IKEA does for some of their TRADFRI buttons.

1 Like

I have been in contact with Daniel Eichhorn from https://thingpulse.com
He has been making ESP8266 and OLED/eInk based devices for the market. He created a whole toolchain to get the hardware made and then a e-shop etc.
And he thought the problem through on how to update the code on the devices even once the are installed by the clients.
But you are free to buy his stuff and write your own code.
He contributes here squix78 (Daniel Eichhorn) · GitHub and I use at least one of his libraries.
Maybe you want to talk to him about his experience and discuss some of his learnings if you plan to go down this road.

What I see in your requirements list is that you plan to have a powerful enough CPU in your device to run node-red. I suggest to look at a low power solution especially if you want to have 10 devices like this in your home. The total power consumption will be considerable which adds to the running cost.

May I suggest another direction?
Go for eInk as display.
Fetch data from a retained MQTT topic every 5 minutes.
Send data to the MQTT broker every 5 minutes.
React immediately to input.

Just a few thoughts

2 Likes

I have a pi with the touch screen mounted on it for use such as this. I have node mcu's mounted in different rooms with sensors and such that feed to a pi in the basement running node Red. The pi with the touch screen doesn't run node Red all it has is a browser that points to the pi in the basement. When it boots the browser pops up with the dashboard from the basement pi. It's not portable per se as there's no battery but I think you could find something that works. My wife wanted to be able to set temps etc. without firing up a computer and this works for her. Doesn't answer your question directly but maybe some of this may help.

Hi @E1cid,
Good catch! Never had a look at such devices before ...
Problem is that they (similar to a Raspberry touch screen), require a hole in the wall to hide all the electronics at the back:

image

Have heard people in the past that were using Nextion for home automation. But really would like to run NodeJs and Node-RED on top of the device...

Yes indeed the result is the same. I have seen that solution quite a lot while searching, and I have always been wondering if those magnets have a negative influence on the screen or so ...

Interesting. Not seen before during my search. Are those those touch screens?

Can you please explain that a bit more in detail what you mean?

Well I'm already full dedicated to node contributions. Had hoped to get some volunteers here to build something as a shared effort. I don't have time to make a big project of this unfortunately.

The reason why I want to run Node-RED on this device is that it allows me to control the entire device without me having to learn other technologies. I have bought in the last years a couple of esp32, nodemcu, ... But they are still in their boxes because I never find to time to start learning it.

And I want to tell to my familly and friends: it is all running 100% on Node-RED :wink:

But the cost of hardware with the abilities? And how about sharing data? Yes, I understand Node-Red "server" can share data with other Node-Red "server", probably via MQTT, but seems clunky for a per-room setup... not to mention updating... one... device/room... at... a... time.

As Node-Red is just the software... treat a control panel as a "smart sensor package" and you can still have an "all Node-Red setup".

PS, wish I could offer to actively assist as I want to "make more stuff", but mostly running in low energy "watch and absorb" mode for now.

I had a similar case and opted for a basic Android tablet running a browser in kiosk mode. Basic Android tablet are often cheaper than large screens with touch.

I played with two options:

  • Node-RED runs on another device like a Raspberry Pi or BeagleBone and the browser connects to this device via WiFi.
  • Node-RED runs on the same tablet along with the browser and the MQTT broker. However, it works fine with WiFi devices but I couldn’t connect Bluetooth devices like the SensorTag to the tablet.

Please refer to the sections Solution for three devices and Solutions for two devices from the project IoT with Node-Red.

3 Likes

Hi Bart, I wonder if you stumbled on this nice device in your quest for the holy grail..

https://wiki.seeedstudio.com/Wio-Terminal-Getting-Started/

1 Like

A tablet is indeed something I had also considered, since it has already most of the hardware build in. Without me needing to mess with electronics. And it can run Node-RED via Termux. However I didn't find a tablet based solution that:

  1. Had a temperature/humidity sensor (outside of the case so it can measure rather adequate room temperature).
  2. An easy way to power it, without using batteries.
  3. A nice "affordable" wall mount kit, that hides the wires (see previous point). Wall mount kits are most of the time ridiculous expensive.

Searching for the holy grail is much more easier. Believe me. Indiana Jones had an easy job :wink:

Yes I had seen that while searching. And also one of its competitors, the stackable solution m5stack:

image

Of course it cannot run Node-RED. Although - due to the low price - I might get convinced to start using one of both solutions. But not found a solution how to hide the power cable in a nice on-wall mounting with those kind of devices...

Hi,
such a project is in my backlog for years now, but only materialized in some hardware (TFT and eInk screens in various shapes and capabilities) on my workbench and a lot of research
.
even if your criteria 13 is a no go for a micro controller platforms my plan is to start a esp32 / c++ project. I think the ESP32 (depending on the model) is capable of the task (400k+ RAM, 2-8MB PSRAM, WLAN (and LAN option), fast SPI and even parallel LCD interfaces up to 16bit). The STM32s with there huge range of models could fit in here to and I have an STM32F746 DISCO board in my collection

With the ESP32-WROVER modules there is a solid CPU base and I was waiting for a single board solution with an min 3.2" capacitive touch screen and a small form factor I was sure someone in China will produce (and some enthusiasts on tindie notorious out of stock) sooner or later

And here they are in 2021:

On my desk (4.7" epaper 540x960 pixels, 16 gray levels (no color :frowning: strange touch option but some nicely placed buttons), battery options. Nice for a wireless on the desk mobile information display
image
On order: WT01-SC01 (3.5" tft 480x320, capacitive touch) 40 € Currently my favorite as it clicks a lot of checkmarks
image
on my wish list: WT-86-32-3ZW1 (320x320 tft nice case) 60€ (perhaps a goto solution a soon the foftware is ready)
image
and as a development platform a all in one dev board from espressif ESP32-S2-HMI-DevKit-1 ( 4.3-inch display with 800×480 resolution, I2C capacitive touch panel 16bit inferface!) 70€ (if I need a bigger screen)

So plenty of nice all in one hardware solutions now form 30-100€.

On the software side I'm following https://lvgl.io/ for a while now and beside the challenging setup I think it is a solid open source platform for a mcu dashboard. From the inferface side I plan to use MQTT / Homie as a base but create the network inferface plugable with websockets as an option.
BTW The modules form wireless-tag provides a LVGL based point and click development platform ( 8ms GUI Development Platform) but as may of these kinds of software I have my problems, this is why I don't like the nextion modules (mine is collecting dust somewhere)

Now I only have to find some time to give this a start (anyone interested in a collaboration feel welcome to contact me :wink:

Enough for a morning post :slight_smile:

@BartButenaers : Only a little tip. Don't use the BME280! It is so inaccurate (designed as a incredible accurate pressure sensor but not environment sensor) It appears (after research) that it looses the factory calibration if the reflow limits are not met precisely resulting in a temperature offset of up to 3°C! (the adafruit lib has a calibration function but my last research showed that it does not effect humidity accuracy which depends on precise temperature values). I use a BME680 (great IAQ sensor and human/animal presence sensor!) or my favorite TI-HDC2080 designed for the task.

Another one for tablet users: I use the open source android app (GitHub - thanksmister/wallpanel-android: WallPanel is an Android application for Web Based Dashboards and Home Automation Platforms)

2 Likes

Only a demo what the esp32 with LVGL is callable

This model is nice compact, case, comes with own power supply and there should be space to throw in an environment sensor as 4gpios are available.

More Details an be found here …

So I can procrastinate another month until my order maybe of this arrive :wink:

@BartButenaers i found out that it is totally fine to place the sensor on the underside of your case. There it is not effected by the heat of the screen and cpu and the flow caused by the heat of the screen help to bring room air to the sensor (before heated) So I think your idea of a separate channel could be over designed only providing a pocket of air without any flow. Professional panels for air conditioning only have small holes or slots on the underside where the sensor sits

3 Likes

Oh they are nice. And install into an electrical back box. Me like :astonished:

But I have to move my electrical Boxes from 1.1m to around 1.6m (or better add a additional one) … but it is always time to do some renovations like I’m currently doing

I know what you mean. We are currently designing a facial recognition system (Node-RED based) that will be deployed in hospitals. We designed our own wall mounting + enclosure kit in Fusion360 and sent a production order for a prototype unit a couple of days ago. There is a manufacturing process (example here) that requires no injection moulding. The cost and lead time are good for low volume production. We discarded 3D printing for quality and costs. Perhaps, for your particular use case 3D printing could be acceptable, after all ,a mounting kit, in general, will be hidden behind your device so that small imperfections from 3D printing process will not be visible. When you finalize the choice of the TFT screen or device that you will use I can give you a hand on the design of the wall mounting kit for 3D printing.

1 Like

Even if you get your power via your lan cable you still have to hide the cable. So a wall recessed electrical conduit and will be always necessary on the right height is always needed unless you get it battery powered and get the recharge problem solved. There is not such a thing like reasonable power over the air. Nikola failed and get crazy about that problem a long time ago. The MIT recently published a paper of power transmission over 2m with a loss of 50%. Nice but still 50% going somewhere else :thinking:
A 5v power supply for a tablet should be hide-able in a standard wall box

Bart, why not use an external sensor unit that chats to your device running node-red. That way you do not need to worry about connecting it to the room display.

There are several small temperature/humidity sensors that can be fitted behind pictures etc.

1 Like

Just learned that Sonoff will launch its own HMI panel soon in kickstarter.

I also use an Android tablet with Fully browser in kiosk mode. (1., 2., 3., 7. Wifi, with adapter maybe also 7. LAN, 8., 9., 10. (I bet, there are dozens of wall mounts for tablets available)

Fully browser plus version supports MQTT and you can use the camera and microphone to turn on the screen (6.) and both events are also published as MQTT, so you have at least these sensors.
I collect temperature and humidity data with a Zigbee based sensor from Aqara. (4.)
I still have to chaeck if the speaker is supported in browser mode. (5.)

But no 13. !!