# @file boards.txt
# @version 1.0
#
# @section License
# Copyright (C) 2013-2015, Mikael Patel
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# @section Description
# The Cosa Arduino core boards definition file; in alfabetical order.
# The default setting is the composition of the supported boards.
# See the directory boards.
#
# This file is part of the Arduino Che Cosa project.

##
# ARDUINO BOARDS
##

# AVR:ATmega168
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (1024 words, 0x1c00).
diecimila.name=Cosa Arduino Diecimila (ATmega168/BOOT_168)
diecimila.upload.tool=avrdude
diecimila.upload.protocol=arduino
diecimila.upload.maximum_size=14336
diecimila.upload.maximum_data_size=1024
diecimila.upload.maximum_eeprom_size=512
diecimila.upload.speed=19200

diecimila.bootloader.tool=avrdude
diecimila.bootloader.low_fuses=0xff
diecimila.bootloader.high_fuses=0xdd
diecimila.bootloader.extended_fuses=0x00

diecimila.build.mcu=atmega168
diecimila.build.f_cpu=16000000L
diecimila.build.board=ARDUINO_DIECIMILA
diecimila.build.variant=arduino/diecimila
diecimila.build.core=Cosa:cosa

# AVR:ATmega328
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (1024 words, 0x3c00).
duemilanove.name=Cosa Arduino Duemilanove (ATmega328/BOOT_168)
duemilanove.upload.tool=avrdude
duemilanove.upload.protocol=arduino
duemilanove.upload.maximum_size=30720
duemilanove.upload.maximum_data_size=2048
duemilanove.upload.maximum_eeprom_size=1024
duemilanove.upload.speed=57600

duemilanove.bootloader.tool=avrdude
duemilanove.bootloader.low_fuses=0xff
duemilanove.bootloader.high_fuses=0xda
duemilanove.bootloader.extended_fuses=0x05

duemilanove.build.mcu=atmega328p
duemilanove.build.f_cpu=16000000L
duemilanove.build.board=ARDUINO_DUEMILANOVE
duemilanove.build.variant=arduino/duemilanove
duemilanove.build.core=Cosa:cosa

# AVR:ATmega32U4
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK + 65 ms
# Brown-out detection level 2.6 V. Serial program downloading enabled
# Boot Reset vector enable (2048 words, 0x3800).
leonardo.name=Cosa Arduino Leonardo (ATmega32U4/Caterina)
leonardo.upload.tool=avrdude
leonardo.upload.protocol=avr109
leonardo.upload.maximum_size=28672
leonardo.upload.maximum_data_size=2560
leonardo.upload.maximum_eeprom_size=1024
leonardo.upload.speed=57600
leonardo.upload.disable_flushing=true
leonardo.upload.use_1200bps_touch=true
leonardo.upload.wait_for_upload_port=true

leonardo.bootloader.path=caterina
leonardo.bootloader.tool=avrdude
leonardo.bootloader.low_fuses=0xff
leonardo.bootloader.high_fuses=0xd8
leonardo.bootloader.extended_fuses=0xcb

leonardo.build.mcu=atmega32u4
leonardo.build.f_cpu=16000000L
leonardo.build.vid=0x2341
leonardo.build.pid=0x8036
leonardo.build.usb_product="Arduino Leonardo"
leonardo.build.board=ARDUINO_LEONARDO
leonardo.build.variant=arduino/leonardo
leonardo.build.extra_flags={build.usb_flags}
leonardo.build.core=Cosa:cosa

# AVR:ATmega1280
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (2048 words, 0xf800).
mega1280.name=Cosa Arduino Mega (ATmega1280/BOOT_168)
mega1280.upload.tool=avrdude
mega1280.upload.protocol=arduino
mega1280.upload.maximum_size=126976
mega1280.upload.maximum_data_size=8192
mega1280.upload.maximum_eeprom_size=4096
mega1280.upload.speed=57600

mega1280.bootloader.tool=avrdude
mega1280.bootloader.low_fuses=0xff
mega1280.bootloader.high_fuses=0xda
mega1280.bootloader.extended_fuses=0xf5

mega1280.build.mcu=atmega1280
mega1280.build.f_cpu=16000000L
mega1280.build.board=ARDUINO_MEGA1280
mega1280.build.variant=arduino/mega1280
mega1280.build.core=Cosa:cosa

