A push-to-talk radio on a 3.49-inch bar of a touchscreen, 172 x 640, held upright like a walkie-talkie. Hold the button under your thumb and speak, and the board it is paired with plays your voice; let go, and you hear theirs. The two boards talk straight to each other over ESP-NOW, on Wi-Fi's radio: no router, no phone and no account anywhere.
The face is a drawn picture with ordinary widgets over it, so every part of it can be found and changed. The button's red and green glow are two pictures, shown while "this board is talking" and "the other board is talking" are true. The two segmented meters are bars bound to the microphone's level and the speaker's, brought to whole segments by a formula. PAIR, LOCK and the cog are buttons with one action each, and the BOOT button on the edge of the board talks too. The small handset mark is the Two-way radio widget itself, in the colour of what the link is doing.
The display's bottom line is link quality: four bars and a figure. It is not signal strength but whether what is sent is arriving - full when everything gets through with signal to spare, lower as the other board gets further away, lower still once packets are being lost, and empty when it does not answer, which a handset knows within a few seconds because the two check with each other once a second. The bars are eight small panels: four dim steps, and over each a lit one whose Hidden is bound to "Link quality bars" with a formula such as x < 3. The cog's screen has the figures behind it: the other board's signal in dBm, and packets sent, not acknowledged, heard and missed.
The battery at the top right is a bar with an outline and a sliver for its tip, the same bar again in red over it below a fifth, and a percentage. The board reads the cell's voltage on its battery input, and a variable turns that into a percentage with a formula - 3.3 V taken as empty, 4.2 V as full - so it is an estimate, and it reads full while USB is plugged in. The voltage itself is on the cog's screen, to calibrate by.
To use it: put this design on one board and it, or the Round Handset example, on another. Press PAIR on both within half a minute, then hold the button and talk. The pairing is kept through a power cut. The cog opens volume, microphone sensitivity and Forget. What each board sends is brought to one loudness first, so two different microphones are heard the same.
Drawn for Waveshare's ESP32-S3-Touch-LCD-3.49, which carries a speaker and two microphones. It is an Arduino export, and it has run on the boards it is drawn for: as a pair with the Round Handset example, and as two of these paired with each other, with the battery and the link figures reading on both. The Two-way radio widget is part of Pro; the design is free to open, restyle and press Play on.
About this design
Two-way Radio: Walkie-talkie is an LVGL interface for the Waveshare ESP32-S3-Touch-LCD-3.49 (AXS15231B 172 x 640, AXS15231B (touch half) touch), with 2 screens and 49 widgets, made for Arduino (C++) on LVGL 9.
Screens
Handset
Setup
Hardware and build
Board
Waveshare ESP32-S3-Touch-LCD-3.49
MCU
ESP32-S3
Display
AXS15231B
Resolution
172 x 640
Touch
AXS15231B (touch half)
Graphics library
GFX Library for Arduino
LVGL
v9
Exports to
Arduino (C++)
Peripherals
TCA9554 / PCA9554
Libraries
lvgl, ESP8266Audio, GFX Library for Arduino
Purchase this boardAffiliate link: LCD Wizard may earn a commission if you buy through it.
Notes from the author
One end of a push-to-talk radio between two boards, on a bar of a screen held like a walkie-talkie: hold the button and the other one plays your voice. It shows its battery and how well the link is working. Pairs with the Round Handset example, or with a second board of its own kind.
Using it
Open a copy in the designer and it is yours to edit: restyle the screens, move it to another board, and export the Arduino (C++) project. Designing is free, and a copy needs no account. Open the designer.