I've not taken mine apart, but just because the comms back from the head unit to the controller in the drive is CANBUS, doesn't mean you can't use a different switch to the HMI/screen.
Does the github repo have the wiring from the switch to the display too (the purple one)? It's a six pin connector, and there are 3 buttons. So could we use any 3 button individually switched controller? It all depends on how those switches work, are they basic digital inputs or some kind of resistor based network where each combination of switches gives a different resistance?
The documentation for the CA Slim aux input has a lot of info, I've attached it to this post so you can have a look.
I certainly agree that the bafang one is very vague though. I'm using the DP160 on my E10:
View attachment 84067
It is quite tall and the clamp breaks easily (I've 3D printed a hacky replacement for it). The whole display is a rocker switch, so it's very easy to press however.
On a side note, I've got a couple of ESP32 modules with onboard CANBUS that I was toying with the idea of using to make a headless type HMI with just some switches on the bars, but not got around to it yet (too many projects!). As the CA switch seems to work on voltage threshold (not discrete digital inputs), it would easy to use without modification. I'm not totally sure how the On/Off works on the controller either unless it's the same as the BBSXX where you just short a connection.
View attachment 84065
Alternative switch (a bit spendy though and not sure if it would be adaptable):
SPECIALIZED ELE TRAIL REMOTE 2 £55.00
www.thebikefactory.co.uk
View attachment 84068
Might be some useful details here on how it's wired:
Hi everyone, I was able to get this working and put a test ride on it. Everything works as expected. The remote (Specialized PN S194200007) let's you run up "+" the modes 0 (no assist), 1, 2, 3 and back down again with the "-". Also intact is the Turbo button at the top which takes you from any...
electricbikereview.com