cmdr-joystick/README.md

95 lines
2.7 KiB
Markdown

# CMDR Joystick
RC Joystick with 2 hall effect gimbals and 8 buttons for use both with simulators and ELRS Rx equipped quads.
## Layout
```cpp
USB Joystick Layer 0
| B3 | | B1 |
| Fn1 | | B2 |
--------------------------------------------
| | B4 | | B5 | |
| |
| X1,Y1 X2,Y2 |
| | B6 | | B7 | |
--------------------------------------------
USB Joystick Layer 1 (Fn1)
| Fn2 | | B1 |
| Fn1 | | B2 |
--------------------------------------------
| | B8 | | B9 | |
| |
| X1,Y1 X3,Y2 |
| | B10 | | B11 | |
--------------------------------------------
USB Joystick Layer 2 (Fn2)
| Fn2 | | B16 |
| Fn1 | | B17 |
--------------------------------------------
| | B12 | | B13 | |
| |
| X1,Y1 X3,Y3 |
| | B14 | | B15 | |
--------------------------------------------
ELRS Layer
| CH6 on | | CH5 on |
| CH6 off | | CH5 off |
--------------------------------------------
| | CH7 | | CH8 | |
| |
| X,Y X,Y |
| CH1,CH2 | CH9 | | CH10 | CH3,CH4 |
--------------------------------------------
```
## Features
- Ergonomic design (low profile)
- Hall effect gimbals
- Supports both USB HID joystick and ELRS Tx module
- Total 6x axis and 15x buttons (using Fn mode) implemented in USB HID mode
- 10 Channels implemented in ELRS mode (4x axis, 6x buttons)
- Low latency (1.6ms ELRS, 5ms USB)
## Build environment
- Platformio
- env: teensylc
- platform: teensy
- board: teensylc
- framework: arduino
- Flashing via Teensy USB bootloader
- Pressing boot button on teensy
- Press and hold "top lower right button" when powering the unit
## Hardware
- 1x TeensyLC MCU
- 2x FrSky M7 or M10 gimbals
- 6x Kailh choc low profile switches
- 2x Cherry MX switches
- 1x PCB
- 1x Bottom case
- 1x Top plate
- 2x Gimbal spacers
## Calibration
_The button is from here reffered to "top lower left button"_
1. Turn off the unit
2. Press and hold the button while powering the unit
3. Release the button and center the two gimbals
4. Press the button again
5. Move the two gimbals to it maximux X and Y
6. Press the button one mo time
7. Done!