Creating Embedded Kiosk Devices with EWB
May 17, 2023
It is possible to create small interactive kiosk stations/devices for user interfaction for about $100 to $150.
For example, we are using them for checking Student Cards and associated safety training course completion before allowing access to a Student Machine Shop – no need to manually look up in a book. Another use is for printer release monitors with FOB devices, and allowing staff to record their coffee consumption with FOBs. We have also used them for building maps, inventory input, parking spot registration (license plate registration), etc.
To create the system, we start with embedded computers like (hard to source) Raspberry Pis, or alternatives like Orange Pis, Banana Pis or Rock Pis with tiny monitors and various input strateiges.
The various 4GB or larger PI devices cost between $50 and $120 US, and we add an associated 7 inch monitor, optionally with touch screen capabilities (though you may not want that feature), these typically cost about $50. AliExpress is an inexpensive source for these devices, though you can source them through web sites, and often pay twice those prices on Amazon.
For input, you can use the touch screen. I often use them with card reader devices (barcode scanners, HID FOB readers, Mi Fare readers, etc.) that plug into the USB port and simulate keyboard input – no special drivers needed.
You will want to physically protect the device from tampering as someone with a USB keyboard (or through the touch screen), could enter numbers of their choice and defeat your security.
We use Debian-based Linux on the PI, but any OS could work, we like it because we can automate many setup tasks, remotely manage and fully firewall the device. We start Chrome in Kiosk mode (no close button and other security enhancements), and have the home page set to the EWB application on the server.
From there, most keyboard-emulating FOB readers and barcode scanners send the string of characters followed by a carriage return. Simply place a TEdit as the first Tabbed entry on your form. The size can be 1 pixel wide and high so the input is not visible, and use the OnKeyDown to detect the carriage return tailing the string and thus acting on the input. Other than that, it’s really a standard web page, typical EWB programming which communicates with your server to perform actions..
We’ve also implemented this using iPads and Android tablets, but they are usually more expensive and the hardware tends to fall out of support cycles a few years faster, and they usually lack Ethernet options which are more secure. So I recommend using the PIs instead except for inventory. Tablets and phones are better when you need mobility.
Of course, you could also use an old desktop or laptop computer, but they tend to be bulky and look less impressive.
If the monitor includes audio output, just play an MP3 if you want an audio signal.
The trick is to keep your user process simple, few or no keystrokes. Minimal menus. A 7 inch screen is small, don’t clutter it.