We're a team of former NASA and DoD researchers and flight test engineers. We develop flight control and data acquisition systems that we would like to use - flexible and easy to configure, tight integration with MATLAB and Simulink, and a strong focus on data quality, determinism, and robustness. Our products are focused on meeting the needs of the flight research, commercial UAS, and emergent eVTOL markets. If you're interested in our systems, please check out our website or contact us.
Our Research Flight Management Units (FMU-R) for UAS use our own open-source software stack, which ensures good data quality, exceptional determinism, and a fixed latency between sensing and actuation. The software stack integrates with Vehicle Management System (VMS) software developed in Simulink or C++ and includes an open-source Simulink simulation for development, testing, and validation. MAV Link communication is support enabling telemetry and control from QGroundControl and Mission Planner ground stations.
- Build Tools: how to configure an environment to build the flight software.
- Flight Software: flight software and documentation.
Many of our sensor drivers and data processing libraries are compatible with Arduino and are available under a BSD-3 or MIT license.
- Invensense-IMU: MPU-6500 and MPU-9250 IMUs.
- VectorNav: VN-100, VN-200, and VN-300 IMU/INS over SPI communication.
- HG4930: Honeywell HG4930 IMU driver over RS422.
- SBUS: Reading from SBUS receivers and sending commands to SBUS servos.
- uBlox: UBX packets from uBlox GNSS receivers.
- LIS3MDL: Reading from the magnetometer.
- BMP3xy: BMP3XY series static pressure transducers.
- BME280: BME280 environmental sensor.
- BMI088: BMI088 6-axis IMU.
- MS4525DO: MS4525DO pressure transducers.
- AMS5915: AMS5915 pressure transducers.
- AMS5812: AMS5812 pressure transducers.
- Ainstein-USD1: RADAR altimeter.
- MAX31865: RTD front-end driver.
- TruStability RSC: Honeywell TruStability RSC pressure transducer.
- Terabee TeraRanger Hub: Terabee TeraRanger hub time of flight sensor for ranging and obstacle avoidance.
- Eigen: Arduino port of the Eigen matrix math library.
- Units: constants and unit conversions.
- Array Num Elements: returns the number of elements of a C-style array.
- Circular Buffer: Circular buffer.
- Polytools: polyfit and polyval.
- Statistics: real-time and moving window statistics.
- MAT v4: write variables in MATLAB v4 mat file format from Eigen and C++ arrays, matrices, and vectors.
- Julian Date: converts from year, month, day and hour, minute, second to a Julian date.
- Decimal Year: converts from year, month, day and hour, minute, second to a decimal year.
- MAVLink: an easier to use MAV Link implementation.
- Framing: Frames packets with start byte, end byte, and checksum to make data transfer and storage easy.
- ULEB128: Unsigned little endian base 128 (ULEB128) implementation, which stores arbitrarily large unsigned integers in a variable length format
- LEB128: Signed little endian base 128 (LEB128) implementation, which stores arbitrarily large signed integers in a variable length format.
- IMAP: Computes the number of bytes, scale factor, and bias to map a floating point value to an integer, given a range and the desired precision, useful for compression.
- Checksum: Implements a Fletcher16 checksum.
- Filter: Rational transfer function and IIR filters.
- World Magnetic Model: World Magnetic Model.
- Navigation: State estimation filters and navigation transforms.
- Air Data: Airspeed, altitude, temperature, and density.
- Control: Gain and PID control laws.
- Excitation: pulse, doublet, chirp, and multisine excitations.