Recently I bought me a Concept 2 Rowing machine. I’ve been rowing a lot in my childhood and wanted a possibility to work out even if there’s not much time between work and other activities.
Another thing I looked forward too was the available SDK for the indoor rower. There’s a C-interface which allows to get all the data from the current rowing session. I also stumbled upon a Python lib called PyRow.
After some workouts where I tested different rowing software solutions like RowPro or the official Venue Racing application I found that there’s a lack in a sector where I expected the most: A training application which let’s me row against AI opponents that react realistically or according to my training goals.
It’s possible to record your rowing sessions in RowPro and replay them, it’s also possible to race against bots with a constant pace or which do specified intervals. But there’s no such thing as a bot which reacts to my heartrate or which tries to stay on my tail by sprinting before giving up. There’s a lot of potential left here, it would me a lot more motivating and effective to have advanced bots available to row against.
My idea was to create such a program – and born was DynRow. I used PyGame and PyRow to get all the needed data and display it in a userfriendly format. There’s now an application which displays the rowing boats from a birds-eye perspective. The player in the middle, all the other boats around the player. Other boats can be added as wanted, I currently have implemented a boat rowing with a constant pace and a somehow believable movement.
I’ll add more if I move further along, I also plan on going into more detail on some of the mechanics and designs involved. Feel free to get involved if you’re interested in rowing and have one of such ergometers available.