🎉 bV5 Initial Public Release

EDIT (before posting): Almost forgot to actually attach the zip: bV5-PUBLIC-DIST-0.1.1.zip (193.3 KB)

For the past half a year or so, I’ve been working on putting together a suite of easy to use tools and libraries for the V5 ecosystem. This is, in a way, the first installment of that. Without further ado, I present the initial release of what I’m calling bV5 (working title).

Contained within this initial release is an entire library for programming the V5 system. The DIST folder contains a full project template as well as pre-compiled binaries and headers[1] that you need to get started with programming your brain with bV5.

The bv5 folder contains the command line interface that is used mainly for uploading code to the brain, but also for other managerial tasks, and also contains a (not yet working) project management system allowing you to pull in parts of other people’s public projects, along with new bV5 binary updates and the likes. If you open a command prompt in that folder, you can use python setup.py install or pip install -e . to get the bv5 command properly setup.

The programming API itself has been designed to be dead simple to use, and is all documented at https://bv5.readthedocs.io/. To keep the compiled programs as small as possible, instead of bundling FreeRTOS like other V5 solutions, I have written a super-minimal operating system that runs the user code, whilst still handling everything you might need.

Unfortunatly, for now, the kernel itself is closed-source, and that’s just because I haven’t yet had the time to wipe the git history to remove all public traces of the SDK. When it does eventually go live, it will be public at https://github.com/bv5-robotics/bv5-kernel/

I have no idea what else to say here, so I’m going to stop waffling and let the documentation speak for itself. Feel free to HMU on discord @Bottersnike#3605 if you’ve got a large torrent of questions that wouldn’t fit within the more structured formu format of a… forum.

[1] Said headers do not include a copy of the SDK. I have taken care to ensure that nothing within the archive could violate any terms of service with VEX.

Quick disclaimer: This is not endorsed by VEX, and everything has been figured out by myself with a lot of trial and error. If for some reason your brain is bricked (it shouldn’t be), I’m not responsible for it, and you have been warned.

EDIT 5: Just thought I’d mention that using bV5 is actually competition legal! We competed using an early pirvate build of it in the UK Nationals, and everything was hunky dory.