not.py
100 mW
Welcome, I'm currently in the works of reversing Fardriver's BLE communication to make my own custom dashboard app.
Thought I should document it in case anyone in the future decides to try.
I'm a total newbie to all kinds of serial & bluetooth communication but I've been doing python for multiple years now.
Feel free to correct me on anything I say.
Also check out: Fardriver controller serial protocol reverse engineering if your interested in the serial communication.
Lots of helpful info in there regarding how data is sent as well.
Current findings:
Address 0xEE:
First nibble: Direction switch. 0 for forwards / 8 for reverse.
Second nibble: Mode switch. B for 1 / 3 for 2 / 7 for 3.
Fourth nibble: Breaking. F for break / D for normal.
Next 4 nibbles seem to count up as the wheel spins, maybe for the speedo?
Example: 09 1D 29 32 00 00 00 00 00 00 00 00
Address 0xE2:
Nibbles 12-15: RPM
These are all my findings from tonight, will be back with more soon.
Thought I should document it in case anyone in the future decides to try.
I'm a total newbie to all kinds of serial & bluetooth communication but I've been doing python for multiple years now.
Feel free to correct me on anything I say.
Also check out: Fardriver controller serial protocol reverse engineering if your interested in the serial communication.
Lots of helpful info in there regarding how data is sent as well.
Current findings:
Address 0xEE:
First nibble: Direction switch. 0 for forwards / 8 for reverse.
Second nibble: Mode switch. B for 1 / 3 for 2 / 7 for 3.
Fourth nibble: Breaking. F for break / D for normal.
Next 4 nibbles seem to count up as the wheel spins, maybe for the speedo?
Example: 09 1D 29 32 00 00 00 00 00 00 00 00
Address 0xE2:
Nibbles 12-15: RPM
These are all my findings from tonight, will be back with more soon.
Last edited:

