Kyberlib provides unified ESC wrappers with consistent Kotlin-style API calls. Have you ever wanted a Victor SPX to follow a Spark MAX? Now you can. Also, gone are the days of CAN IDs. Kyberlib allows you to store device IDs in a central registry, and will automatically look them up when declaring motor controllers by a device name.
Kyberlib allows for conversion between units of distance, angle, velocity, and more. All without messy function calls. For example, 4.feet.inches => 48. It also includes some useful operators, like finding the shortest route between two angles.
Your team has made it to the last tiebreaker match of finals, but when the match begins you realize that a cable for your intake wasn't plugged back in after some routine maintenance, rendering your robot unusable. With Kyberlib's diagnostic tools, you can write automated tests for mechanisms that can be executed in queue before each and every match to prevent this very scenario. It's like unit testing, but for actual hardware. The diagnostic framework is built on WPILib's command-based architecture, so writing them is already familiar.
Kyberlib adds a variety of animations compatible with WPILib's new AddressableLED class. Multiple animation regions on a single strip, conditional regions for behavior-driven animation, and region transparency to overlap multiple animations will make your robot shine. Literally.
- Limelight wrapper
- Automatic WPILib motion profile regeneration
In build.gradle
:
- Add
maven { url 'https://jitpack.io' }
to yourrepositories { ... }
block - Add
compile 'com.github.DurhamAcademy:kyberlib:master-SNAPSHOT'
to yourdependencies { ... }
block
master-SNAPSHOT
will always give you the latest version, but a version number can also be specified. More information here. For development, kyberlib can also be published to and used from the local Maven repository.