Micro-toolkit

microota

OTA staging needs an explicit state machine around erase, chunk receipt, verification and commit.

A heap-free callback-driven core validates image metadata and read-back CRC before requesting a durable platform commit.

DevelopmentMITC99
Last verified
Not audited against current README/docs
Platform scope
Portable C99; integration depends on caller-provided adapters

What it solves

OTA staging needs an explicit state machine around erase, chunk receipt, verification and commit.

How it works

1Image metadata2receive chunks3read-back verify4durable commit

Use it when

Stage fixed-size OTA chunks
Verify the complete staged image by read-back
Reconcile an indeterminate commit result

Quick Start

#include "mota.h"
/* Initialize mota_t with synchronous erase/write/read/commit callbacks. */
/* Begin, write exact chunks, verify, then commit. */

Engineering evidence

  • The repository documents exact state, chunk, power-loss and reentrancy contracts

Known limits

  • No transport, bootloader, filesystem or crypto implementation
  • CRC32 is corruption detection, not authentication
  • Interrupted downloads do not resume; the next begin erases staging
  • Commit recovery and rollback policy belong to the platform