# Project Overview ## Purpose This project will create a small standalone information display using an Arduino MKR1000. The device is meant to provide quick access to a few important data views on an SH1106 OLED screen with very simple physical controls. ## User Interaction Two buttons are planned: - `Next`: move to the next available screen or option - `Select`: confirm an option or trigger a context-specific action The exact behavior can stay minimal at first. A practical initial version is: - `Next` cycles through screens - `Select` toggles a secondary mode when needed ## Minimum Feature Scope The first usable version should include: - Time screen for local time - Weather forecast screen - Temperature screen using the AM2302 - Humidity screen using the AM2302 ## Suggested Screen Behavior To keep the interface simple on a small display: - Show one primary screen at a time - Keep text large and readable - Refresh local sensor data regularly - Refresh network-based data less frequently than local sensor data - Avoid cluttered layouts ## Data Sources ### Local data - Temperature from AM2302 - Humidity from AM2302 ### External data - Local time - Weather forecast The exact source and synchronization method for time and weather can be decided later during implementation. ## Non-Goals For Now These are intentionally out of scope for the initial documentation phase: - Final UI layout details - Library selection - Network/API implementation - Pin-level firmware implementation - Power optimization ## Open Items - Document exact wiring for the display, sensor, and buttons - Decide how local time will be synchronized - Decide where weather forecast data will come from - Define how button behavior should work on each screen - Confirm refresh intervals for sensor and network data