# AVR:ATmega2560
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (4096 words, 0x1f000).
mega2560.name=Cosa Arduino Mega (ATmega2560/STK500v2)
mega2560.upload.tool=avrdude
mega2560.upload.protocol=wiring
mega2560.upload.maximum_size=253952
mega2560.upload.maximum_data_size=8192
mega2560.upload.maximum_eeprom_size=4096
mega2560.upload.speed=115200

mega2560.bootloader.tool=avrdude
mega2560.bootloader.low_fuses=0xff
mega2560.bootloader.high_fuses=0xd8
mega2560.bootloader.extended_fuses=0xfd

mega2560.build.mcu=atmega2560
mega2560.build.f_cpu=16000000L
mega2560.build.board=ARDUINO_MEGA2560
mega2560.build.variant=arduino/mega2560
mega2560.build.core=Cosa:cosa

# AVR:ATmega32U4
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK + 65 ms
# Brown-out detection level 2.6 V. Serial program downloading enabled
# Boot Reset vector enable (2048 words, 0x3800).
micro.name=Cosa Arduino Micro (ATmega32U4/Caterina)
micro.upload.tool=avrdude
micro.upload.protocol=avr109
micro.upload.maximum_size=28672
micro.upload.maximum_data_size=2560
micro.upload.maximum_eeprom_size=1024
micro.upload.speed=57600
micro.upload.disable_flushing=true
micro.upload.use_1200bps_touch=true
micro.upload.wait_for_upload_port=true

micro.bootloader.path=caterina
micro.bootloader.tool=avrdude
micro.bootloader.low_fuses=0xff
micro.bootloader.high_fuses=0xd8
micro.bootloader.extended_fuses=0xcb

micro.build.mcu=atmega32u4
micro.build.f_cpu=16000000L
micro.build.vid=0x2341
micro.build.pid=0x8037
micro.build.usb_product="Arduino Micro"
micro.build.board=ARDUINO_MICRO
micro.build.variant=arduino/micro
micro.build.extra_flags={build.usb_flags}
micro.build.core=Cosa:cosa

# AVR:ATmega328
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (1024 words, 0x3c00).
nano.name=Cosa Arduino Nano (ATmega328/BOOT_168)
nano.upload.tool=avrdude
nano.upload.protocol=arduino
nano.upload.maximum_size=30720
nano.upload.maximum_data_size=2048
nano.upload.maximum_eeprom_size=1024
nano.upload.speed=57600

nano.bootloader.tool=avrdude
nano.bootloader.low_fuses=0xff
nano.bootloader.high_fuses=0xda
nano.bootloader.extended_fuses=0x05

nano.build.mcu=atmega328p
nano.build.f_cpu=16000000L
nano.build.board=ARDUINO_NANO
nano.build.variant=arduino/nano
nano.build.core=Cosa:cosa

# AVR:ATmega32U4
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK + 65 ms
# Brown-out detection level 2.6 V. Serial program downloading enabled
# Boot Reset vector enable (2048 words, 0x3800).
pro-micro.name=Cosa Arduino Pro Micro (ATmega32U4/Caterina)
pro-micro.upload.tool=avrdude
pro-micro.upload.protocol=avr109
pro-micro.upload.maximum_size=28672
pro-micro.upload.maximum_data_size=2560
pro-micro.upload.maximum_eeprom_size=1024
pro-micro.upload.speed=57600
pro-micro.upload.disable_flushing=true
pro-micro.upload.use_1200bps_touch=true
pro-micro.upload.wait_for_upload_port=true

pro-micro.bootloader.path=caterina
pro-micro.bootloader.tool=avrdude
pro-micro.bootloader.low_fuses=0xff
pro-micro.bootloader.high_fuses=0xd8
pro-micro.bootloader.extended_fuses=0xcb

pro-micro.build.mcu=atmega32u4
pro-micro.build.f_cpu=16000000L
pro-micro.build.vid=0x2341
pro-micro.build.pid=0x8037
pro-micro.build.usb_product="Arduino Pro Micro"
pro-micro.build.board=ARDUINO_PRO_MICRO
pro-micro.build.variant=arduino/pro-micro
pro-micro.build.extra_flags={build.usb_flags}
pro-micro.build.core=Cosa:cosa

