#HID Project board definition file

menu.usbcore=USB Core

##############################################################

leonardoExtended.name=Arduino Leonardo HID-Project
leonardoExtended.vid.0=0x2341
leonardoExtended.pid.0=0x0036
leonardoExtended.vid.1=0x2341
leonardoExtended.pid.1=0x8036
leonardoExtended.upload.tool=arduino:avrdude
leonardoExtended.upload.protocol=avr109
leonardoExtended.upload.maximum_size=28672
leonardoExtended.upload.maximum_data_size=2560
leonardoExtended.upload.speed=57600
leonardoExtended.upload.disable_flushing=true
leonardoExtended.upload.use_1200bps_touch=true
leonardoExtended.upload.wait_for_upload_port=true

leonardoExtended.bootloader.tool=arduino:avrdude
leonardoExtended.bootloader.low_fuses=0xff
leonardoExtended.bootloader.high_fuses=0xd8
leonardoExtended.bootloader.extended_fuses=0xcb
leonardoExtended.bootloader.file=arduino:caterina/Caterina-leonardo.hex
leonardoExtended.bootloader.unlock_bits=0x3F
leonardoExtended.bootloader.lock_bits=0x2F

leonardoExtended.build.mcu=atmega32u4
leonardoExtended.build.f_cpu=16000000L
leonardoExtended.build.core=HID:hid
leonardoExtended.build.vid=0x2341
leonardoExtended.build.pid=0x8036
leonardoExtended.build.usb_product="Arduino Leonardo"
leonardoExtended.build.board=AVR_LEONARDO
leonardoExtended.build.extra_flags={build.usb_flags}

#USB core selection
#HID Project needs to be installed https://github.com/NicoHood/HID
leonardoExtended.menu.usbcore.hid=Serial + Extended HID
leonardoExtended.menu.usbcore.hid.build.variant=leonardo_hid
leonardoExtended.menu.usbcore.gamepad=Serial + Gamepad HID
leonardoExtended.menu.usbcore.gamepad.build.variant=leonardo_gamepad
leonardoExtended.menu.usbcore.custom=Serial + Custom HID
leonardoExtended.menu.usbcore.custom.build.variant=leonardo_custom
leonardoExtended.menu.usbcore.USB_CORE=Default Core
leonardoExtended.menu.usbcore.USB_CORE.build.variant=leonardo
leonardoExtended.menu.usbcore.NO_USB=No USB functions
leonardoExtended.menu.usbcore.NO_USB.build.variant=leonardo_no_usb

##############################################################

microExtended.name=Arduino Micro HID-Project
microExtended.upload.tool=arduino:avrdude
microExtended.upload.protocol=avr109
microExtended.upload.maximum_size=28672
microExtended.upload.maximum_data_size=2560
microExtended.upload.speed=57600
microExtended.upload.disable_flushing=true
microExtended.upload.use_1200bps_touch=true
microExtended.upload.wait_for_upload_port=true

microExtended.bootloader.tool=arduino:avrdude
microExtended.bootloader.low_fuses=0xff
microExtended.bootloader.high_fuses=0xd8
microExtended.bootloader.extended_fuses=0xcb
microExtended.bootloader.file=arduino:caterina/Caterina-Micro.hex
microExtended.bootloader.unlock_bits=0x3F
microExtended.bootloader.lock_bits=0x2F

microExtended.build.mcu=atmega32u4
microExtended.build.f_cpu=16000000L
microExtended.build.core=HID:hid
microExtended.build.vid=0x2341
microExtended.build.pid=0x8037
microExtended.build.usb_product="Arduino Micro"
microExtended.build.board=AVR_MICRO
microExtended.build.extra_flags={build.usb_flags}

#USB core selection
#HID Project needs to be installed https://github.com/NicoHood/HID
microExtended.menu.usbcore.hid=Serial + Extended HID
microExtended.menu.usbcore.hid.build.variant=micro_hid
microExtended.menu.usbcore.gamepad=Serial + Gamepad HID
microExtended.menu.usbcore.gamepad.build.variant=micro_gamepad
microExtended.menu.usbcore.custom=Serial + Custom HID
microExtended.menu.usbcore.custom.build.variant=micro_custom
microExtended.menu.usbcore.USB_CORE=Default Core
microExtended.menu.usbcore.USB_CORE.build.variant=micro
microExtended.menu.usbcore.NO_USB=No USB functions
microExtended.menu.usbcore.NO_USB.build.variant=micro_no_usb

##############################################################

uno.name=Arduino Uno HID-Project

uno.vid.0=0x2341
uno.pid.0=0x0043
uno.vid.1=0x2341
uno.pid.1=0x0001

uno.upload.tool=arduino:avrdude
uno.upload.protocol=arduino
uno.upload.maximum_size=32256
uno.upload.maximum_data_size=2048
uno.upload.speed=115200

uno.bootloader.tool=arduino:avrdude
uno.bootloader.low_fuses=0xFF
uno.bootloader.high_fuses=0xDE
uno.bootloader.extended_fuses=0x05
uno.bootloader.unlock_bits=0x3F
uno.bootloader.lock_bits=0x0F
uno.bootloader.file=arduino:optiboot/optiboot_atmega328.hex

uno.build.mcu=atmega328p
uno.build.f_cpu=16000000L
uno.build.board=AVR_UNO
uno.build.core=HID:hid
uno.build.variant=arduino:standard

##############################################################


mega.name=Arduino Mega 2560 HID-Project

mega.vid.0=0x2341
mega.pid.0=0x0010
mega.vid.1=0x2341
mega.pid.1=0x0042

mega.upload.tool=arduino:avrdude
mega.upload.maximum_data_size=8192

mega.bootloader.tool=arduino:avrdude
mega.bootloader.low_fuses=0xFF
mega.bootloader.unlock_bits=0x3F
mega.bootloader.lock_bits=0x0F

mega.build.f_cpu=16000000L
mega.build.core=HID:hid
mega.build.variant=arduino:mega
# default board  may be overridden by the cpu menu
mega.build.board=AVR_MEGA2560

## Arduino Mega w/ ATmega2560
## -------------------------

mega.upload.protocol=wiring
mega.upload.maximum_size=253952
mega.upload.speed=115200

mega.bootloader.high_fuses=0xD8
mega.bootloader.extended_fuses=0xFD
mega.bootloader.file=arduino:stk500v2/stk500boot_v2_mega2560.hex

mega.build.mcu=atmega2560
mega.build.board=AVR_MEGA2560

