I lost patience reading the last few posts, so forgive me if it was already mentioned, but to have a variable regen we need a variable input to the regen: we need a way to sense how much brake is applied. That's hardware, which the bike does not have.
On the other hand, to have a gradual regen level increase, meaning it would kickoff smoothly and increase to whatever max level the user sets and stay there for as long as the brake is applied (or whatever the conditions to start regening), should have been implemented as a standard. Arguments that it is a hard thing to do for the software developers at Sevcon or Zero I think don't hold water - if the controller has the capability, the programming would be trivial. They could have added a second parameter: how quickly the regen ramps-up from 0 to max (the other parameter being the "max" itself).
Sure, custom-programming a closed, proprietary system is not easy. But the programming of said system to do gradual reven, when done by the creators of it, shouldn't be rocket science, provided the hardware is there to support it.