Success! I just finished the Concept 2 rowing machine API wrapper. It has been 90% complete for many weeks.
I was being held up by the fact that you can not directly read the target time for a fixed duration piece nor the number of meters for a fixed distance piece from the PM3. These values have to be calculated before the start of the row based on other factors. I wasn’t sure how best to calculate the time remaining and meters remaining. In the end, I just went with a calculation that is based off the piece so far coupled with the instantaneous split. This means the estimate will jump around a bit, but has the advantage of giving rapid feedback to the rower as she pulls harder. Rowers out there, would this bother you?
This is a screen-shot of the wrapper demo:

It is pretty ugly. I had started to use pyFltk for the demo GUI, which looks very nice, but this would require installation of another package to run the demo. Instead I coded it in Tkinter, which comes with python and requires no extra installation.





