The Engines Underneath
Every platform and application runs on the same native Rust engines, each owning one domain: mechanics, imagery, signals and hardware. A fix or a speedup in one reaches every product at once.
One Domain Each
A high-performance orbital mechanics package
keplime is Citra’s astrodynamics library. Every product propagates, transforms and fits orbits through it, so a prediction in the field matches the one in the catalog.
Propagation. SGP4 and numerical integrators behind one interface, with force models in one place.
Frames and Time. Coordinate frames, time scales and ephemeris, converted the same way everywhere.
Orbit Determination. Batch fits and EKF and UKF filters with covariance, association and conjunction.
High-speed image processing
pixelemon is native Rust image processing and blind plate solving: FITS, detection, astrometry, stacking and photometry. The algorithms are written here, with no third-party solver underneath.
Blind Solving. Fields from 0.2° to 60°, fisheye included, solved with no prior; a hint only makes it faster.
Fails Cleanly. A frame it cannot solve is reported as unsolved, never as a confident wrong answer.
Detection to Photometry. Sources found, matched to the catalog, and measured, from raw frame to calibrated result.
Real-time signal detection and characterization
signalemon is Citra’s RF signal processing: generation, filters and channelizers, spectrum estimation, carrier detection and modulation classification, carrier recovery and tracking, and geolocation across sites.
Spectrum and Carriers. Welch spectra, carrier detection, and classification from BPSK to 64-QAM.
Channelization. Root-raised-cosine filtering, channelizers and FFT resampling for wideband captures.
Geolocation. Cross-ambiguity, TDOA and FDOA, with association of one emitter across sites.
Direct hardware control in native Rust
limedrive drives cameras, mounts and radios by speaking their wire protocols itself, with no vendor SDK in between.
USB3 and GigE Vision. Discovery, GenICam feature access and streaming, implemented from the standards.
Capture to Pipeline. Frames come off the sensor as images pixelemon reads directly, single shots or a continuous stream.
Mounts and Time. Mount homing and a tracking servo, with host clock quality recorded per capture.
Put the engines to work on your mission.