diff --git a/openrtx/src/ui.c b/openrtx/src/ui.c
index ef7ceae7..987487ca 100644
--- a/openrtx/src/ui.c
+++ b/openrtx/src/ui.c
@@ -17,6 +17,43 @@
* along with this program; if not, see *
***************************************************************************/
+/*
+ * The graphical user interface (GUI) works by splitting the screen in
+ * horizontal rows, with row height depending on vertical resolution.
+ *
+ * The general screen layout is composed by an upper status bar at the
+ * top of the screen and a lower status bar at the bottom.
+ * The central portion of the screen is filled by two big text/number rows
+ * And a small row.
+ *
+ * Below is shown the row height for two common display densities.
+ *
+ * 160x128 display (MD380)
+ * ┌─────────────────────────┐
+ * │ top_status_bar (16px) │
+ * ├─────────────────────────┤
+ * │ Line 1 (32px) │
+ * │ │
+ * │ Line 2 (32px) │
+ * │ │
+ * │ Line 3 (32px) │
+ * │ │
+ * ├─────────────────────────┤
+ * │bottom_status_bar (16px) │
+ * └─────────────────────────┘
+ *
+ * 128x64 display (GD77)
+ * ┌─────────────────────────┐
+ * │ top_status_bar (8px) │
+ * ├─────────────────────────┤
+ * │ Line 1 (16px) │
+ * │ Line 2 (16px) │
+ * │ Line 3 (16px) │
+ * ├─────────────────────────┤
+ * │ bottom_status_bar (8px) │
+ * └─────────────────────────┘
+ */
+
#include
#include