123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- Name = pjrcUSBCapabilities;
- Version = 0.8;
- Author = "HaaTa (Jacob Alexander) 2014-2016";
- KLL = 0.3d;
-
- # Modified Date
- Date = 2016-05-31;
-
-
- # Output capabilities
- consCtrlOut => Output_consCtrlSend_capability( consCode : 2 );
- noneOut => Output_noneSend_capability();
- sysCtrlOut => Output_sysCtrlSend_capability( sysCode : 1 );
- usbKeyOut => Output_usbCodeSend_capability( usbCode : 1 );
- mouseOut => Output_usbMouse_capability( mouseCode : 2, relative_x : 2, relative_y : 2 );
-
- # Configuration capabilities
- kbdProtocolBoot => Output_kbdProtocolBoot_capability();
- kbdProtocolNKRO => Output_kbdProtocolNKRO_capability();
- toggleKbdProtocol => Output_toggleKbdProtocol_capability();
-
- # Locale Settings
- keyboardLocale => KeyboardLocale_define;
- keyboardLocale = 0;
-
- # Default KRO Mode
- # Set to 0 for Boot Mode (6KRO)
- # Set to 1 for NKRO Mode (default)
- usbProtocol => USBProtocol_define;
- usbProtocol = 1;
-
- # Bootloader Mode capability
- # XXX
- # By default this is disabled on purpose
- # It is a large security hazard
- flashModeEnabled => flashModeEnabled_define;
- flashModeEnabled = 0;
-
- flashMode => Output_flashMode_capability();
-
-
- ## USB Compatibility Flags ##
- # Some OSs and USB Chipsets have issues with USB features
- # These flags are available to provide ways to debug them
-
- # Enable USB Suspend/Low Power mode
- # After a period of inactivity, the USB host may request that the device go into low power mode
- # This is different than system sleep, though it may occur around the same time
- enableUSBSuspend => enableUSBSuspend_define;
- enableUSBSuspend = 1;
-
- # Enable Low-power Negotiation
- # In order to support low-powered USB hosts, such as an Apple IPad, a low power auto-negotiation scheme has been implemented
- # Unfortunately, badly behaved USB Chipsets and OSs may not work correctly with this support enabled
- # Typical symptoms:
- # * USB constantly re-initializing when first plugging in
- enableUSBLowPowerNegotiation => enableUSBLowPowerNegotiation_define;
- enableUSBLowPowerNegotiation = 0;
-
- # Enable Device Restart on USB Timeout
- # *USE AS LAST RETORT*
- # To work around some USB OS, Chipset and Firwmare bugs, an auto-restart mechanism has been implemented
- # Depending on the situation, this can be rather aggressive.
- # This behaves differently than the Low-power negotiation restart and have very different triggering schemes.
- enableDeviceRestartOnUSBTimeout => enableDeviceRestartOnUSBTimeout_define;
- enableDeviceRestartOnUSBTimeout = 0;
-
- # Enable Host-Resume (wake-from-sleep)
- # On specific actions (such as USB key actions), will trigger the host device to wake if USB is suspended
- enableUSBResume => enableUSBResume_define;
- enableUSBResume = 1;
-
- ## USB Endpoint Configuration ##
- # 1 - Enable endpoint
- # 0 - Disable endpoint
- # Any/all endpoints can be disabled
- # But you'll lose functionality for that feature
- # Disabling endpoints will save RAM and Flash on the target MCU
-
- # Joystick Endpoint
- # *Currently Unused*
- enableJoystick => enableJoystick_define;
- enableJoystick = 0;
-
- # Mouse Endpoint
- enableMouse => enableMouse_define;
- enableMouse = 1;
-
- # Keyboard Endpoint
- enableKeyboard => enableKeyboard_define;
- enableKeyboard = 1;
-
- # CDC / Serial Port Endpoint
- enableVirtualSerialPort => enableVirtualSerialPort_define;
- enableVirtualSerialPort = 1;
-
- # Raw I/O Endpoint
- # *Currently Unused*
- enableRawIO => enableRawIO_define;
- enableRawIO = 0;
|