So, my laptop died, either due to total battery failure cascading into the power supply refusing to boot the computer. I like to think that this is because I forced my laptop to run Windows for an extended period of time, but alas, correlation is not causation.
Regardless. I got a few more components in. Specifically, a big ol' bag of reed switches.
In about 45 minutes of rewiring, burning out the rest of my LEDs, and reprogramming, I had my "other exercise" feature working.
And it works pretty well. Because I now have two sensors at different positions on the wheel, I can get more accurate reads with less chances of things like sensors "bouncing" and double-counting a rotation. The only way the controller will now mark a rotation is if it passes by both sensors in succession. Hovering just above the sensor's sweet spot and going back and forth is no longer an option for cheating (though, arguably, this is harder to do than just pedaling normally).
The "other exercise" feature itself is sort of fun. It means I can go and use my rowing machine for a bit before getting back on my bike, and still be able to watch something. However, it's not just an easy out: in order to have it be playing normally while I'm in "other exercise" mode, I have to have been meeting the required RPMs while on the bike, otherwise I'll be playing at less than 100% speed while on the rowing machine.
Still, the "other exercise" feature, I feel, is still vulnerable to abuse or slacking. One could very well just start the exercise, get tired/bored, and leave it in "other" mode while they went and got a snack.
What I might implement is a timer for the "other exercise" mode. Essentially, it will put an upper limit on the amount of time one can spend in "other exercise" mode before you have to get back on the bike. Could also be nice if you wanted to let the user know how long they had left in the "other exercise" before kicking you back into pause mode, or normal mode.