# What is Modality?

Modality is a toolset for discovering and troubleshooting risk in connected embedded systems.

# Why Use Modality?

Modality's automated experimentation tools do more than reduce testing labor: troubleshooting, validation, and TestOps analysis are all accelerated. Modality's novel approach to system observation provides precise insight into what is happening and why. Because Modality makes system specifications executable, developers and test engineers can take direct action from each other's work.

# Example Use Cases

  • Developers use Modality probes to illuminate their entire system and reduce the time spent building testable interfaces.

  • Test engineers use Modality queries to verify hundreds of complex system requirements with a single command.

  • Developers use Modality generative testing to discover counterintuitive systemic issues that could have escaped human-designed tests.

  • Test engineers use Modality mutators to rapidly replicate hazardous test conditions in both simulation and actual hardware.

  • Development teams use Modality metrics to isolate the cause of bugs much faster than traditional debugging methods.

# What Does Modality Do?

Modality automates experiments to find conditions that would cause unexpected incidents. Modality fits into component software, captures exact system behavior, and alters behavior at runtime. Modality generates queryable data that engineers can use to analyze their systems.

A diagram of Modality's process, introducing mutations into your system, observing many conditions, and returning sophisticated analysis

# Where Does Modality Fit?

# Modality embeds into your system

Modality's lightweight SDK is inserted into embedded systems, alongside existing testing and debugging tools. It's designed to support everything from bare-metal microcontrollers to high-performance computing nodes. If you don't see your system here, reach out! It's easy for us to add support. (opens new window)

Language Bindings
C
C++
Python
Rust
Operating Environments
Bare-Metal MCUs
Linux (opens new window)
nuttx (opens new window)
FreeRTOS (opens new window)
Mbed (opens new window)
Platform Architectures
ARM Cortex-M, -A, -R
Intel IA32, IA64
PowerPC
RISC-V
TriCore (beta)

# Engineers use Modality wherever they work

Modality's user-facing tools run wherever Windows, Linux, or Mac OS X can be found.

# Modality integrates with your development ecosystem

Modality is compatible with the tools you already use. Both developers and TestOps can easily integrate Modality into their current workflows.

Application Frameworks
ROS (opens new window)
PX4 (opens new window)
Simulink (opens new window) (beta)
CI/CD Servers
GitHub Actions (opens new window)
Jenkins (opens new window)
Test Frameworks
OpenTAP (opens new window)

# Where Can I Get Modality?

To schedule a demo or access a trial version of Modality, contact Auxon here. (opens new window)

# How Do I Use Modality?

  1. Contact us for access to Modality. (opens new window)

  2. Get started by moving through these setup guides.

  3. Make use of Modality's great power and flexibility:

    1. How to Find Undiscovered Bugs with Modality

    2. How to Investigate the Cause of A Bug with Modality

    3. How to Reproduce a Bug with Modality

    4. How to Analyze Sessions

    5. How to Design, Run, and Analyze Experiments

  1. Have questions or feedback? Message us here. (opens new window)