# AVR:ATmega32U4
# Ext Crystal Osc.=8 MHz; Start-up time PWRDWN/RESET: 16K CK + 65 ms
# Brown-out detection level 2.6 V. Serial program downloading enabled
# Boot Reset vector enable (2048 words, 0x3800).
pro-micro-8.name=Cosa Arduino Pro Micro (ATmega32U4/Caterina, 3.3V, 8 MHz)
pro-micro-8.upload.tool=avrdude
pro-micro-8.upload.protocol=avr109
pro-micro-8.upload.maximum_size=28672
pro-micro-8.upload.maximum_data_size=2560
pro-micro-8.upload.maximum_eeprom_size=1024
pro-micro-8.upload.speed=57600
pro-micro-8.upload.disable_flushing=true
pro-micro-8.upload.use_1200bps_touch=true
pro-micro-8.upload.wait_for_upload_port=true

pro-micro-8.bootloader.path=caterina
pro-micro-8.bootloader.tool=avrdude
pro-micro-8.bootloader.low_fuses=0xff
pro-micro-8.bootloader.high_fuses=0xd8
pro-micro-8.bootloader.extended_fuses=0xcb

pro-micro-8.build.mcu=atmega32u4
pro-micro-8.build.f_cpu=8000000L
pro-micro-8.build.vid=0x2341
pro-micro-8.build.pid=0x8037
pro-micro-8.build.usb_product="Arduino Pro Micro"
pro-micro-8.build.board=ARDUINO_PRO_MICRO
pro-micro-8.build.variant=arduino/pro-micro
pro-micro-8.build.extra_flags={build.usb_flags}
pro-micro-8.build.core=Cosa:cosa

# AVR:ATmega328
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (1024 words, 0x3c00).
pro-mini.name=Cosa Arduino Pro Mini (ATmega328/BOOT_168)
pro-mini.upload.tool=avrdude
pro-mini.upload.protocol=arduino
pro-mini.upload.maximum_size=30720
pro-mini.upload.maximum_data_size=2048
pro-mini.upload.maximum_eeprom_size=1024
pro-mini.upload.speed=57600

pro-mini.bootloader.tool=avrdude
pro-mini.bootloader.low_fuses=0xff
pro-mini.bootloader.high_fuses=0xda
pro-mini.bootloader.extended_fuses=0x05

pro-mini.build.mcu=atmega328p
pro-mini.build.f_cpu=16000000L
pro-mini.build.board=ARDUINO_PRO_MINI
pro-mini.build.variant=arduino/pro-mini
pro-mini.build.core=Cosa:cosa

# AVR:ATmega328
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (1024 words, 0x3c00).
pro-mini-8.name=Cosa Arduino Pro Mini (ATmega328/BOOT_168, 3.3V, 8 MHz)
pro-mini-8.upload.tool=avrdude
pro-mini-8.upload.protocol=arduino
pro-mini-8.upload.maximum_size=30720
pro-mini-8.upload.maximum_data_size=2048
pro-mini-8.upload.maximum_eeprom_size=1024
pro-mini-8.upload.speed=57600

pro-mini-8.bootloader.tool=avrdude
pro-mini-8.bootloader.low_fuses=0xFF
pro-mini-8.bootloader.high_fuses=0xDA
pro-mini-8.bootloader.extended_fuses=0x05

pro-mini-8.build.mcu=atmega328p
pro-mini-8.build.f_cpu=8000000L
pro-mini-8.build.board=ARDUINO_PRO_MINI
pro-mini-8.build.variant=arduino/pro-mini
pro-mini-8.build.core=Cosa:cosa

# AVR:ATmega328
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (256 words, 0x3f00).
uno.name=Cosa Arduino Uno (ATmega328/Optiboot)
uno.upload.tool=avrdude
uno.upload.protocol=arduino
uno.upload.maximum_size=32256
uno.upload.maximum_data_size=2048
uno.upload.maximum_eeprom_size=1024
uno.upload.speed=115200

uno.bootloader.tool=avrdude
uno.bootloader.low_fuses=0xff
uno.bootloader.high_fuses=0xde
uno.bootloader.extended_fuses=0x05

uno.build.mcu=atmega328p
uno.build.f_cpu=16000000L
uno.build.board=ARDUINO_UNO
uno.build.variant=arduino/uno
uno.build.core=Cosa:cosa

##
# BREADBOARDS
##

# AVR:ATtiny84
# Int. RC Osc.8 MHz; Start-up time PWRDWN/RESET: 6 CK/14 CK + 64 ms
# Brown-out detection disabled. Serial program downloading enabled
attiny84-8.name=Cosa Breadboard (ATtiny84, 8 MHz internal clock)
attiny84-8.upload.tool=avrdude
attiny84-8.upload.protocol=stk500v1
attiny84-8.upload.speed=19200
attiny84-8.upload.maximum_size=8192
attiny84-8.upload.maximum_data_size=512
attiny84-8.upload.maximum_eeprom_size=512

