PocketMage SDK Documentation

PocketMage SDK Documentation

PocketMage apps are ELF files the host firmware loads at runtime and runs in-process. These docs cover how to write an app, every component of the app API, the binary contract, the build tooling, the symbol surface, and packaging.

Guides
API reference
App ABI
Build tooling
Symbols
Publishing

Guides

Start here. Walkthroughs of the whole app model.

Making an app

From pm new to a running ELF: scaffold, build recipe, delivery tar, and the host loader.

Open
App lifecycle

Entry points, the host/app export model, APP_INIT, and exiting cleanly.

Open
Rendering

The two-display model, the buffered E-Ink refresh rhythm, and the scroll loop.

Open
Guides overview

Guide index and cross-links into the deep references.

Open

API reference

Every header the SDK publishes, with semantics. Start at the overview.

API overview

The umbrella header, the PM_TARGET_HOST/PM_TARGET_APP split, and how to read the per-component pages.

Open
Displays

OLED, E-Ink, Font, Layout, UI helpers.

Open
Input

Keyboard, Touch.

Open
System

Sys and globals, SD card, Clock, Buzzer, WiFi, i18n runtime.

Open

The binary contract

How the framework itself is built and shipped.

App ABI

The binary shape the loader accepts: format, entry, load strategy, failure modes.

Open
Building Apps

A Makefile including tools/app.mk is the whole build system. Toolchain, targets, icon.

Open
Symbols

The host-export surface an app’s undefined list resolves against, and how to change it.

Open
Publishing

The delivery tar, the 40x40 icon, assets, and what APPLOADER does with them.

Open
i18n catalogs

Catalogs, the generator, and the merge rules that keep string IDs stable.

Open
Migration

Moving a pre-ELF app to the runtime-load flow.

Open

Start here

  1. Read the guides, then the API overview.
  2. Read the App ABI contract.
  3. Set up the build toolchain.
  4. Check what your app resolves against: Symbols.
  5. Ship a tar: Publishing.
  6. Port existing code: Migration.