A fun and simple home-pager via MQTT and Node Red

Originally I wanted to make a remote buzzer that could be controlled via Node Red. Very soon I came up with the idea to add an LCD to the remote buzzer. I ended up making something like a home-pager that can be used to flexible send beeps and messages via Node Red. I would like to share this in case someone is interested.

You can download all the schematics and esp8266 Arduino code via the next WeTransfer link ( Click Here )

The goal is to be able to send a simple JSON payload to a remote device and control a buzzer and display via Node Red. Just an easy way to send short messages to a I2C LCD. And send beeps in multiple ways, all controlled by a simple JSON message.

In the picture I've also added a Duppa Rotary encoder to be able to send some commands back to Node Red, but this part doesn't work yet. WIP

In short, if I want to display a message on the remote display you can do so by sending the next payload to the esp8266.

send_test_lines

  • "clear": If clear is set to 1 it will clear the full display.
  • "column0": This is a number between 0 and 15, it represents the column of the first line where the characters will start.
  • "text0" : Is the first line of the display.
  • "column1": This is a number between 0 and 15, it represents the column of the second line where the characters will start.
  • "text1" : Is the second line of the display.
  • "led": Is the RGB led for the Duppa Rotary ( currently this doesn't work yet )
  • "buzzer_msec": Is the amount of time in msec that the buzzer will be active.
  • "buzzer_repeat": Is the amount of times the buzzer will repeat itself. In this example the buzzer will beep 3 times with an interval of 100 msec ON, 100 msec OFF.

So in node red you can easily send messages to the display and or make the buzzer beep in multiple ways to pay your attention to an incoming message.

Or just type in a message in the Node Red UI and have those send to the display

UI

You can download all the schematics and esp8266 Arduino code via the next WeTransfer link ( Click Here )
Enjoy...

9 Likes

Nice.

And for anyone who doesn't want to cope with the C++ Arduino coding, this should be easily reproducible using several of the bespoke firmwares for ESP's such as ESPHome.

2 Likes

is it wifi ?

Yes it is WiFi, in the code you just fill out your SSID and Password and it will connect to your network. When the esp is powered on it will tell it is trying to connect. And once it is connected it will display that it is connected and waiting for an MQTT message.

I'm in the process of migrating my ESPs to ESPHome and tried exactly that yesterday! :sunglasses:

It supports the RTTTL protocol, so you can easily create melodies using a special syntax. No need to think of a home-made protocol. Combine that with an MQTT subscriber and you can receive and play arbitrary melodies.

1 Like