trackpoint_mouse.mp4
Several years ago, I built a trackpoint keyboard (use tmk repo and convert arduino-trackpoint-extended to c).
Recently, I lost my python job, but I feel so happy to start my own project: Rebuild/Rewrite my trackpoint keyboard in rust :D.
- Replaced developing board, teensy 2.0 board is too expensive, stm32f401 is cheaper enough.
- Want to learn rust with its embedded developing to improve my code language kills, seems no such sample/crate for teensy 2.
- Feels rust embedded is easier than c/c++ to learn. Just follow stmcubeide to build c projects, it drives me crazy.
- I like trackpoint than any other mouse hid, but not found firmware in rust version.
So, I tried rewriting the module in rust, and it works perfect as I wanted now.
- Use stm32f4xx_hal, rtic, ps/2 to usb.
- TIM EXTI, GPIO EXTI.
- Trackpoint stream mode, (remote mode works, but I don't need).
cargo objcopy --bin trackpoint_mouse -- -O binary trackpoint_mouse.bin
dfu-util -d 0483:df11 -a 0 --dfuse-address 0x08000000 -D trackpoint_mouse.bin
Use open drain mode now, need pull up SDA & SCL with 4.7k resister for each other.
Continue working with trackpoint keyboard in rust & stm32f4...
Include keyoard code part like keyberon, maybe will adjust the repo name.