Experiments with Rust for FRC Robots

Recently I’ve been playing with a bit of a pet project - writing an experimental FRC robotics framework in Rust. This isn’t the first time I’ve written something ambitious in Rust - my FMS alternative, JMS, is close to 40,000 lines of it - but as it turns out the language really shines when it comes to robot programming. Buckle up and follow along at robot.rs.

Read More

Pickles, Stacks, and CPUs - Airgap 2020 CTF

I usually don’t post much on this blog, but I figured today I might share a new subject area - cybersecurity. In particular my findings from the Airgap 2020 CTF (Capture the Flag) challenge, the 2nd ever CTF I’ve had the pleasure of attempting. Enquire within for some interesting flags and first bloods in binary and web exploitation.

Read More

Running ROS on Docker with VSCode and RVIZ support

Developing for ROS can be less than painless. Locking your OS to a specific Ubuntu version just to develop ROS applications can make it a pain to use in the day-to-day, leading many to consider a VM or even another computer. Here, I propose a new solution using Docker with X11 passthrough and GPU support. As a bonus, you can incorporate it directly into your VSCode workspace. Here’s how.

Read More

Project: Curtin Courses Index

Today I’m releasing the Curtin Courses Index, a web application I’ve written to make it easier to plan your degree and course of study.

Read More

Introducing: The Mailing List

In a bit of a learning experiment, I’ve implemented a new feature on this site: The Mailing List. You can now subscribe for email notifications in the top right of the website, or at the bottom of every post!

Read More

The Start (and the end) - Our story of multiple teams

They say all good things must come to an end. Hopefully those things end up paving the way for something great, and that’s what we hope to be starting today: May 4th, 2019.

Read More

Predictive current limits - Preventing issues before they happen

Current limiting is a fantastic tool in the hands of the engineer - it allows us to keep power demands under control. But is there a better way to control the power demands of our actuators, to make them more controllable? Could we limit acceleration and torque, too? Can we stop our robot from tipping, before it happens?

Read More

Thoughtful functionality - Writing well-structured, reliable, and flexible FRC code

In all the buzz of build season, it’s common that we forget what we’re meant to be teaching. In terms of programming and coding skills, well-structured programs and good practice are often foregone in favour of unstructured spaghetti designed to ‘just get the robot moving’. In this post, we’ll be talking about how to structure our code for flexibility, reliability, and how to solve the “mechanical team isn’t ready yet” dependency problem.

Read More

2018 OpenRIO Season in Review - The Numbers

2018 was a great season for OpenRIO. On our main project, GradleRIO, there have been 251 teams and 1427 unique users from 7 countries, with 52.9 thousand total builds since January 1st, 2018. Let’s take a deeper look at the numbers…

Read More

Computer Vision - Scratching the Surface

Earlier today, I did a talk for FRC Team ARTEMIS on Computer Vision, demonstrating the basics but also diving into some advance topics. Here, I’ve released the slide deck, video and some further reading materials.

Read More