Ohm is a Java companion library to WPILib. We designed it to take full advantage of Java 8’s functional programming capabilities. Ohm is built around functional interfaces specialized for robot input/output (we call them streams.)
These functional interfaces place a layer of abstraction between hardware (sensors/motors) and control.
Ohm provides a suite of features that utilize the hardware abstraction to make control algorithms versatile and simple to use. We hope this will make algorithms such as PID Control, Motion Profiling, and the Adaptive Pure Pursuit Controller (

Thanks 254!) more accessible to low experience teams.
Special thanks to Jared Russell from the Cheesy Poofs for helping us get everything up and running, and to all of team 254 for their inspiring code and control algorithms. You can see their original code
here.
Ohm is far from complete, and we will continue to push out updates throughout the season. As a lowly group of high school students without a software mentor, we would love any feedback you have to offer us! We will stick around to respond and answer questions in this thread.
Enjoy Ohm!
Here is a link to the github repository.