How we're different
We build protocol libraries and testing tools for SCADA and grid communications.
Correctness first
Add-on security can't make fragile software safe. We build in memory-safe Rust and design for correctness from the first line, so that malformed or hostile input is rejected, not exploited.
About RustTest like a hacker
Our smart fuzzing has exposed flaws in protocol stacks across the industry. We design our own code to prevent that class of defects, and fuzz it anyway.
Aegis FuzzerPerformance at any scale
Our asynchronous design handles thousands of concurrent sessions on a server, yet still fits on resource-constrained embedded Linux.
Protocol ScalabilityProven in the field
Our protocol code has run for years in deployed systems, talking to equipment from many vendors. Conformance testing keeps it that way.
DNP3 ConformanceAegis Fuzzer
Aegis is a protocol-aware smart fuzzer you can point at your own devices. It models the protocol under test and generates large numbers of intelligently malformed messages, uncovering reliability and security defects before your customers or an attacker do.
Read MoreDNP3 Conformance
dnp3c is our open source DNP3 conformance project. It runs the DNP3 IED Certification Procedure against an outstation unattended, so conformance is checked in CI on every commit, just as we do for our own DNP3 library. It also runs from the command line for testing at the bench.
Read MoreExpertise
We have deep experience in electric power, software engineering, and software security. We provide subject matter expertise, or contract to build portions of your product or platform.
Read MoreHave any questions for us?
Reach out to inquire about our products or to scope a services engagement with our team. We can structure most projects on a T&M or fixed-price basis to meet your needs.
Latest News & Articles
We love to blog about industry trends and software engineering. Check back often for new posts, or follow us on social media.

dnp3c: Open Source DNP3 Conformance Testing
We’ve released dnp3c, the DNP3 conformance test harness we’ve used internally for over a decade, as open source under the GPL. It runs the DNP Users Group’s IED Certification Procedure against an outstation, either by hand or completely unattended in CI.
Read More
The Case Against DNP3 SAv6 and AMP
DNP3’s new security protocol reinvents what TLS already provides, and it will be implemented by vendor teams that have historically struggled to safely parse basic DNP3 messages. Use TLS. It’s proven, audited, and your developers don’t need to be cryptographers.
Read More
Battalion Energy
I’m pleased to announce that I’ve joined Battalion Energy as cofounder and CTO. We’re building a cloud + edge controls platform focused on battery energy storage. There are so many things that excite me about this venture: Extremely talented founding team with a track record of building Awesome Things™. Building a modern and secure controls platform using 🦀Rust🦀 and webassembly! Disruptive business model in a rapidly expanding market. Company focus on open APIs, open ecosystems, and playing nice with others.
Read MoreWhat Others Are Saying
Don't just take it from us. Ask around. We've been working on software and security projects in electric power for over a decade.

"Adam is consistently leading the field on design and testing of industrial protocols and the latest development tool set innovations. Tech from Step Function I/O is a smart bet."
Bryan Owen, Security Architect, OSIsoft LLC

"Adam and the experts at Step Function I/O are more than just leaders in the industrial reliability and security space, they are renowned practitioners."
Ronnie Fabela, Co-Founder, SynSaber

“At EPRI, we have built a number of protocol drivers and device simulators for DER applications that use the OpenDNP3 library. We are very impressed by the high-quality library and documentation.”
Jithendar Anandan, Smart Grid Developer, EPRI