João Santos' Two-Microcontroller Project Brings Back the Pager with a Web-Connected Twist

"Don't buy cheap unsupported development boards," Santos warns at the conclusion of a neat text-messaging project.

Mechanical engineer and web developer João Santos is bringing back the pager, after a fashion, with a custom-built web-linked Arduino-based text messaging system — combining an Espressif ESP8266 for Wi-Fi connectivity with an Arduino UNO-compatible primary microcontroller.

"The purpose of this project is to allow the user to send short text messages that will then be received on a Wi-Fi [Espressif] ESP8266 [microcontroller], and displayed on an Arduino with an LCD screen," Santos explains of the project, which was inspired by classic POCSAG-style paging systems with a modern web twist.

This text paging system offers a web-based twist on the POCSAG concept, and a lesson in buying cheap cloned microcontrollers too. (📹: João Santos)

"The web application was developed in OutSystems, [as] not only am I very familiar with this development platform, but also because it provides a quick and free way of developing and deploying not only the main UI but also a database, backend, and a quick way to connect safely to my public IP without having to disclose it."

The web side of the application is simple enough: a landing page offers the user two fields, one for the sender's name and one for a plain-text message of up to 160 characters in length. "I added a safeguard on the backend that it only allows sending a message if none was sent for a certain amount of time," Santos adds. "I could, and probably should, have implemented some kind of captcha, but that was already going a bit out of scope for what I wanted to do."

A simple web app provides a way to transmit SMS-like messages to the pager. (📷: João Santos)

The receiving unit is made up of two microcontroller development boards, one with a Microchip ATmega328P and the other with an Espressif ESP8266. The reason for two boards: an unfortunate experience trying to run everything from the ESP8266, housed on a clone of a WEMOS Lolin D1.

"I soon discovered this is a very different development board than the Arduino UNO," Santos explains, "and just getting the Arduino IDE compiling for it was a pain! That’s part of the reason I decided on keeping the screen connected to the Arduino Uno, the hardware was already setup, and it would be easier to keep concerns separated."

A hidden admin interface provides a look at the message history, with the ability to retransmit any that didn't send correctly. (📷: João Santos)

The ESP8266, then, handles network connectivity over a Wi-Fi connection, sending received messages to an Arduino UNO compatible over I2C for formatting and display on an LCD1602 character-based display. Two buttons allow messages to be scrolled, using a resistor ladder to join both a single analog input, while a buzzer sounds an alarm every time a new message arrives.

"What I learned: don't buy cheap unsupported development boards, this project would have been way easier with an Arduino [Nano] 33 IoT and a I2C LCD screen," Santos notes in the full project write up, available on Medium.

ghalfacree

Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.

Latest Articles