Skip to main content

GreatEmbeddo

Flash database engine for onboard software — crash-safe, statically allocated, under 20 KB.

<20 KB
Code footprint
C99
Generated output
0 heap
Runtime allocation

GreatEmbeddo is a flash database engine built for embedded systems. It generates C99 code from schema definitions, operates with zero heap allocation, survives power loss through write-ahead logging, and fits in under 20 KB.

Space missions demand storage that is deterministic, compact, and resilient. Whether buffering telemetry between downlink windows, storing instrument parameters that must survive reboots, or logging fault events for post-mortem analysis, the database has to behave predictably in conditions where a corrupted filesystem is not an option.

Space Use Cases

Housekeeping & Telemetry Buffers

Buffer HK telemetry between downlink windows with guaranteed integrity across unexpected resets.

Parameter & Calibration Tables

Versionable instrument configuration that survives power cycles and firmware updates.

Event & Fault Logs

Crash-safe append-only log for post-mortem analysis of anomalies.

Mission Data Staging

Flash-backed staging of payload data before compression or downlink.

Onboard Autonomy State

Persistent decision state for tip & cue, retasking, and other autonomous behaviors.

Command History

Versioned record of executed commands with schema migration safety.

Configuration Management

Structured, queryable configuration for deployed software across a satellite fleet.

Science Data

Suited to science products where structure and queryability matter more than raw throughput.

Key Features

Static Memory Allocation

All buffers allocated at compile time. Zero heap usage, zero dynamic allocation, bounded worst-case memory.

Crash-Safe Operation

Write-ahead logging with CRC32c checksums protects data integrity across unexpected power loss.

Schema Versioning

Append-only DDL enables safe firmware updates across distributed device fleets.

Minimal Footprint

Under 20 KB of code space. Pure C99 output with no libc, POSIX, or C++ dependencies.

Why It Fits Space Constraints

Space software has to be predictable. GreatEmbeddo keeps every allocation decision at compile time, so the memory footprint is known before flight. The crash-safe log handles unexpected resets gracefully — whether from radiation events, power glitches, or planned watchdog resets. Pure C99 output compiles on any embedded toolchain: GCC, Clang, IAR, Keil. And because schemas are append-only, database structures evolve across a mission's lifetime without losing stored data or risking corruption on firmware uplinks.

Interested in GreatEmbeddo?

Visit the product site for documentation and downloads, or contact us for integration support.