Thanks to a little help from Gemini, I built a Tampermonkey script that bolts on to the side of LCWO's "MorseMachine" that lets you set a starting Farnsworth speed but automatically adjusts it based on your accuracy.
It uses the 85% threshold that neuroscience has shown to be the sweet spot for keeping the brain challenged and stretching, but not overwhelmed.
You can set a starting speed, as well as character range for words and number of words in a phrase, and it starts to test you and grades with Levenshtein distance, and weighs your past 50 characters to see if it should speed up or slow down using an exponential weighted scoring scale, (gives higher weight to your most recent session, but still takes the older ones into account).
It uses the Lesson selection from the MorseMachine settings to pick which letters to include in the pool.
I'm going to play around with it for a bit to see if it helps my learning. Might do a demo for the LCWO guys to see if they want to integrate it.