<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>UI Layout Patterns on Embedded Systems Development</title><link>https://applied-ee.github.io/embedded/docs/screens-displays/ui-layout-patterns/</link><description>Recent content in UI Layout Patterns on Embedded Systems Development</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://applied-ee.github.io/embedded/docs/screens-displays/ui-layout-patterns/index.xml" rel="self" type="application/rss+xml"/><item><title>Layout Strategies for Small Screens</title><link>https://applied-ee.github.io/embedded/docs/screens-displays/ui-layout-patterns/small-screen-layout/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://applied-ee.github.io/embedded/docs/screens-displays/ui-layout-patterns/small-screen-layout/</guid><description>&lt;h1 id="layout-strategies-for-small-screens"&gt;Layout Strategies for Small Screens&lt;a class="anchor" href="#layout-strategies-for-small-screens"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Designing for a 128x64 OLED or a 240x320 TFT is nothing like designing for a phone screen. Every pixel matters, text choices are constrained, and there&amp;rsquo;s no room for decorative padding. But small doesn&amp;rsquo;t mean primitive — with careful layout, these tiny screens can communicate a surprising amount of information clearly.&lt;/p&gt;
&lt;h2 id="information-hierarchy"&gt;Information Hierarchy&lt;a class="anchor" href="#information-hierarchy"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The first question for any small screen UI is: what needs to be visible &lt;em&gt;right now&lt;/em&gt;? On a 128x64 display, roughly 4 lines of medium text fit or 8 lines of tiny text. That&amp;rsquo;s the entire information budget. Prioritize ruthlessly:&lt;/p&gt;</description></item><item><title>Menus &amp; Navigation Patterns</title><link>https://applied-ee.github.io/embedded/docs/screens-displays/ui-layout-patterns/menus-and-navigation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://applied-ee.github.io/embedded/docs/screens-displays/ui-layout-patterns/menus-and-navigation/</guid><description>&lt;h1 id="menus--navigation-patterns"&gt;Menus &amp;amp; Navigation Patterns&lt;a class="anchor" href="#menus--navigation-patterns"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Once an embedded display shows more than a single static value, navigation is needed — a way to access different screens, change settings, or trigger actions. The input devices on embedded projects (typically buttons and rotary encoders) are far more limited than a touchscreen, which makes the navigation design both more important and more constrained.&lt;/p&gt;
&lt;h2 id="rotary-encoder--button"&gt;Rotary Encoder + Button&lt;a class="anchor" href="#rotary-encoder--button"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The rotary encoder with an integrated push button is the most versatile input device for small-screen UIs. Rotation scrolls through options, and the button confirms a selection. This maps naturally to list menus: rotate to highlight an item, press to enter. For value editing, the same pattern works: press to start editing a parameter, rotate to change the value, press to confirm.&lt;/p&gt;</description></item><item><title>Data Visualization on MCUs</title><link>https://applied-ee.github.io/embedded/docs/screens-displays/ui-layout-patterns/data-visualization/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://applied-ee.github.io/embedded/docs/screens-displays/ui-layout-patterns/data-visualization/</guid><description>&lt;h1 id="data-visualization-on-mcus"&gt;Data Visualization on MCUs&lt;a class="anchor" href="#data-visualization-on-mcus"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Displaying raw numbers on a screen is useful, but visualizing data as charts, gauges, or graphs makes patterns immediately obvious. The challenge on MCUs is doing this with limited resolution, limited RAM (no floating-point-heavy chart libraries), and limited CPU time. The good news: even simple visualizations are surprisingly effective on small screens.&lt;/p&gt;
&lt;h2 id="sparklines"&gt;Sparklines&lt;a class="anchor" href="#sparklines"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A sparkline is a minimal line chart without axes or labels — just the data trend rendered as a thin line across a small area. It&amp;rsquo;s perfect for showing &amp;ldquo;what has this value been doing recently?&amp;rdquo; in a compact space. Implementation is straightforward: keep a circular buffer of N recent values (where N equals the pixel width of the sparkline), scale the values to the pixel height, and draw a line connecting adjacent points.&lt;/p&gt;</description></item></channel></rss>