Project 19: Cardputer UX Systems Project (Menu Patterns, Latency, Error UX)

Build a product-grade UX layer for tiny-screen embedded workflows with low input latency, clear error recovery, and accessibility-aware defaults.

Quick Reference

Attribute Value
Difficulty Advanced
Time Estimate 1-2 weeks
Main Programming Language C
Alternative Programming Languages C++, TypeScript (prototype docs)
Coolness Level Level 3
Business Potential Level 5
Prerequisites UI state flow basics, rendering pipeline familiarity
Key Topics Menu design, key-to-pixel latency, error UX, perceived speed

1. Learning Objectives

  1. Design menu patterns optimized for constrained interaction.
  2. Measure and reduce input-to-feedback latency.
  3. Standardize error states with actionable recovery.
  4. Improve perceived performance with honest UX cues.

2. Theory

2.1 Information Architecture on Tiny Surfaces

The best menu is not the most complete tree; it is the one that minimizes path length for common tasks.

2.2 UX Reliability in Embedded Systems

Users interpret reliability through responsiveness and recovery clarity, not internal logs.

3. Specification

  • Home/Tools/Settings information architecture.
  • Key latency instrumentation with p95 target.
  • Error dialog template with consistent recovery actions.

Output:

I ux: key_to_action p95=41ms
I ux: action_to_frame p95=19ms
I ux: boot_to_interactive=1370ms
I ux: recovery_success_rate=98.6%

4. Architecture

[Input Router] -> [Intent Mapper] -> [State Machine]
                                 -> [Render Scheduler]
                                 -> [Error Presenter]

5. Implementation Guide

Core question:

“How do I make this device feel fast and understandable to real users?”

Design questions:

  1. Which tasks deserve one-keystroke shortcuts?
  2. Which errors block flow and why?
  3. How do boot visuals support perceived speed?

6. Testing

  • Scripted interaction latency test suite.
  • Error scenario walkthroughs.
  • Accessibility pass for contrast/font/input ergonomics.

7. Pitfalls

  • Deep nested menus with poor discoverability.
  • Latency telemetry missing from release criteria.
  • Error messages with no next action.

8. Extensions

  • Add adaptive quick-actions based on frequency.
  • Add left-handed/right-handed keymap profiles.

9. Completion

  • Top tasks require minimal navigation.
  • Latency goals are measured and met.
  • Error flows are recoverable and consistent.