
GreatEmbeddo
Flash database engine for onboard software — crash-safe, statically allocated, under 20 KB.
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.