Mercurial > louis > kiibohd-controller
annotate Output/pjrcUSB/capabilities.kll @ 453:98bbee08f005 default tip louis
Setup hgignore, volume/brightness up/down, sysreq still not working
author | Louis Opter <kalessin@kalessin.fr> |
---|---|
date | Wed, 13 Jul 2016 23:16:49 -0700 |
parents | 45feb80a2ad1 |
children |
rev | line source |
---|---|
205
a2e9bb170eef
Adding CMake build support for the KLL compiler
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
1 Name = pjrcUSBCapabilities; |
430
d3cef419c849
Adding relative movement mouse key support
Jacob Alexander <haata@kiibohd.com>
parents:
429
diff
changeset
|
2 Version = 0.8; |
429
970dab727f47
Adding basic mouse button support
Jacob Alexander <haata@kiibohd.com>
parents:
370
diff
changeset
|
3 Author = "HaaTa (Jacob Alexander) 2014-2016"; |
970dab727f47
Adding basic mouse button support
Jacob Alexander <haata@kiibohd.com>
parents:
370
diff
changeset
|
4 KLL = 0.3d; |
205
a2e9bb170eef
Adding CMake build support for the KLL compiler
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
5 |
a2e9bb170eef
Adding CMake build support for the KLL compiler
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
6 # Modified Date |
449
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
7 Date = 2016-05-31; |
205
a2e9bb170eef
Adding CMake build support for the KLL compiler
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
8 |
a2e9bb170eef
Adding CMake build support for the KLL compiler
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
9 |
234
aaf14110ea7b
Adding NKRO and Boot mode capabilities.
Jacob Alexander <haata@kiibohd.com>
parents:
223
diff
changeset
|
10 # Output capabilities |
223
fc3b9cb190cc
Adding NKRO support to AVR/DPH.
Jacob Alexander <haata@kiibohd.com>
parents:
205
diff
changeset
|
11 consCtrlOut => Output_consCtrlSend_capability( consCode : 2 ); |
325 | 12 noneOut => Output_noneSend_capability(); |
223
fc3b9cb190cc
Adding NKRO support to AVR/DPH.
Jacob Alexander <haata@kiibohd.com>
parents:
205
diff
changeset
|
13 sysCtrlOut => Output_sysCtrlSend_capability( sysCode : 1 ); |
fc3b9cb190cc
Adding NKRO support to AVR/DPH.
Jacob Alexander <haata@kiibohd.com>
parents:
205
diff
changeset
|
14 usbKeyOut => Output_usbCodeSend_capability( usbCode : 1 ); |
430
d3cef419c849
Adding relative movement mouse key support
Jacob Alexander <haata@kiibohd.com>
parents:
429
diff
changeset
|
15 mouseOut => Output_usbMouse_capability( mouseCode : 2, relative_x : 2, relative_y : 2 ); |
205
a2e9bb170eef
Adding CMake build support for the KLL compiler
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
16 |
234
aaf14110ea7b
Adding NKRO and Boot mode capabilities.
Jacob Alexander <haata@kiibohd.com>
parents:
223
diff
changeset
|
17 # Configuration capabilities |
aaf14110ea7b
Adding NKRO and Boot mode capabilities.
Jacob Alexander <haata@kiibohd.com>
parents:
223
diff
changeset
|
18 kbdProtocolBoot => Output_kbdProtocolBoot_capability(); |
aaf14110ea7b
Adding NKRO and Boot mode capabilities.
Jacob Alexander <haata@kiibohd.com>
parents:
223
diff
changeset
|
19 kbdProtocolNKRO => Output_kbdProtocolNKRO_capability(); |
445
380e1f0123d0
Adding toggleKbdProtocol capability
José Luis Salvador Rufo <salvador.joseluis@gmail.com>
parents:
430
diff
changeset
|
20 toggleKbdProtocol => Output_toggleKbdProtocol_capability(); |
234
aaf14110ea7b
Adding NKRO and Boot mode capabilities.
Jacob Alexander <haata@kiibohd.com>
parents:
223
diff
changeset
|
21 |
368
06a54d582bf8
FIxing Media Keys and general USB compatibilty
Jacob Alexander <haata@kiibohd.com>
parents:
325
diff
changeset
|
22 # Locale Settings |
06a54d582bf8
FIxing Media Keys and general USB compatibilty
Jacob Alexander <haata@kiibohd.com>
parents:
325
diff
changeset
|
23 keyboardLocale => KeyboardLocale_define; |
06a54d582bf8
FIxing Media Keys and general USB compatibilty
Jacob Alexander <haata@kiibohd.com>
parents:
325
diff
changeset
|
24 keyboardLocale = 0; |
06a54d582bf8
FIxing Media Keys and general USB compatibilty
Jacob Alexander <haata@kiibohd.com>
parents:
325
diff
changeset
|
25 |
429
970dab727f47
Adding basic mouse button support
Jacob Alexander <haata@kiibohd.com>
parents:
370
diff
changeset
|
26 # Default KRO Mode |
970dab727f47
Adding basic mouse button support
Jacob Alexander <haata@kiibohd.com>
parents:
370
diff
changeset
|
27 # Set to 0 for Boot Mode (6KRO) |
970dab727f47
Adding basic mouse button support
Jacob Alexander <haata@kiibohd.com>
parents:
370
diff
changeset
|
28 # Set to 1 for NKRO Mode (default) |
970dab727f47
Adding basic mouse button support
Jacob Alexander <haata@kiibohd.com>
parents:
370
diff
changeset
|
29 usbProtocol => USBProtocol_define; |
970dab727f47
Adding basic mouse button support
Jacob Alexander <haata@kiibohd.com>
parents:
370
diff
changeset
|
30 usbProtocol = 1; |
970dab727f47
Adding basic mouse button support
Jacob Alexander <haata@kiibohd.com>
parents:
370
diff
changeset
|
31 |
370
39e338a6733d
Fixing default ErgoDox layout and adding FlashMode button
Jacob Alexander <haata@kiibohd.com>
parents:
368
diff
changeset
|
32 # Bootloader Mode capability |
39e338a6733d
Fixing default ErgoDox layout and adding FlashMode button
Jacob Alexander <haata@kiibohd.com>
parents:
368
diff
changeset
|
33 # XXX |
39e338a6733d
Fixing default ErgoDox layout and adding FlashMode button
Jacob Alexander <haata@kiibohd.com>
parents:
368
diff
changeset
|
34 # By default this is disabled on purpose |
39e338a6733d
Fixing default ErgoDox layout and adding FlashMode button
Jacob Alexander <haata@kiibohd.com>
parents:
368
diff
changeset
|
35 # It is a large security hazard |
39e338a6733d
Fixing default ErgoDox layout and adding FlashMode button
Jacob Alexander <haata@kiibohd.com>
parents:
368
diff
changeset
|
36 flashModeEnabled => flashModeEnabled_define; |
39e338a6733d
Fixing default ErgoDox layout and adding FlashMode button
Jacob Alexander <haata@kiibohd.com>
parents:
368
diff
changeset
|
37 flashModeEnabled = 0; |
39e338a6733d
Fixing default ErgoDox layout and adding FlashMode button
Jacob Alexander <haata@kiibohd.com>
parents:
368
diff
changeset
|
38 |
39e338a6733d
Fixing default ErgoDox layout and adding FlashMode button
Jacob Alexander <haata@kiibohd.com>
parents:
368
diff
changeset
|
39 flashMode => Output_flashMode_capability(); |
39e338a6733d
Fixing default ErgoDox layout and adding FlashMode button
Jacob Alexander <haata@kiibohd.com>
parents:
368
diff
changeset
|
40 |
449
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
41 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
42 ## USB Compatibility Flags ## |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
43 # Some OSs and USB Chipsets have issues with USB features |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
44 # These flags are available to provide ways to debug them |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
45 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
46 # Enable USB Suspend/Low Power mode |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
47 # After a period of inactivity, the USB host may request that the device go into low power mode |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
48 # This is different than system sleep, though it may occur around the same time |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
49 enableUSBSuspend => enableUSBSuspend_define; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
50 enableUSBSuspend = 1; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
51 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
52 # Enable Low-power Negotiation |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
53 # In order to support low-powered USB hosts, such as an Apple IPad, a low power auto-negotiation scheme has been implemented |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
54 # Unfortunately, badly behaved USB Chipsets and OSs may not work correctly with this support enabled |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
55 # Typical symptoms: |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
56 # * USB constantly re-initializing when first plugging in |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
57 enableUSBLowPowerNegotiation => enableUSBLowPowerNegotiation_define; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
58 enableUSBLowPowerNegotiation = 0; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
59 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
60 # Enable Device Restart on USB Timeout |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
61 # *USE AS LAST RETORT* |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
62 # To work around some USB OS, Chipset and Firwmare bugs, an auto-restart mechanism has been implemented |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
63 # Depending on the situation, this can be rather aggressive. |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
64 # This behaves differently than the Low-power negotiation restart and have very different triggering schemes. |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
65 enableDeviceRestartOnUSBTimeout => enableDeviceRestartOnUSBTimeout_define; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
66 enableDeviceRestartOnUSBTimeout = 0; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
67 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
68 # Enable Host-Resume (wake-from-sleep) |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
69 # On specific actions (such as USB key actions), will trigger the host device to wake if USB is suspended |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
70 enableUSBResume => enableUSBResume_define; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
71 enableUSBResume = 1; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
72 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
73 ## USB Endpoint Configuration ## |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
74 # 1 - Enable endpoint |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
75 # 0 - Disable endpoint |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
76 # Any/all endpoints can be disabled |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
77 # But you'll lose functionality for that feature |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
78 # Disabling endpoints will save RAM and Flash on the target MCU |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
79 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
80 # Joystick Endpoint |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
81 # *Currently Unused* |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
82 enableJoystick => enableJoystick_define; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
83 enableJoystick = 0; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
84 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
85 # Mouse Endpoint |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
86 enableMouse => enableMouse_define; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
87 enableMouse = 1; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
88 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
89 # Keyboard Endpoint |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
90 enableKeyboard => enableKeyboard_define; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
91 enableKeyboard = 1; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
92 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
93 # CDC / Serial Port Endpoint |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
94 enableVirtualSerialPort => enableVirtualSerialPort_define; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
95 enableVirtualSerialPort = 1; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
96 |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
97 # Raw I/O Endpoint |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
98 # *Currently Unused* |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
99 enableRawIO => enableRawIO_define; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
100 enableRawIO = 0; |
45feb80a2ad1
Major USB update, fixes most (if not all) known issues
Jacob Alexander <haata@kiibohd.com>
parents:
445
diff
changeset
|
101 |