Almost all products need some or the other user interface for setting up the device in the production or to let the user interact with the device.
There are several ways to provide a user interface, some are given below:
- A desktop application running on PC OS (Windows/Linux/Mac, etc.) and the device are connected via interfaces like RS232 / USB / Ethernet / WiFi / BLE.
- An Android, iOS, Windows Mobile App connected to the device via WiFi/Bluetooth.
- Local display and keypad on the device itself.
- A dedicated IR/RF remote with keyboard and/or display.
- Another way is the web interface, which could be quite beneficial.
Web Interface is, as defined by PC MAG “ The interaction between a user and software running on a Web server. The user interface is the Web browser and the Web page is downloaded and rendered”
Image Courtesy: Last Minute Engineers.com
Let’s see how the web interface can give you a significant advantage:
- Cost: In order to implement web interface, there no big cost addition just you need to have connectivity interfaces like Ethernet / WiFi and MCU with a little more processing power and memory. The cost gets compensated as it is already eliminating the need for display/keypad/touch from the device, that’s a significant saving on device cost.
- Platform Independent: Web InWeb server runs on the device itself and can be accessed by any user having a PC/tablet/phone having a web browser. This is a huge advantage. You are not dependent on the host PC and its operating system. For a dedicated PC based software, the developer needs to test the software on various platforms(Windows/Linux/Mac/Android/iOS) but not with a web interface, generally, if web interface works on one browser, it will also work on other browsers.
- No separate software development for each platform like different PC / Mobile OS.
- No installation is required and hence no compatibility issues. Uptime is just a few seconds. Normally with a connected device, you will enter the IP address of the device and web page will be rendered in a few seconds and you can control the device.
Image Courtesy: diyprojects.io
- Easy Updates: For the upgrades, you are not dependent on the user to update the software. You just update your device firmware and new functionalities are available in the user interface.
- Easy to monitor: It is easy to capture the stats of which feature is getting used the most, so that product designer can learn and improve the experience with future updates.
- Rich UI: you can provide rich UI experience to your users based on the latest web technologies and frameworks available.
NOTE: this article was originally published on medium.com.