attiny84-8.bootloader.tool=avrdude
attiny84-8.bootloader.low_fuses=0xe2
attiny84-8.bootloader.high_fuses=0xdf
attiny84-8.bootloader.extended_fuses=0xff
attiny84-8.bootloader.unlock_bits=0xff
attiny84-8.bootloader.lock_bits=0xff
attiny84-8.bootloader.file=attiny84-8.hex

attiny84-8.build.mcu=attiny84
attiny84-8.build.f_cpu=8000000L
attiny84-8.build.board=BREADBOARD_ATTINYX4
attiny84-8.build.variant=arduino/attinyx4
attiny84-8.build.core=Cosa:cosa

# AVR:ATtiny85
# Int. RC Osc.8 MHz; Start-up time PWRDWN/RESET: 6 CK/14 CK + 64 ms
# Brown-out detection disabled. Serial program downloading enabled
attiny85-8.name=Cosa Breadboard (ATtiny85, 8 MHz internal clock)
attiny85-8.upload.tool=avrdude
attiny85-8.upload.protocol=stk500v1
attiny85-8.upload.speed=19200
attiny85-8.upload.maximum_size=8192
attiny85-8.upload.maximum_data_size=512
attiny85-8.upload.maximum_eeprom_size=512

attiny85-8.bootloader.tool=avrdude
attiny85-8.bootloader.low_fuses=0xe2
attiny85-8.bootloader.high_fuses=0xdf
attiny85-8.bootloader.extended_fuses=0xff
attiny85-8.bootloader.unlock_bits=0xff
attiny85-8.bootloader.lock_bits=0xff
attiny85-8.bootloader.file=attiny85-8.hex

attiny85-8.build.mcu=attiny85
attiny85-8.build.f_cpu=8000000L
attiny85-8.build.board=BREADBOARD_ATTINYX5
attiny85-8.build.variant=arduino/attinyx5
attiny85-8.build.core=Cosa:cosa

# AVR:ATtiny861
# Int. RC Osc.8 MHz; Start-up time PWRDWN/RESET: 6 CK/14 CK + 64 ms
# Brown-out detection disabled. Serial program downloading enabled
attiny861-8.name=Cosa Breadboard (ATtiny861, 8 MHz internal clock)
attiny861-8.upload.tool=avrdude
attiny861-8.upload.protocol=stk500v1
attiny861-8.upload.speed=19200
attiny861-8.upload.maximum_size=8192
attiny861-8.upload.maximum_data_size=512
attiny861-8.upload.maximum_eeprom_size=512

attiny861-8.bootloader.tool=avrdude
attiny861-8.bootloader.low_fuses=0xe2
attiny861-8.bootloader.high_fuses=0xdf
attiny861-8.bootloader.extended_fuses=0x01
attiny861-8.bootloader.unlock_bits=0xff
attiny861-8.bootloader.lock_bits=0xff
attiny861-8.bootloader.file=attiny861-8.hex

attiny861-8.build.mcu=attiny861
attiny861-8.build.f_cpu=8000000L
attiny861-8.build.board=BREADBOARD_ATTINYX61
attiny861-8.build.variant=arduino/attinyx61
attiny861-8.build.core=Cosa:cosa

# AVR:ATmega328
# Int. RC Osc.8 MHz; Start-up time PWRDWN/RESET: 6 CK/14 CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (256 words, 0x3f00).
atmega328-8.name=Cosa Breadboard (ATmega328, 8 MHz internal clock)
atmega328-8.upload.tool=avrdude
atmega328-8.upload.protocol=stk500v1
atmega328-8.upload.speed=19200
atmega328-8.upload.maximum_size=32768
atmega328-8.upload.maximum_data_size=2048
atmega328-8.upload.maximum_eeprom_size=1024

atmega328-8.bootloader.tool=avrdude
atmega328-8.bootloader.low_fuses=0xE2
atmega328-8.bootloader.high_fuses=0xDE
atmega328-8.bootloader.extended_fuses=0x05

atmega328-8.build.mcu=atmega328p
atmega328-8.build.f_cpu=8000000L
atmega328-8.build.board=BREADBOARD_ATMEGA328P
atmega328-8.build.variant=arduino/atmega328p
atmega328-8.build.core=Cosa:cosa

