REVELCODE

A programming language purpose-built for hardware control.

RevelCode delivers performance and safety, without requiring software expertise to write the code.

Request a demo
1 CONTROL

Built the way engineers already think.

A sequence reads like a numbered list of steps: open a valve, wait until pressure passes 500 psi, close it, wait, vent.

2 ALERTS

Alerts defined with three lines of code.

An alert fires on the exact control cycle its trigger condition is met, with trigger logic that reads like plain math, complete with severity levels.

3 Safety

Control code that can’t crash.

If it compiles, it can’t crash — that's the guarantee. No runtime exceptions: infinite loops, unbounded recursion, and divide-by-zero all get caught.

4 EXECUTION

Concurrency and determinism made easy.

Code runs in the order you wrote it, at the cycle rate you set. Engineers never have to think about threads, sync points, or locks.

Control logic resilient to hardware changes.

Revel abstracts away the details of the underlying hardware — code reads and writes to hardware behind those channels, allowing engineers to replace the hardware without changing your automation.

USE CASES

From precise control to safe shutdown.

0
Stateful code reload

Nine hours into a 12-hour proof test, an alert threshold turns out to be wrong. Edit it, confirm in two clicks, and the test carries on where it was. If a change can’t keep state, Revel rejects it and leaves the system untouched.

*Can be disabled if needed

0
Code templates

Write a controller once and reuse it for every heater on the loop, each with its own setpoint.

0
Sustained trip limits

Close a valve when a temperature stays above its limit for two seconds, so a noise spike doesn’t end your test.

Using RevelCode

Request a demo
Time is what matters most, and that means development speed. Any tool you adopt had better speed your development up, not slow you down. Revel falls solidly into the 'speed you up' category.
Scott Macklin

CTO, Gravitics Inc.

RevelCode is pretty easy to work with and you don’t need a huge programming background. So it gave a wider portion of the team the ability to implement tests and run things.
Matt Perkins

VP of Engineering — Astro Mechanica

I started using RevelCode on the Sodium Test Loop, which is a system with a whole bunch of heaters. I was able to develop the code for each of them without the typical copy-paste errors and typos that I usually faced while programming. Being able to iterate quickly through changes showed me that Revel was really powerful.
Ben Anderson

Instrumentation and Controls Engineer — Aalo Atomics

Our new-grad engineer was able to author the test control software, set up our command and control interfaces, and execute testing completely on his own.
Ross Doherty

Co-Founder & COO, Orbital Operations

Join the mission

View open roles
0
What is RevelCode?

RevelCode is a compiled, domain-specific programming language for real-time hardware control and test automation. It reads like Python, runs on a fixed, deterministic execution cycle, and catches errors like divide-by-zero and infinite loops at compile time, before code ever touches hardware.

0
Why does Revel use its own programming language?

Physical systems need a language designed for them, and many teams still use decades-old tools or in-house frameworks built on general-purpose languages. RevelCode reads like Python, so the engineers who know the system can write the logic. It runs on a fixed deterministic cycle, and its compiler rejects faults before anything runs.

0
Why does deterministic execution matter for hardware testing?

Deterministic execution means RevelCode runs on a fixed, guaranteed cycle with no unpredictable delays. On a rocket engine test stand, a valve that opens 200 microseconds late can be the difference between hardware that survives and hardware that doesn't. A guaranteed cycle also means every telemetry timestamp is trustworthy.

0
Does RevelCode prevent bugs from reaching hardware?

Yes. RevelCode's compiler rejects things like potential infinite loops, compile-time divide-by-zero, and infinite recursion before your code will even build. Conditions that can only be known at runtime, like a divide-by-zero from a live sensor value, are handled automatically and routed to an error channel instead of crashing.

0
Do I need a software engineering background to write RevelCode?

No. RevelCode is built from concepts test and controls engineers already use: loops that run every cycle, like a PLC scan, sequences that list steps in the order they happen, and state machines for operating modes. Engineers with no formal software training have written and owned their own automation in RevelCode.

0
Does RevelCode replace LabView?

No. Revel integrates with LabVIEW, so you can bring RevelCode into an existing LabVIEW environment and keep what's already working.

0
Can I use Git for version control with RevelCode

Yes. Every RevelCode file is plain text, so the RevelCode Editor's built-in Git integration tracks, diffs, and branches your changes like any other codebase. Because it's plain text, AI tools can work with it directly too, including a Claude skill built specifically for RevelCode.

0
Can I test RevelCode before it runs on real hardware?

Yes. RevelCode ships with built-in unit testing in the code editor. You can compile your code, read and write channels, step forward in simulated cycles, and check the results before anything touches hardware. It's not yet wired into off-box CI/CD pipelines, but you can run and check tests directly in your development environment today.

0
Can RevelCode connect to hardware Revel doesn’t natively support?

Yes. The custom driver SDK lets you build a driver for a novel or unsupported device, and once it's built, that device shows up as a channel like any other, with full access from RevelCode. A separate channels API also lets external systems and scripts read and write RevelCode data directly.