feat: implement initial cyborg multi-action button mappings
- Added support for Single, Long, and Double press actions in libazeron. - Mapped Cyborg surgical command IDs (0x20F6, 0x20F8, 0x204A). - Updated azeron-cli to support --long and --double mapping flags. - Updated protocol documentation with newly discovered Cyborg commands. - Added TODO.md for remaining joystick and timing tasks.
This commit is contained in:
20
TODO.md
Normal file
20
TODO.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# Azeron Cyborg Linux Support - Remaining Tasks
|
||||
|
||||
## Protocol Implementation
|
||||
- [ ] **Joystick Bulk Write (`0x26EC`)**: Implement `azeron_protocol_set_stick_config` using the new bulk write format.
|
||||
- Map mode byte (index 3).
|
||||
- Map stick angle (index 8).
|
||||
- Map deadzone/sensitivity.
|
||||
- [ ] **Global Timings (`0x2000`)**: Implement a function to set Long Press and Double Click delays.
|
||||
- [ ] **Verify Read Configuration**: Confirm if `0x26FB` works for Cyborg or if a new read command is required (Heartbeat showed `0x12EA/EB` pairs).
|
||||
- [ ] **Surgical Button Persistence**: Verify if `0x204B` (Commit) is sufficient for all surgical updates or if `0x26ED` is needed.
|
||||
|
||||
## CLI Enhancements
|
||||
- [ ] **Joystick Commands**: Add `set-stick-mode` and `set-stick-angle`.
|
||||
- [ ] **Timing Commands**: Add `set-delays --long <ms> --double <ms>`.
|
||||
- [ ] **Action Feedback**: Update `show-mappings` to display all three actions (Single, Long, Double) per button.
|
||||
|
||||
## Testing & Validation
|
||||
- [ ] **Linux Verification**: Test all surgical updates (`0x20F6/F8/4A`) using `libusb` on Linux.
|
||||
- [ ] **Persistence Check**: Ensure settings survive a device power cycle.
|
||||
- [ ] **Input Monitoring**: Verify that Linux input events (EV_KEY) correctly match the new mappings.
|
||||
Reference in New Issue
Block a user