# AVR:ATmega1284
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (1024 words, 0xfc00).
mighty.name=Cosa Breadboard (ATmega1284P/BOOT_1284P)
mighty.upload.tool=avrdude
mighty.upload.protocol=stk500v1
mighty.upload.maximum_size=129024
mighty.upload.maximum_data_size=16384
mighty.upload.maximum_eeprom_size=4096
mighty.upload.speed=57600

mighty.bootloader.tool=avrdude
mighty.bootloader.low_fuses=0xff
mighty.bootloader.high_fuses=0xdc
mighty.bootloader.extended_fuses=0xfd

mighty.build.mcu=atmega1284p
mighty.build.f_cpu=16000000L
mighty.build.board=BREADBOARD_ATMEGA1284P
mighty.build.variant=arduino/atmega1284p
mighty.build.core=Cosa:cosa

# AVR:ATmega1284
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (512 words, 0xfe00).
mighty-opt.name=Cosa Breadboard (ATmega1284P/Optiboot)
mighty-opt.upload.tool=avrdude
mighty-opt.upload.protocol=arduino
mighty-opt.upload.maximum_size=130048
mighty-opt.upload.maximum_data_size=16384
mighty-opt.upload.maximum_eeprom_size=4096
mighty-opt.upload.speed=115200

mighty-opt.bootloader.tool=avrdude
mighty-opt.bootloader.low_fuses=0xff
mighty-opt.bootloader.high_fuses=0xde
mighty-opt.bootloader.extended_fuses=0xfd

mighty-opt.build.mcu=atmega1284p
mighty-opt.build.f_cpu=16000000L
mighty-opt.build.board=BREADBOARD_ATMEGA1284P
mighty-opt.build.variant=arduino/atmega1284p
mighty-opt.build.core=Cosa:cosa

##
# LILYPAD ARDUINO BOARDS
##

# AVR:ATmega328
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms
# Brown-out detection level 2.7 V. Serial program downloading enabled
# Boot Reset vector enable (1024 words, 0x3c00).
lilypad.name=Cosa LilyPad Arduino (ATmega328/BOOT_168, 8 MHz)
lilypad.upload.tool=avrdude
lilypad.upload.protocol=arduino
lilypad.upload.maximum_size=30720
lilypad.upload.maximum_data_size=2048
lilypad.upload.maximum_eeprom_size=1024
lilypad.upload.speed=57600

lilypad.bootloader.tool=avrdude
lilypad.bootloader.low_fuses=0xff
lilypad.bootloader.high_fuses=0xda
lilypad.bootloader.extended_fuses=0x05

lilypad.build.mcu=atmega328p
lilypad.build.f_cpu=8000000L
lilypad.build.board=LILYPAD_ARDUINO
lilypad.build.variant=arduino/lilypad
lilypad.build.core=Cosa:cosa

# AVR:ATmega32U4
# Ext Crystal Osc.>8 MHz; Start-up time PWRDWN/RESET: 16K CK + 65 ms
# Brown-out detection level 2.0 V. Serial program downloading enabled
# Boot Reset vector enable (2048 words, 0x3800).
lilypad-usb.name=Cosa LilyPad Arduino USB (ATmega32U4/Caterina, 8 MHz)
lilypad-usb.upload.tool=avrdude
lilypad-usb.upload.protocol=avr109
lilypad-usb.upload.maximum_size=28672
lilypad-usb.upload.maximum_data_size=2560
lilypad-usb.upload.maximum_eeprom_size=1024
lilypad-usb.upload.speed=57600
lilypad-usb.upload.disable_flushing=true
lilypad-usb.upload.use_1200bps_touch=true
lilypad-usb.upload.wait_for_upload_port=true

lilypad-usb.bootloader.path=caterina
lilypad-usb.bootloader.tool=avrdude
lilypad-usb.bootloader.low_fuses=0xff
lilypad-usb.bootloader.high_fuses=0xd8
lilypad-usb.bootloader.extended_fuses=0xce

lilypad-usb.build.mcu=atmega32u4
lilypad-usb.build.f_cpu=8000000L
lilypad-usb.build.vid=0x1B4F
lilypad-usb.build.pid=0x9208
lilypad-usb.usb_product="Arduino LilyPad USB"
lilypad-usb.build.board=LILYPAD_ARDUINO_USB
lilypad-usb.build.variant=arduino/lilypad-usb
lilypad-usb.build.extra_flags={build.usb_flags}
lilypad-usb.build.core=Cosa:cosa

