FreshPod Embedded Touchscreen HMI
We redesigned and engineered FreshPod India's complete embedded HMI experience — building custom DGUS tooling and a binary UART protocol to render dynamic Razorpay UPI QR codes on non-browser hardware across 14 synchronized machine workflow screens.

What Makes This System Unique
Redesigned DWIN DGUS display tools to accept dynamic Razorpay UPI QR codes natively over binary UART
14 dedicated HMI screens covering the entire payment-to-sanitization customer journey
Tight synchronization between physical machine state (UV/fog/fans/locks) and on-screen graphics
Public-facing UX designed for intuitive step-by-step guidance with zero prior technical knowledge
Integrated payment lifecycle: QR generation → display → webhook verification → automated door release
Overview & The Constrained HMI Challenge
For Freshpod India's automated helmet sanitization machine, we designed and implemented the complete customer-facing HMI/UI experience using the selected DWIN DGUS touchscreen platform. Because the DGUS platform lacks the flexibility of a browser engine (no HTML/JavaScript), we engineered the interface around DGUS's native capabilities and developed a custom UART communication layer between the display and the ESP32 machine controller.
UI/UX Designed for a Physical Machine
Unlike a web application, every screen corresponds to a real-world machine action. We designed the experience around the full customer journey: Welcome → Payment → Door Access → Helmet Placement → Cleaning → Sterilization → Drying → Sanitization Complete → Helmet Retrieval → Completion. The UI provides clear visual cues at every stage so users understand machine status, wait times, and when door access is permitted.
14 Custom Machine Screens
We designed and implemented 14 dedicated HMI screens covering customer interaction, payment states, operation progress, timers, error messages, and maintenance service screens. All layouts and graphical elements were configured directly within the DWIN DGUS environment.
Solving the Dynamic QR Challenge Over UART
The hardest technical piece was rendering dynamic payment QR codes on a display with no browser engine. We built a communication pipeline where the cloud backend generates dynamic UPI payment data, transfers it through the ESP32 firmware, and transmits it over UART using the DGUS protocol to render directly on the display for customer scanning.
Firmware ↔ HMI State Synchronization
The ESP32 controller commands screen transitions in real time as sensor feedback changes — synchronizing UV sterilization, fogging, thermal drying, door-state monitoring, and customer completion screens with absolute physical precision.
Validated Performance In The Real World
- Dedicated embedded HMI combining UI/UX, DWIN DGUS, UART, ESP32 firmware, and dynamic QR payments
- Delivered within the constraints of a display platform with no native web support
- Running reliably across 190+ commercial machines in public service
