├── .gitignore
├── .vscode
├── c_cpp_properties.json
├── settings.json
└── tasks.json
├── Config
└── LUFAConfig.h
├── Descriptors.c
├── Descriptors.h
├── LICENSE
├── LICENSE.txt
├── LUFA
├── Build
│ ├── HID_EEPROM_Loader
│ │ ├── HID_EEPROM_Loader.c
│ │ └── makefile
│ ├── lufa_atprogram.mk
│ ├── lufa_avrdude.mk
│ ├── lufa_build.mk
│ ├── lufa_core.mk
│ ├── lufa_cppcheck.mk
│ ├── lufa_dfu.mk
│ ├── lufa_doxygen.mk
│ ├── lufa_hid.mk
│ └── lufa_sources.mk
├── CodeTemplates
│ ├── DeviceTemplate
│ │ ├── Descriptors.c
│ │ ├── Descriptors.h
│ │ ├── DeviceApplication.c
│ │ ├── DeviceApplication.h
│ │ └── asf.xml
│ ├── DriverStubs
│ │ ├── Board.h
│ │ ├── Buttons.h
│ │ ├── Dataflash.h
│ │ ├── Joystick.h
│ │ └── LEDs.h
│ ├── HostTemplate
│ │ ├── HostApplication.c
│ │ ├── HostApplication.h
│ │ └── asf.xml
│ ├── LUFAConfig.h
│ ├── WindowsINF
│ │ ├── LUFA CDC-ACM.inf
│ │ └── LUFA RNDIS.inf
│ └── makefile_template
├── Common
│ ├── ArchitectureSpecific.h
│ ├── Architectures.h
│ ├── Attributes.h
│ ├── BoardTypes.h
│ ├── Common.h
│ ├── CompilerSpecific.h
│ └── Endianness.h
├── DoxygenPages
│ ├── BuildSystem.txt
│ ├── BuildingLinkableLibraries.txt
│ ├── ChangeLog.txt
│ ├── CompileTimeTokens.txt
│ ├── CompilingApps.txt
│ ├── ConfiguringApps.txt
│ ├── DevelopingWithLUFA.txt
│ ├── DeviceSupport.txt
│ ├── DirectorySummaries.txt
│ ├── Donating.txt
│ ├── ExportingLibrary.txt
│ ├── FutureChanges.txt
│ ├── GettingStarted.txt
│ ├── Groups.txt
│ ├── Images
│ │ ├── AS5_AS6_Import
│ │ │ ├── AS5_AS6_Import_Step1.png
│ │ │ ├── AS5_AS6_Import_Step2.png
│ │ │ ├── AS5_AS6_Import_Step3.png
│ │ │ ├── AS5_AS6_Import_Step4.png
│ │ │ ├── AS5_AS6_Import_Step5_1.png
│ │ │ ├── AS5_AS6_Import_Step5_2.png
│ │ │ └── AS5_AS6_Import_Step5_3.png
│ │ ├── Author.jpg
│ │ ├── LUFA.png
│ │ └── LUFA_thumb.png
│ ├── KnownIssues.txt
│ ├── LUFAPoweredProjects.txt
│ ├── LibraryResources.txt
│ ├── LicenseInfo.txt
│ ├── MainPage.txt
│ ├── MigrationInformation.txt
│ ├── OSDrivers.txt
│ ├── ProgrammingApps.txt
│ ├── SoftwareBootloaderJump.txt
│ ├── Style
│ │ ├── Footer.htm
│ │ └── Style.css
│ ├── VIDAndPIDValues.txt
│ └── WritingBoardDrivers.txt
├── Drivers
│ ├── Board
│ │ ├── AVR8
│ │ │ ├── ADAFRUITU4
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── ATAVRUSBRF01
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── BENITO
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── BIGMULTIO
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── BLACKCAT
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── BUI
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── BUMBLEB
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ ├── Joystick.h
│ │ │ │ └── LEDs.h
│ │ │ ├── CULV3
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── DUCE
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── EVK527
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ ├── Dataflash.h
│ │ │ │ ├── Joystick.h
│ │ │ │ └── LEDs.h
│ │ │ ├── JMDBU2
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── LEONARDO
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── MAXIMUS
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── MICRO
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── MICROPENDOUS
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── MICROSIN162
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── MINIMUS
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── MULTIO
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── OLIMEX162
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── OLIMEX32U4
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── OLIMEXISPMK2
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── OLIMEXT32U4
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── RZUSBSTICK
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── SPARKFUN8U2
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── STANGE_ISP
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── STK525
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ ├── Dataflash.h
│ │ │ │ ├── Joystick.h
│ │ │ │ └── LEDs.h
│ │ │ ├── STK526
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ ├── Dataflash.h
│ │ │ │ ├── Joystick.h
│ │ │ │ └── LEDs.h
│ │ │ ├── TEENSY
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── TUL
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── U2S
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── UDIP
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── UNO
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ ├── USB2AX
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── USBFOO
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── USBKEY
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ ├── Dataflash.h
│ │ │ │ ├── Joystick.h
│ │ │ │ └── LEDs.h
│ │ │ ├── USBTINYMKII
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ ├── XPLAIN
│ │ │ │ ├── Board.h
│ │ │ │ ├── Dataflash.h
│ │ │ │ └── LEDs.h
│ │ │ ├── XPLAINED_MINI
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ │ └── YUN
│ │ │ │ ├── Board.h
│ │ │ │ └── LEDs.h
│ │ ├── Board.h
│ │ ├── Buttons.h
│ │ ├── Dataflash.h
│ │ ├── Joystick.h
│ │ ├── LEDs.h
│ │ ├── Temperature.c
│ │ ├── Temperature.h
│ │ ├── UC3
│ │ │ ├── EVK1100
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ ├── Joystick.h
│ │ │ │ └── LEDs.h
│ │ │ ├── EVK1101
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ ├── Joystick.h
│ │ │ │ └── LEDs.h
│ │ │ ├── EVK1104
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ │ └── UC3A3_XPLAINED
│ │ │ │ ├── Board.h
│ │ │ │ ├── Buttons.h
│ │ │ │ └── LEDs.h
│ │ └── XMEGA
│ │ │ ├── A3BU_XPLAINED
│ │ │ ├── Board.h
│ │ │ ├── Buttons.h
│ │ │ ├── Dataflash.h
│ │ │ └── LEDs.h
│ │ │ ├── B1_XPLAINED
│ │ │ ├── Board.h
│ │ │ ├── Buttons.h
│ │ │ ├── Dataflash.h
│ │ │ └── LEDs.h
│ │ │ └── C3_XPLAINED
│ │ │ ├── Board.h
│ │ │ ├── Buttons.h
│ │ │ └── LEDs.h
│ ├── Misc
│ │ ├── AT45DB321C.h
│ │ ├── AT45DB642D.h
│ │ ├── RingBuffer.h
│ │ └── TerminalCodes.h
│ ├── Peripheral
│ │ ├── ADC.h
│ │ ├── AVR8
│ │ │ ├── ADC_AVR8.h
│ │ │ ├── SPI_AVR8.h
│ │ │ ├── SerialSPI_AVR8.h
│ │ │ ├── Serial_AVR8.c
│ │ │ ├── Serial_AVR8.h
│ │ │ ├── TWI_AVR8.c
│ │ │ └── TWI_AVR8.h
│ │ ├── SPI.h
│ │ ├── Serial.h
│ │ ├── SerialSPI.h
│ │ ├── TWI.h
│ │ └── XMEGA
│ │ │ ├── SPI_XMEGA.h
│ │ │ ├── SerialSPI_XMEGA.h
│ │ │ ├── Serial_XMEGA.c
│ │ │ ├── Serial_XMEGA.h
│ │ │ ├── TWI_XMEGA.c
│ │ │ └── TWI_XMEGA.h
│ └── USB
│ │ ├── Class
│ │ ├── AndroidAccessoryClass.h
│ │ ├── AudioClass.h
│ │ ├── CDCClass.h
│ │ ├── Common
│ │ │ ├── AndroidAccessoryClassCommon.h
│ │ │ ├── AudioClassCommon.h
│ │ │ ├── CDCClassCommon.h
│ │ │ ├── HIDClassCommon.h
│ │ │ ├── HIDParser.c
│ │ │ ├── HIDParser.h
│ │ │ ├── HIDReportData.h
│ │ │ ├── MIDIClassCommon.h
│ │ │ ├── MassStorageClassCommon.h
│ │ │ ├── PrinterClassCommon.h
│ │ │ ├── RNDISClassCommon.h
│ │ │ └── StillImageClassCommon.h
│ │ ├── Device
│ │ │ ├── AudioClassDevice.c
│ │ │ ├── AudioClassDevice.h
│ │ │ ├── CDCClassDevice.c
│ │ │ ├── CDCClassDevice.h
│ │ │ ├── HIDClassDevice.c
│ │ │ ├── HIDClassDevice.h
│ │ │ ├── MIDIClassDevice.c
│ │ │ ├── MIDIClassDevice.h
│ │ │ ├── MassStorageClassDevice.c
│ │ │ ├── MassStorageClassDevice.h
│ │ │ ├── PrinterClassDevice.c
│ │ │ ├── PrinterClassDevice.h
│ │ │ ├── RNDISClassDevice.c
│ │ │ └── RNDISClassDevice.h
│ │ ├── HIDClass.h
│ │ ├── Host
│ │ │ ├── AndroidAccessoryClassHost.c
│ │ │ ├── AndroidAccessoryClassHost.h
│ │ │ ├── AudioClassHost.c
│ │ │ ├── AudioClassHost.h
│ │ │ ├── CDCClassHost.c
│ │ │ ├── CDCClassHost.h
│ │ │ ├── HIDClassHost.c
│ │ │ ├── HIDClassHost.h
│ │ │ ├── MIDIClassHost.c
│ │ │ ├── MIDIClassHost.h
│ │ │ ├── MassStorageClassHost.c
│ │ │ ├── MassStorageClassHost.h
│ │ │ ├── PrinterClassHost.c
│ │ │ ├── PrinterClassHost.h
│ │ │ ├── RNDISClassHost.c
│ │ │ ├── RNDISClassHost.h
│ │ │ ├── StillImageClassHost.c
│ │ │ └── StillImageClassHost.h
│ │ ├── MIDIClass.h
│ │ ├── MassStorageClass.h
│ │ ├── PrinterClass.h
│ │ ├── RNDISClass.h
│ │ └── StillImageClass.h
│ │ ├── Core
│ │ ├── AVR8
│ │ │ ├── Device_AVR8.c
│ │ │ ├── Device_AVR8.h
│ │ │ ├── EndpointStream_AVR8.c
│ │ │ ├── EndpointStream_AVR8.h
│ │ │ ├── Endpoint_AVR8.c
│ │ │ ├── Endpoint_AVR8.h
│ │ │ ├── Host_AVR8.c
│ │ │ ├── Host_AVR8.h
│ │ │ ├── OTG_AVR8.h
│ │ │ ├── PipeStream_AVR8.c
│ │ │ ├── PipeStream_AVR8.h
│ │ │ ├── Pipe_AVR8.c
│ │ │ ├── Pipe_AVR8.h
│ │ │ ├── Template
│ │ │ │ ├── Template_Endpoint_Control_R.c
│ │ │ │ ├── Template_Endpoint_Control_W.c
│ │ │ │ ├── Template_Endpoint_RW.c
│ │ │ │ └── Template_Pipe_RW.c
│ │ │ ├── USBController_AVR8.c
│ │ │ ├── USBController_AVR8.h
│ │ │ ├── USBInterrupt_AVR8.c
│ │ │ └── USBInterrupt_AVR8.h
│ │ ├── ConfigDescriptors.c
│ │ ├── ConfigDescriptors.h
│ │ ├── Device.h
│ │ ├── DeviceStandardReq.c
│ │ ├── DeviceStandardReq.h
│ │ ├── Endpoint.h
│ │ ├── EndpointStream.h
│ │ ├── Events.c
│ │ ├── Events.h
│ │ ├── Host.h
│ │ ├── HostStandardReq.c
│ │ ├── HostStandardReq.h
│ │ ├── OTG.h
│ │ ├── Pipe.h
│ │ ├── PipeStream.h
│ │ ├── StdDescriptors.h
│ │ ├── StdRequestType.h
│ │ ├── UC3
│ │ │ ├── Device_UC3.c
│ │ │ ├── Device_UC3.h
│ │ │ ├── EndpointStream_UC3.c
│ │ │ ├── EndpointStream_UC3.h
│ │ │ ├── Endpoint_UC3.c
│ │ │ ├── Endpoint_UC3.h
│ │ │ ├── Host_UC3.c
│ │ │ ├── Host_UC3.h
│ │ │ ├── PipeStream_UC3.c
│ │ │ ├── PipeStream_UC3.h
│ │ │ ├── Pipe_UC3.c
│ │ │ ├── Pipe_UC3.h
│ │ │ ├── Template
│ │ │ │ ├── Template_Endpoint_Control_R.c
│ │ │ │ ├── Template_Endpoint_Control_W.c
│ │ │ │ ├── Template_Endpoint_RW.c
│ │ │ │ └── Template_Pipe_RW.c
│ │ │ ├── USBController_UC3.c
│ │ │ ├── USBController_UC3.h
│ │ │ ├── USBInterrupt_UC3.c
│ │ │ └── USBInterrupt_UC3.h
│ │ ├── USBController.h
│ │ ├── USBInterrupt.h
│ │ ├── USBMode.h
│ │ ├── USBTask.c
│ │ ├── USBTask.h
│ │ └── XMEGA
│ │ │ ├── Device_XMEGA.c
│ │ │ ├── Device_XMEGA.h
│ │ │ ├── EndpointStream_XMEGA.c
│ │ │ ├── EndpointStream_XMEGA.h
│ │ │ ├── Endpoint_XMEGA.c
│ │ │ ├── Endpoint_XMEGA.h
│ │ │ ├── Host_XMEGA.c
│ │ │ ├── PipeStream_XMEGA.c
│ │ │ ├── Pipe_XMEGA.c
│ │ │ ├── Template
│ │ │ ├── Template_Endpoint_Control_R.c
│ │ │ ├── Template_Endpoint_Control_W.c
│ │ │ └── Template_Endpoint_RW.c
│ │ │ ├── USBController_XMEGA.c
│ │ │ ├── USBController_XMEGA.h
│ │ │ ├── USBInterrupt_XMEGA.c
│ │ │ └── USBInterrupt_XMEGA.h
│ │ └── USB.h
├── License.txt
├── Platform
│ ├── Platform.h
│ ├── UC3
│ │ ├── ClockManagement.h
│ │ ├── Exception.S
│ │ ├── InterruptManagement.c
│ │ ├── InterruptManagement.h
│ │ └── UC3ExperimentalInfo.txt
│ └── XMEGA
│ │ ├── ClockManagement.h
│ │ └── XMEGAExperimentalInfo.txt
├── StudioIntegration
│ ├── Docbook
│ │ ├── mshelp
│ │ │ ├── README.txt
│ │ │ ├── docbook.xsl
│ │ │ └── hv1-common.xsl
│ │ └── placeholder.txt
│ ├── HV1
│ │ ├── helpcontentsetup.msha
│ │ ├── lufa_docbook_transform.xslt
│ │ ├── lufa_helpcontentsetup_transform.xslt
│ │ ├── lufa_hv1_transform.xslt
│ │ └── lufa_studio_help_styling.css
│ ├── ProjectGenerator
│ │ └── placeholder.txt
│ ├── VSIX
│ │ ├── LUFA.dll
│ │ ├── LUFA.pkgdef
│ │ ├── [Content_Types].xml
│ │ ├── asf-manifest.xml
│ │ ├── extension.vsixmanifest
│ │ ├── generate_caches.py
│ │ ├── lufa_asfmanifest_transform.xslt
│ │ └── lufa_vsmanifest_transform.xslt
│ ├── XDK
│ │ ├── lufa_extension_transform.xslt
│ │ ├── lufa_filelist_transform.xslt
│ │ ├── lufa_indent_transform.xslt
│ │ └── lufa_module_transform.xslt
│ ├── lufa.xml
│ ├── lufa_common.xml
│ ├── lufa_drivers_board.xml
│ ├── lufa_drivers_board_names.xml
│ ├── lufa_drivers_misc.xml
│ ├── lufa_drivers_peripheral.xml
│ ├── lufa_drivers_usb.xml
│ ├── lufa_drivers_usb_class.xml
│ ├── lufa_drivers_usb_class_android.xml
│ ├── lufa_drivers_usb_class_audio.xml
│ ├── lufa_drivers_usb_class_cdc.xml
│ ├── lufa_drivers_usb_class_hid.xml
│ ├── lufa_drivers_usb_class_midi.xml
│ ├── lufa_drivers_usb_class_ms.xml
│ ├── lufa_drivers_usb_class_printer.xml
│ ├── lufa_drivers_usb_class_rndis.xml
│ ├── lufa_drivers_usb_class_si.xml
│ ├── lufa_drivers_usb_core.xml
│ ├── lufa_drivers_usb_core_avr8.xml
│ ├── lufa_drivers_usb_core_uc3.xml
│ ├── lufa_drivers_usb_core_xmega.xml
│ ├── lufa_platform.xml
│ ├── lufa_platform_uc3.xml
│ ├── lufa_platform_xmega.xml
│ ├── lufa_toolchain.xml
│ └── makefile
├── Version.h
├── doxyfile
└── makefile
├── README.txt
├── XInputPad.c
├── XInputPad.h
├── docs
├── ArduinoMicroPinoutDiagram.png
├── ArduinoMicro_Pinout3.png
├── XInputPadMicroPinout.png
└── XInputPadMicroPinout.xcf
├── main.c
├── makefile
└── util.h
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | .settings/*
3 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | // Place your settings in this file to overwrite default and user settings.
2 | {
3 | "window.title": "- XInputPadMicro - ${activeEditorMedium}"
4 | }
--------------------------------------------------------------------------------
/Descriptors.h:
--------------------------------------------------------------------------------
1 | /*
2 | .k8GOGGNqkSFS5XkqXPSkSkkqXXFS5kSkSS15U22F2515U2uujuu1U1u2U1U2uUuFS.
3 | :0qE JS5uuJuuFFX51jU2SSk12jU2SSXF5uuu15SFS5k12ujj21S5kFS5S12jJYu11
4 | 5XS: 1UYYLu. vUUX U22r SUF SUF ;YYLuU5
5 | 1F5i NNSkS7 2uLJui 51u S5. .PX .XX LJvLLu1.
6 | kUk 0iLk5FFu vuYY2: 5F Xkk7 78 E0 i0 GEXPXk2uLLvLLuk
7 | X25, 8O 2kX0 5YJUi M 555 PkXk i q1FU 7 ONNkP12YLvLvLYS
8 | S25 8888 888 5uY5 FuS PS50 . FuUU 7 uJvLvLLJ2i
9 | kUF SJjU. P02UF P25k . Su2Y v 2LLvLvLL17
10 | S21 XJj88 0u 1uY2. X2k . k11E v 7;ii:JuJvLvLvJ2:
11 | 2257 jqv Pqq 1LJur PP. 7 EX: q OqqXP51JYvLvYYS.
12 | X2F kXkXSXk kJYLU: O ,Z 0PXZ i ii q0 i:::,,.jLLvLLuF'
13 | ik1k ;qkPj .uJvYu: UN : XU2F : S5S iJLLvjUF8
14 | :PSq 72uLLLui uSi .; 2uY1 r. 72j1 LYYLYJSU88
15 | XqE2 rP12juJuu1FX55U5FqXXSXkXF1juUkkPSXSPXPXPF1Jju5FkFSFXFSF5uujUu5j28V
16 | .uGOZESS5S5SFkkPkPkXkPXqXPXqXXFkSkkPXPXPkqSkSS1521252121U2u2u12Suv7
17 |
18 | *
19 | * Arduino Micro (Leonardo) XInput Pad Emulator firmware
20 | *
21 | * Copyright (c) 2017
22 | * Bruno Freitas - bruno@brunofreitas.com
23 | * Jon Wilson - degenatrons@gmail.com
24 | * Kevin Mackett - kevin@sharpfork.com
25 | *
26 | * This program is free software: you can redistribute it and/or modify
27 | * it under the terms of the GNU General Public License as published by
28 | * the Free Software Foundation, either version 3 of the License, or
29 | * (at your option) any later version.
30 | *
31 | * This program is distributed in the hope that it will be useful,
32 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
33 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
34 | * GNU General Public License for more details.
35 | *
36 | * You should have received a copy of the GNU General Public License
37 | * along with this program. If not, see .
38 | */
39 |
40 | /** \file
41 | *
42 | * Header file for Descriptors.c.
43 | */
44 |
45 | #ifndef _DESCRIPTORS_H_
46 | #define _DESCRIPTORS_H_
47 |
48 | /* Includes: */
49 | #include
50 |
51 | #include
52 | /* Macros: */
53 | /** Endpoint address of the Joystick HID reporting IN endpoint. */
54 | #define JOYSTICK_EPADDR_IN (ENDPOINT_DIR_IN | 1)
55 |
56 | /* Function Prototypes: */
57 | uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue,
58 | const uint8_t wIndex,
59 | const void** const DescriptorAddress)
60 | ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(3);
61 |
62 | #endif
63 |
64 |
--------------------------------------------------------------------------------
/LICENSE.txt:
--------------------------------------------------------------------------------
1 | KADE License Information
2 | ------------------------
3 |
4 | We make our software and hardware open to encourage people to contribute,
5 | innovate, improve the technology and make things better for the community.
6 | Derived products (software and hardware) must adhere to the following licenses
7 | and KADE should be appropriately attributed.
8 |
9 | KADE software is licensed under GNU GPLv3
10 | -----------------------------------------
11 |
12 | KADE software is open: you can redistribute it and/or modify it under the terms
13 | of the GNU General Public License as published by the Free Software Foundation,
14 | either version 3 of the License, or (at your option) any later version. KADE
15 | software is distributed in the hope that it will be useful, but WITHOUT ANY
16 | WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
17 | PARTICULAR PURPOSE. See the GNU General Public License for more details.
18 | You should have received a copy of the GNU General Public License along with
19 | the software. If not, see http://www.gnu.org/licenses/ .
20 |
21 | ADDITIONAL TERMS per GNU GPL Section 7
22 | No trademark or publicity rights are granted. This license does NOT give you
23 | any right, title or interest in the KADE brand. You may not distribute any
24 | modification of this program using the KADE name or KADE logo or claim any
25 | affiliation or association with KADE or the KADE development team.
26 |
27 | Any propagation or conveyance of this program must include this copyright
28 | notice and these terms.
29 |
30 | You may not misrepresent the origins of this program; modified versions of the
31 | program must be marked as such and not identified as the original program.
32 |
33 | KADE hardware is licensed under Creative Commons BY-SA 3.0
34 | ----------------------------------------------------------
35 |
36 | You are free:
37 | to copy, distribute and transmit the work
38 | to adapt the work
39 | to make commercial use of the work
40 |
41 | Under the condition that you must attribute the work in the manner specified by
42 | the author or licensor (but not in any way that suggests that they endorse you
43 | or your use of the work). Refer to the KADE attribution paragraph below.
44 |
45 | If you alter, transform, or build upon this work, you may distribute the
46 | resulting work only under the same or similar license to this one.
47 |
48 | For any reuse or distribution, you must make clear to others the license terms
49 | of this work. The best way to do this is with a link to this web page.
50 |
51 | http://creativecommons.org/licenses/by-sa/3.0/
52 |
53 | KADE attribution
54 | No trademark or publicity rights are granted. This license does NOT give you
55 | any right, title or interest in the KADE brand. You may not distribute any
56 | modification of this hardware using the KADE name or KADE logo or claim any
57 | affiliation or association with KADE or the KADE development team.
--------------------------------------------------------------------------------
/LUFA/Build/HID_EEPROM_Loader/HID_EEPROM_Loader.c:
--------------------------------------------------------------------------------
1 | /*
2 | LUFA Library
3 | Copyright (C) Dean Camera, 2015.
4 |
5 | dean [at] fourwalledcubicle [dot] com
6 | www.lufa-lib.org
7 | */
8 |
9 | /*
10 | Copyright 2015 Dean Camera (dean [at] fourwalledcubicle [dot] com)
11 |
12 | Permission to use, copy, modify, distribute, and sell this
13 | software and its documentation for any purpose is hereby granted
14 | without fee, provided that the above copyright notice appear in
15 | all copies and that both that the copyright notice and this
16 | permission notice and warranty disclaimer appear in supporting
17 | documentation, and that the name of the author not be used in
18 | advertising or publicity pertaining to distribution of the
19 | software without specific, written prior permission.
20 |
21 | The author disclaims all warranties with regard to this
22 | software, including all implied warranties of merchantability
23 | and fitness. In no event shall the author be liable for any
24 | special, indirect or consequential damages or any damages
25 | whatsoever resulting from loss of use, data or profits, whether
26 | in an action of contract, negligence or other tortious action,
27 | arising out of or in connection with the use or performance of
28 | this software.
29 | */
30 |
31 | /** \file
32 | *
33 | * Special application to extract an EEPROM image stored in FLASH memory, and
34 | * copy it to the device EEPROM. This application is designed to be used with
35 | * the HID build system module of LUFA to program the EEPROM of a target device
36 | * that uses the HID bootloader protocol, which does not have native EEPROM
37 | * programming support.
38 | */
39 |
40 | #include
41 | #include
42 | #include
43 |
44 | /* References to the binary EEPROM data linked in the AVR's FLASH memory space */
45 | extern const char _binary_InputEEData_bin_start[];
46 | extern const char _binary_InputEEData_bin_end[];
47 | extern const char _binary_InputEEData_bin_size[];
48 |
49 | /* Friendly names for the embedded binary data stored in FLASH memory space */
50 | #define InputEEData _binary_InputEEData_bin_start
51 | #define InputEEData_size ((int)_binary_InputEEData_bin_size)
52 |
53 | int main(void)
54 | {
55 | /* Copy out the embedded EEPROM data from FLASH to EEPROM memory space */
56 | for (uint16_t i = 0; i < InputEEData_size; i++)
57 | eeprom_update_byte((uint8_t*)i, pgm_read_byte(&InputEEData[i]));
58 |
59 | /* Infinite loop once complete */
60 | for (;;);
61 | }
62 |
--------------------------------------------------------------------------------
/LUFA/Build/HID_EEPROM_Loader/makefile:
--------------------------------------------------------------------------------
1 | #
2 | # LUFA Library
3 | # Copyright (C) Dean Camera, 2015.
4 | #
5 | # dean [at] fourwalledcubicle [dot] com
6 | # www.lufa-lib.org
7 | #
8 | # --------------------------------------
9 | # LUFA Project Makefile.
10 | # --------------------------------------
11 |
12 | # Run "make help" for target help.
13 |
14 | MCU = at90usb1287
15 | ARCH = AVR8
16 | F_CPU = 1000000
17 | F_USB = $(F_CPU)
18 | OPTIMIZATION = s
19 | TARGET = HID_EEPROM_Loader
20 | SRC = $(TARGET).c
21 | LUFA_PATH = ../../../LUFA
22 | CC_FLAGS =
23 | LD_FLAGS =
24 | OBJECT_FILES = InputEEData.o
25 |
26 | # Default target
27 | all:
28 |
29 | # Determine the AVR sub-architecture of the build main application object file
30 | FIND_AVR_SUBARCH = avr$(shell avr-objdump -f $(TARGET).o | grep architecture | cut -d':' -f3 | cut -d',' -f1)
31 |
32 | # Create a linkable object file with the input binary EEPROM data stored in the FLASH section
33 | InputEEData.o: InputEEData.bin $(TARGET).o $(MAKEFILE_LIST)
34 | @echo $(MSG_OBJCPY_CMD) Converting \"$<\" to a object file \"$@\"
35 | avr-objcopy -I binary -O elf32-avr -B $(call FIND_AVR_SUBARCH) --rename-section .data=.progmem.data,contents,alloc,readonly,data $< $@
36 |
37 | # Include LUFA build script makefiles
38 | include $(LUFA_PATH)/Build/lufa_core.mk
39 | include $(LUFA_PATH)/Build/lufa_build.mk
40 | include $(LUFA_PATH)/Build/lufa_cppcheck.mk
41 | include $(LUFA_PATH)/Build/lufa_doxygen.mk
42 | include $(LUFA_PATH)/Build/lufa_hid.mk
43 |
--------------------------------------------------------------------------------
/LUFA/CodeTemplates/DeviceTemplate/Descriptors.h:
--------------------------------------------------------------------------------
1 | /*
2 | LUFA Library
3 | Copyright (C) Dean Camera, 2015.
4 |
5 | dean [at] fourwalledcubicle [dot] com
6 | www.lufa-lib.org
7 | */
8 |
9 | /*
10 | Copyright 2015 Dean Camera (dean [at] fourwalledcubicle [dot] com)
11 |
12 | Permission to use, copy, modify, distribute, and sell this
13 | software and its documentation for any purpose is hereby granted
14 | without fee, provided that the above copyright notice appear in
15 | all copies and that both that the copyright notice and this
16 | permission notice and warranty disclaimer appear in supporting
17 | documentation, and that the name of the author not be used in
18 | advertising or publicity pertaining to distribution of the
19 | software without specific, written prior permission.
20 |
21 | The author disclaims all warranties with regard to this
22 | software, including all implied warranties of merchantability
23 | and fitness. In no event shall the author be liable for any
24 | special, indirect or consequential damages or any damages
25 | whatsoever resulting from loss of use, data or profits, whether
26 | in an action of contract, negligence or other tortious action,
27 | arising out of or in connection with the use or performance of
28 | this software.
29 | */
30 |
31 | /** \file
32 | *
33 | * Header file for Descriptors.c.
34 | */
35 |
36 | #ifndef _DESCRIPTORS_H_
37 | #define _DESCRIPTORS_H_
38 |
39 | /* Includes: */
40 | #include
41 |
42 | /* Macros: */
43 | #if (defined(ARCH_HAS_MULTI_ADDRESS_SPACE) && \
44 | !(defined(USE_FLASH_DESCRIPTORS) || defined(USE_EEPROM_DESCRIPTORS) || defined(USE_RAM_DESCRIPTORS)))
45 | #define HAS_MULTIPLE_DESCRIPTOR_ADDRESS_SPACES
46 | #endif
47 |
48 | /* Type Defines: */
49 | /** Type define for the device configuration descriptor structure. This must be defined in the
50 | * application code, as the configuration descriptor contains several sub-descriptors which
51 | * vary between devices, and which describe the device's usage to the host.
52 | */
53 | typedef struct
54 | {
55 | USB_Descriptor_Configuration_Header_t Config;
56 | } USB_Descriptor_Configuration_t;
57 |
58 | #endif
59 |
60 |
--------------------------------------------------------------------------------
/LUFA/CodeTemplates/DeviceTemplate/DeviceApplication.h:
--------------------------------------------------------------------------------
1 | /*
2 | LUFA Library
3 | Copyright (C) Dean Camera, 2015.
4 |
5 | dean [at] fourwalledcubicle [dot] com
6 | www.lufa-lib.org
7 | */
8 |
9 | /*
10 | Copyright 2015 Dean Camera (dean [at] fourwalledcubicle [dot] com)
11 |
12 | Permission to use, copy, modify, distribute, and sell this
13 | software and its documentation for any purpose is hereby granted
14 | without fee, provided that the above copyright notice appear in
15 | all copies and that both that the copyright notice and this
16 | permission notice and warranty disclaimer appear in supporting
17 | documentation, and that the name of the author not be used in
18 | advertising or publicity pertaining to distribution of the
19 | software without specific, written prior permission.
20 |
21 | The author disclaims all warranties with regard to this
22 | software, including all implied warranties of merchantability
23 | and fitness. In no event shall the author be liable for any
24 | special, indirect or consequential damages or any damages
25 | whatsoever resulting from loss of use, data or profits, whether
26 | in an action of contract, negligence or other tortious action,
27 | arising out of or in connection with the use or performance of
28 | this software.
29 | */
30 |
31 | /** \file
32 | *
33 | * Header file for DeviceApplication.c.
34 | */
35 |
36 | #ifndef _USB_DEVICE_APPLICATION_H_
37 | #define _USB_DEVICE_APPLICATION_H_
38 |
39 | /* Includes: */
40 | #include
41 | #include
42 | #include
43 |
44 | #include
45 | #include
46 |
47 | #include "Descriptors.h"
48 |
49 | /* Function Prototypes: */
50 | void SetupHardware(void);
51 |
52 | #endif
53 |
54 |
--------------------------------------------------------------------------------
/LUFA/CodeTemplates/DeviceTemplate/asf.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 | Template for a LUFA USB device mode application.
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
--------------------------------------------------------------------------------
/LUFA/CodeTemplates/HostTemplate/HostApplication.h:
--------------------------------------------------------------------------------
1 | /*
2 | LUFA Library
3 | Copyright (C) Dean Camera, 2015.
4 |
5 | dean [at] fourwalledcubicle [dot] com
6 | www.lufa-lib.org
7 | */
8 |
9 | /*
10 | Copyright 2015 Dean Camera (dean [at] fourwalledcubicle [dot] com)
11 |
12 | Permission to use, copy, modify, distribute, and sell this
13 | software and its documentation for any purpose is hereby granted
14 | without fee, provided that the above copyright notice appear in
15 | all copies and that both that the copyright notice and this
16 | permission notice and warranty disclaimer appear in supporting
17 | documentation, and that the name of the author not be used in
18 | advertising or publicity pertaining to distribution of the
19 | software without specific, written prior permission.
20 |
21 | The author disclaims all warranties with regard to this
22 | software, including all implied warranties of merchantability
23 | and fitness. In no event shall the author be liable for any
24 | special, indirect or consequential damages or any damages
25 | whatsoever resulting from loss of use, data or profits, whether
26 | in an action of contract, negligence or other tortious action,
27 | arising out of or in connection with the use or performance of
28 | this software.
29 | */
30 |
31 | /** \file
32 | *
33 | * Header file for HostApplication.c.
34 | */
35 |
36 | #ifndef _USB_HOST_APPLICATION_H_
37 | #define _USB_HOST_APPLICATION_H_
38 |
39 | /* Includes: */
40 | #include
41 | #include
42 | #include
43 |
44 | #include
45 |
46 | /* Macros: */
47 | #if (defined(ARCH_HAS_MULTI_ADDRESS_SPACE) && \
48 | !(defined(USE_FLASH_DESCRIPTORS) || defined(USE_EEPROM_DESCRIPTORS) || defined(USE_RAM_DESCRIPTORS)))
49 | #define HAS_MULTIPLE_DESCRIPTOR_ADDRESS_SPACES
50 | #endif
51 |
52 | /* Function Prototypes: */
53 | void SetupHardware(void);
54 |
55 | #endif
56 |
57 |
--------------------------------------------------------------------------------
/LUFA/CodeTemplates/HostTemplate/asf.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | Template for a LUFA USB host mode application.
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/LUFA/CodeTemplates/WindowsINF/LUFA CDC-ACM.inf:
--------------------------------------------------------------------------------
1 | ; Windows LUFA CDC ACM Setup File
2 | ; Copyright (c) 2000 Microsoft Corporation
3 |
4 | [DefaultInstall]
5 | CopyINF="LUFA CDC-ACM.inf"
6 |
7 | [Version]
8 | Signature="$Windows NT$"
9 | Class=Ports
10 | ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
11 | Provider=%MFGNAME%
12 | DriverVer=7/1/2012,10.0.0.0
13 |
14 | [Manufacturer]
15 | %MFGNAME%=DeviceList, NTx86, NTamd64, NTia64
16 |
17 | [SourceDisksNames]
18 |
19 | [SourceDisksFiles]
20 |
21 | [DestinationDirs]
22 | DefaultDestDir=12
23 |
24 | [DriverInstall]
25 | Include=mdmcpq.inf
26 | CopyFiles=FakeModemCopyFileSection
27 | AddReg=DriverInstall.AddReg
28 |
29 | [DriverInstall.Services]
30 | Include=mdmcpq.inf
31 | AddService=usbser, 0x00000002, LowerFilter_Service_Inst
32 |
33 | [DriverInstall.AddReg]
34 | HKR,,EnumPropPages32,,"msports.dll,SerialPortPropPageProvider"
35 |
36 | ;------------------------------------------------------------------------------
37 | ; Vendor and Product ID Definitions
38 | ;------------------------------------------------------------------------------
39 | ; When developing your USB device, the VID and PID used in the PC side
40 | ; application program and the firmware on the microcontroller must match.
41 | ; Modify the below line to use your VID and PID. Use the format as shown below.
42 | ; Note: One INF file can be used for multiple devices with different VID and PIDs.
43 | ; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
44 | ;------------------------------------------------------------------------------
45 | [DeviceList]
46 | %DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044
47 |
48 | [DeviceList.NTx86]
49 | %DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044
50 |
51 | [DeviceList.NTamd64]
52 | %DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044
53 |
54 | [DeviceList.NTia64]
55 | %DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044
56 |
57 | ;------------------------------------------------------------------------------
58 | ; String Definitions
59 | ;------------------------------------------------------------------------------
60 | ;Modify these strings to customize your device
61 | ;------------------------------------------------------------------------------
62 | [Strings]
63 | MFGNAME="http://www.lufa-lib.org"
64 | DESCRIPTION="LUFA CDC-ACM Virtual Serial Port"
65 |
--------------------------------------------------------------------------------
/LUFA/CodeTemplates/WindowsINF/LUFA RNDIS.inf:
--------------------------------------------------------------------------------
1 | ; Windows LUFA RNDIS Setup File
2 | ; Copyright (c) 2000 Microsoft Corporation
3 |
4 | [DefaultInstall]
5 | CopyINF="LUFA RNDIS.inf"
6 |
7 | [Version]
8 | Signature="$Windows NT$"
9 | Class=Net
10 | ClassGuid={4d36e972-e325-11ce-bfc1-08002be10318}
11 | Provider=%MFGNAME%
12 | DriverVer=7/1/2012,10.0.0.0
13 |
14 | [Manufacturer]
15 | %MFGNAME%=DeviceList, NTx86, NTamd64, NTia64
16 |
17 | [ControlFlags]
18 | ExcludeFromSelect=*
19 |
20 | [DriverInstall]
21 | Characteristics=0x84 ; NCF_PHYSICAL + NCF_HAS_UI
22 | BusType=15
23 | include=netrndis.inf
24 | needs=Usb_Rndis.ndi
25 | AddReg=Rndis_AddReg_Vista
26 |
27 | [DriverInstall.Services]
28 | include=netrndis.inf
29 | needs=Usb_Rndis.ndi.Services
30 |
31 | ;------------------------------------------------------------------------------
32 | ; Vendor and Product ID Definitions
33 | ;------------------------------------------------------------------------------
34 | ; When developing your USB device, the VID and PID used in the PC side
35 | ; application program and the firmware on the microcontroller must match.
36 | ; Modify the below line to use your VID and PID. Use the format as shown below.
37 | ; Note: One INF file can be used for multiple devices with different VID and PIDs.
38 | ; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
39 | ;------------------------------------------------------------------------------
40 | [DeviceList]
41 | %DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204C
42 |
43 | [DeviceList.NTx86]
44 | %DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204C
45 |
46 | [DeviceList.NTamd64]
47 | %DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204C
48 |
49 | [DeviceList.NTia64]
50 | %DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204C
51 |
52 | ;------------------------------------------------------------------------------
53 | ; String Definitions
54 | ;------------------------------------------------------------------------------
55 | ;Modify these strings to customize your device
56 | ;------------------------------------------------------------------------------
57 | [Strings]
58 | MFGNAME="http://www.lufa-lib.org"
59 | DESCRIPTION="LUFA RNDIS USB Ethernet Adapter"
60 |
--------------------------------------------------------------------------------
/LUFA/CodeTemplates/makefile_template:
--------------------------------------------------------------------------------
1 | #
2 | # LUFA Library
3 | # Copyright (C) Dean Camera, 2015.
4 | #
5 | # dean [at] fourwalledcubicle [dot] com
6 | # www.lufa-lib.org
7 | #
8 | # --------------------------------------
9 | # LUFA Project Makefile.
10 | # --------------------------------------
11 |
12 | # Run "make help" for target help.
13 |
14 | MCU = at90usb1287
15 | ARCH = AVR8
16 | BOARD = USBKEY
17 | F_CPU = 8000000
18 | F_USB = $(F_CPU)
19 | OPTIMIZATION = s
20 | TARGET = Target
21 | SRC = $(TARGET).c $(LUFA_SRC_USB) $(LUFA_SRC_USBCLASS) $(LUFA_SRC_PLATFORM)
22 | LUFA_PATH = ../../LUFA
23 | CC_FLAGS = -DUSE_LUFA_CONFIG_HEADER -IConfig
24 | LD_FLAGS =
25 |
26 | # Default target
27 | all:
28 |
29 | # Include LUFA build script makefiles
30 | include $(LUFA_PATH)/Build/lufa_core.mk
31 | include $(LUFA_PATH)/Build/lufa_sources.mk
32 | include $(LUFA_PATH)/Build/lufa_build.mk
33 | include $(LUFA_PATH)/Build/lufa_cppcheck.mk
34 | include $(LUFA_PATH)/Build/lufa_doxygen.mk
35 | include $(LUFA_PATH)/Build/lufa_dfu.mk
36 | include $(LUFA_PATH)/Build/lufa_hid.mk
37 | include $(LUFA_PATH)/Build/lufa_avrdude.mk
38 | include $(LUFA_PATH)/Build/lufa_atprogram.mk
39 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/BuildingLinkableLibraries.txt:
--------------------------------------------------------------------------------
1 | /** \file
2 | *
3 | * This file contains special DoxyGen information for the generation of the main page and other special
4 | * documentation pages. It is not a project source file.
5 | */
6 |
7 | /** \page Page_BuildLibrary Building as a Linkable Library
8 | *
9 | * The LUFA library can be built as a proper linkable library (with the extension .a) under AVR-GCC, so that
10 | * the library does not need to be recompiled with each revision of a user project. Instructions for creating
11 | * a library from a given source tree can be found in the AVR-GCC user manual included in the WinAVR install
12 | * /Docs/ directory.
13 | *
14 | * However, building the library is not recommended, as the static (compile-time) options will be
15 | * unable to be changed without a recompilation of the LUFA code. Therefore, if the library is to be built
16 | * from the LUFA source, it should be made to be application-specific and compiled with the static options
17 | * that are required for each project (which should be recorded along with the library).
18 | *
19 | * Normal library use has the library components compiled in at the same point as the application code, as
20 | * demonstrated in the library demos and applications. This is the preferred method, as the library is recompiled
21 | * each time to ensure that all static options for a particular application are applied.
22 | */
23 |
24 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/DevelopingWithLUFA.txt:
--------------------------------------------------------------------------------
1 | /** \file
2 | *
3 | * This file contains special DoxyGen information for the generation of the main page and other special
4 | * documentation pages. It is not a project source file.
5 | */
6 |
7 | /**
8 | * \page Page_DevelopingWithLUFA Developing With LUFA
9 | *
10 | * This section of the manual contains information on LUFA development, such as Getting Started information,
11 | * information on compile-time tuning of the library and other developer-related sections.
12 | *
13 | * Subsections:
14 | * \li \subpage Page_BuildSystem - The LUFA Buildsystem
15 | * \li \subpage Page_TokenSummary - Summary of Compile Time Tokens
16 | * \li \subpage Page_Migration - Migrating from an Older LUFA Version
17 | * \li \subpage Page_VIDPID - Allocated USB VID and PID Values
18 | * \li \subpage Page_OSDrivers - Operating System Driver Information
19 | * \li \subpage Page_BuildLibrary - Building as a Linkable Library
20 | * \li \subpage Page_ExportingLibrary - Exporting LUFA for IDE Use
21 | * \li \subpage Page_WritingBoardDrivers - How to Write Custom Board Drivers
22 | * \li \subpage Page_SoftwareBootloaderStart - How to jump to the bootloader in software
23 | */
24 |
25 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Donating.txt:
--------------------------------------------------------------------------------
1 | /** \file
2 | *
3 | * This file contains special DoxyGen information for the generation of the main page and other special
4 | * documentation pages. It is not a project source file.
5 | */
6 |
7 | /**
8 | * \page Page_Donating Donating to Support This Project
9 | *
10 | * \image html Images/Author.jpg "Dean Camera, LUFA Developer"
11 | *
12 | * I am a software developer working on LUFA in my spare time. The development and support of this library requires
13 | * much effort from myself, as I am the sole developer, maintainer and supporter. Please consider donating a small
14 | * amount to support this and my future Open Source projects - All donations are greatly appreciated.
15 | *
16 | * Note that commercial entities can remove the attribution portion of the LUFA license by a one-time fee - see
17 | * \ref Page_LicenseInfo for more details (Note: Please do NOT pay this in advance through the donation link below -
18 | * contact author for payment details.).
19 | *
20 | * \htmlonly
21 | * \image html "http://www.pledgie.com/campaigns/6927.png"
22 | * \endhtmlonly
23 | * Donate to this project via PayPal - Thanks in Advance!
24 | */
25 |
26 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/FutureChanges.txt:
--------------------------------------------------------------------------------
1 | /** \file
2 | *
3 | * This file contains special DoxyGen information for the generation of the main page and other special
4 | * documentation pages. It is not a project source file.
5 | */
6 |
7 | /** \page Page_FutureChanges Future Changes
8 | *
9 | * Below is a list of future changes which are proposed for the LUFA library, but not yet started/complete.
10 | * This gives an unordered list of future changes which may be available in future releases of the library.
11 | * If you have an item to add to this list, please contact the library author via email, the LUFA mailing list,
12 | * or post your suggestion as an enhancement request to the project bug tracker.
13 | *
14 | * Targeted for Future Releases:
15 | * - Code Features
16 | * -# Add hub support when in Host mode for multiple devices
17 | * -# Investigate virtual hubs when in device mode instead of composite devices
18 | * -# Re-add interrupt Pipe/Endpoint support
19 | * -# Update stream APIs to use DMA transfers on supported architectures
20 | * -# Pull out third party libraries into a separate folder and reference them as required
21 | * -# Add a LUFA_YIELD macro for integration into a third-party RTOS
22 | * -# Abstract out Mass Storage byte send/receive to prevent low level API use in projects
23 | * -# Fix HID report parser usage support for array types
24 | * -# Make HOST_DEVICE_SETTLE_DELAY_MS a global variable that can be changed
25 | * -# Add MANDATORY_EVENT_FUNCTIONS compile time option
26 | * -# Add watchdog support to the library and apps/bootloaders
27 | * -# Limit the maximum size of control transfers
28 | * - Testing/Verification
29 | * -# Re-run USBIF test suite on all classes to formally verify operation
30 | * -# Implement automated functional testing of all demos
31 | * - Documentation/Support
32 | * -# Add detailed overviews of how each demo works
33 | * -# Add board overviews
34 | * -# Write LUFA tutorials
35 | * - Demos/Projects
36 | * -# Add class driver support for Test and Measurement class
37 | * -# Add class driver support for EEM class
38 | * -# Add class driver support for ECM class
39 | * -# Add class driver generic HID report host demo
40 | * -# Implement flow control for USB to Serial project
41 | * - Ports
42 | * -# Port all demos to multiple architectures
43 | * -# Finish USB XMEGA port
44 | * -# Add AVR32 UC3C, UC3D and UC3L support
45 | * -# Other (commercial) C compilers
46 | */
47 |
48 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/GettingStarted.txt:
--------------------------------------------------------------------------------
1 | /** \file
2 | *
3 | * This file contains special DoxyGen information for the generation of the main page and other special
4 | * documentation pages. It is not a project source file.
5 | */
6 |
7 | /** \page Page_GettingStarted Getting Started
8 | *
9 | * Getting started with LUFA is easy; read the content below to get on your way to your first LUFA powered application.
10 | *
11 | * \section Sec_DemosOverview The LUFA Demo Applications
12 | *
13 | * Out of the box, LUFA contains a large number of pre-made class demos for you to test, experiment with and
14 | * ultimately build upon for your own projects. All the demos (where possible) come pre-configured to build and
15 | * run correctly on the AT90USB1287 AVR microcontroller, mounted on the Atmel USBKEY board and running at an 8MHz
16 | * master clock. This is due to two reasons; one, it is the hardware the author possesses, and two, it is the most
17 | * popular Atmel USB demonstration board to date. To learn how to reconfigure, recompile and program the included
18 | * LUFA applications using different settings, see the subsections below.
19 | *
20 | * \section Sec_ClassOrLowLevel Class Driver and Low Level Demos
21 | *
22 | * Most of the included demos in the /Demos/ folder come in both ClassDriver and LowLevel varieties. If you are new
23 | * to LUFA, it is highly recommended that you look at the ClassDriver versions first, which use the pre-made USB
24 | * Class Drivers (\ref Group_USBClassDrivers) to simplify the use of the standard USB classes in user applications.
25 | * These demos give a basic but easy to use interface to the USB class used in the demo application, such as HID or
26 | * CDC.
27 | *
28 | * Those needing absolute control over the class implementation can look at the LowLevel demos, which implement the
29 | * required USB class directly in the demo application using the lowest level LUFA APIs.
30 | *
31 | *
32 | * Subsections:
33 | * \li \subpage Page_ConfiguringApps - How to Configure the Included Demos, Projects and Bootloaders
34 | * \li \subpage Page_CompilingApps - How to Compile the Included Demos, Projects and Bootloaders
35 | * \li \subpage Page_ProgrammingApps - How to Program an AVR with the Included Demos, Projects and Bootloaders
36 | */
37 |
38 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Groups.txt:
--------------------------------------------------------------------------------
1 | /** \file
2 | *
3 | * This file contains special DoxyGen information for the generation of the main page and other special
4 | * documentation pages. It is not a project source file.
5 | */
6 |
7 | /** \defgroup Group_BoardDrivers Board Drivers
8 | *
9 | * \brief Functions, macros, variables, enums and types related to the control of physical board hardware.
10 | */
11 |
12 | /** \defgroup Group_PeripheralDrivers On-chip Peripheral Drivers
13 | *
14 | * \brief Functions, macros, variables, enums and types related to the control of AVR subsystems.
15 | */
16 |
17 | /** \defgroup Group_MiscDrivers Miscellaneous Drivers
18 | *
19 | * \brief Miscellaneous driver Functions, macros, variables, enums and types.
20 | */
21 |
22 | /** \defgroup Group_PlatformDrivers_AVR8 AVR8
23 | * \ingroup Group_PlatformDrivers
24 | *
25 | * \brief Drivers relating to the AVR8 architecture platform, such as clock setup and interrupt management.
26 | */
27 |
28 | /** \defgroup Group_PlatformDrivers_XMEGA XMEGA
29 | * \ingroup Group_PlatformDrivers
30 | *
31 | * \brief Drivers relating to the XMEGA architecture platform, such as clock setup and interrupt management.
32 | */
33 |
34 | /** \defgroup Group_PlatformDrivers_UC3 UC3
35 | * \ingroup Group_PlatformDrivers
36 | *
37 | * \brief Drivers relating to the UC3 architecture platform, such as clock setup and interrupt management.
38 | */
39 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step1.png
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step2.png
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step3.png
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step4.png
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step5_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step5_1.png
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step5_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step5_2.png
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step5_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/AS5_AS6_Import/AS5_AS6_Import_Step5_3.png
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/Author.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/Author.jpg
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/LUFA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/LUFA.png
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Images/LUFA_thumb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootsector/XInputPadMicro/3a83901d6cbe2fba7a1bead3c4adace3419ad320/LUFA/DoxygenPages/Images/LUFA_thumb.png
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/LibraryResources.txt:
--------------------------------------------------------------------------------
1 | /** \file
2 | *
3 | * This file contains special DoxyGen information for the generation of the main page and other special
4 | * documentation pages. It is not a project source file.
5 | */
6 |
7 | /**
8 | * \page Page_Resources Library Resources
9 | *
10 | * \section Sec_UnofficialResources Unofficial Resources
11 | * Unofficial Russian LUFA documentation translation: http://microsin.ru/Download.cnt/doc/LUFA/ \n
12 | * Tutorial for LUFA USB Control Transfers: http://www.avrbeginners.net/new/tutorials/usb-control-transfers-with-lufa/
13 | *
14 | * \section Sec_ProjectPages LUFA Related Webpages
15 | * Project Homepage: http://www.lufa-lib.org \n
16 | * Commercial Licenses: http://www.lufa-lib.org/license \n
17 | * Author's Website: http://www.fourwalledcubicle.com \n
18 | * Development Blog: http://www.fourwalledcubicle.com/blog \n
19 | *
20 | * \section Sec_ProjectHelp Assistance With LUFA
21 | * Support Mailing List: http://www.lufa-lib.org/support \n
22 | * Author's Email: dean [at] fourwalledcubicle [dot] com \n
23 | *
24 | * \section Sec_InDevelopment Latest In-Development Source Code
25 | * Issue Tracker: http://www.lufa-lib.org/tracker \n
26 | * Public GIT Repository: http://www.lufa-lib.org/git \n
27 | * Latest Repository Source Archive: http://www.lufa-lib.org/latest-archive \n
28 | * Commit RSS Feed: http://www.lufa-lib.org/rss \n
29 | *
30 | * \section Sec_USBResources USB Resources
31 | * USB-IF Website: http://www.usb.org \n
32 | */
33 |
34 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/LicenseInfo.txt:
--------------------------------------------------------------------------------
1 | /** \file
2 | *
3 | * This file contains special DoxyGen information for the generation of the main page and other special
4 | * documentation pages. It is not a project source file.
5 | */
6 |
7 | /**
8 | * \page Page_LicenseInfo Source Code License
9 | *
10 | * The LUFA library is currently released under the MIT license, included below.
11 | *
12 | * \section Sec_LicenseForHumans License Summary for Human Beings
13 | * Everyone is free to use LUFA without payment - even in commercial applications
14 | * where the product source code is not publicly disclosed. However, use of the
15 | * library must be in accordance with the library license conditions.
16 | *
17 | * If you wish to use LUFA without payment, you must include a copy of the
18 | * full license text below with your product or project - on your website, and in
19 | * an accompanying manual or other materials for the product. As long as the entire
20 | * license text is made available and obvious to the users of your product, you
21 | * are free to incorporate the LUFA library into your product without special
22 | * additional licensing.
23 | *
24 | * \section Sec_CommercialLicenses Commercial Licensing
25 | * In some instances the small requirement for public disclosure of LUFA within a
26 | * product is unwanted; in these instances a commercial license is offered up as an
27 | * alternative to the standard LUFA license.
28 | *
29 | * Commercial entities can opt out of the public disclosure clause in this license
30 | * for a one-time US$1500 payment. This provides a non-exclusive modified MIT
31 | * licensed which allows for the free use of the LUFA library, bootloaders and
32 | * (where the sole copyright is attributed to Dean Camera) demos without public
33 | * disclosure within an organization, in addition to three free hours of consultation
34 | * with the library author, and priority support.
35 | *
36 | * Please visit the Commercial License link on \ref Page_Resources for more information on
37 | * ordering a commercial license for your company.
38 | *
39 | * \section Sec_LicenseText LUFA License Text
40 | *
41 | * \verbinclude License.txt
42 | */
43 |
44 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/ProgrammingApps.txt:
--------------------------------------------------------------------------------
1 | /** \file
2 | *
3 | * This file contains special DoxyGen information for the generation of the main page and other special
4 | * documentation pages. It is not a project source file.
5 | */
6 |
7 | /** \page Page_ProgrammingApps Programming an Application into a USB AVR
8 | *
9 | * Once you have built an application, you will need a way to program in the resulting ".HEX" file (and, if your
10 | * application uses EEPROM variables with initial values, also a ".EEP" file) into your USB AVR. Normally, the
11 | * reprogramming of an AVR device must be performed using a special piece of programming hardware, through one of the
12 | * supported AVR programming protocols - ISP, HVSP, HVPP, JTAG, dW or PDI. This can be done through a custom programmer,
13 | * a third party programmer, or an official Atmel AVR tool - for more information, see the atmel.com website.
14 | *
15 | * Alternatively, you can use the bootloader. From the Atmel factory, each USB AVR comes preloaded with the Atmel
16 | * DFU (Device Firmware Update) class bootloader, a small piece of AVR firmware which allows the remainder of the
17 | * AVR to be programmed through a non-standard interface such as the serial USART port, SPI, or (in this case) USB.
18 | * Bootloaders have the advantage of not requiring any special hardware for programming, and cannot usually be erased
19 | * or broken without an external programming device. They have disadvantages however; they cannot change the fuses of
20 | * the AVR (special configuration settings that control the operation of the chip itself) and a small portion of the
21 | * AVR's FLASH program memory must be reserved to contain the bootloader firmware, and thus cannot be used by the
22 | * loaded application.
23 | *
24 | * If you wish to use the DFU bootloader to program in your application, refer to your DFU programmer's documentation.
25 | * Atmel provides a free utility called FLIP which is USB AVR compatible, and an open source (Linux compatible)
26 | * alternative exists called "dfu-programmer".
27 | *
28 | * \see \ref Page_BuildModule_DFU for information on the LUFA build system DFU module, for automatic DFU bootloader
29 | * programming makefile targets.
30 | */
31 |
--------------------------------------------------------------------------------
/LUFA/DoxygenPages/Style/Footer.htm:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
33 |
34 |