Atmel AVR
- Registry:
https://registry.platformio.org/platforms/platformio/atmelavr
- Configuration:
platform =
platformio/atmelavr
Atmel AVR 8-bit MCUs deliver a unique combination of performance, power efficiency and design flexibility. Optimized to speed time to market-and easily adapt to new ones-they are based on the industry’s most code-efficient architecture for C and assembly programming
For more detailed information please visit vendor site.
Configuration
Upload using Programmer
In the case of external programmers, it’s easy to brick a board simply by specifying incorrect upload flags. It’s highly recommended to use the upload_command option that gives the full control over flags used for uploading.
Note
The list of supported programmers available in avrdude is accessible via
the avrdude -c ? command
Configuration for the programmers:
AVRISP
[env:program_via_AVRISP] platform = atmelavr framework = arduino upload_protocol = custom upload_port = SERIAL_PORT_HERE upload_speed = 19200 upload_flags = -C ; use "tool-avrdude-megaavr" for the atmelmegaavr platform ${platformio.packages_dir}/tool-avrdude/avrdude.conf -p $BOARD_MCU -P $UPLOAD_PORT -b $UPLOAD_SPEED -c stk500v1 upload_command = avrdude $UPLOAD_FLAGS -U flash:w:$SOURCE:i
AVRISP mkII
[env:program_via_AVRISP_mkII] platform = atmelavr framework = arduino upload_protocol = custom upload_port = usb upload_flags = -C ; use "tool-avrdude-megaavr" for the atmelmegaavr platform ${platformio.packages_dir}/tool-avrdude/avrdude.conf -p $BOARD_MCU -P $UPLOAD_PORT -c stk500v2 upload_command = avrdude $UPLOAD_FLAGS -U flash:w:$SOURCE:i
USBtinyISP
[env:myenv] platform = atmelavr framework = arduino upload_protocol = usbtiny [env:program_via_USBtinyISP] platform = atmelavr framework = arduino upload_protocol = custom upload_flags = -C ; use "tool-avrdude-megaavr" for the atmelmegaavr platform ${platformio.packages_dir}/tool-avrdude/avrdude.conf -p $BOARD_MCU -c usbtiny upload_command = avrdude $UPLOAD_FLAGS -U flash:w:$SOURCE:i
DiamexISP
[env:program_via_DiamexISP] platform = atmelavr framework = arduino upload_protocol = avrispv2 upload_port = SERIAL_PORT_HERE upload_speed = 19200 upload_flags = -C ; use "tool-avrdude-megaavr" for the atmelmegaavr platform ${platformio.packages_dir}/tool-avrdude/avrdude.conf -p $BOARD_MCU -P $UPLOAD_PORT -b $UPLOAD_SPEED -c stk500v2 upload_command = avrdude $UPLOAD_FLAGS -U flash:w:$SOURCE:i
Arduino as ISP
[env:program_via_ArduinoISP] platform = atmelavr framework = arduino upload_protocol = custom upload_port = SERIAL_PORT_HERE upload_speed = 19200 upload_flags = -C ; use "tool-avrdude-megaavr" for the atmelmegaavr platform ${platformio.packages_dir}/tool-avrdude/avrdude.conf -p $BOARD_MCU -P $UPLOAD_PORT -b $UPLOAD_SPEED -c stk500v1 upload_command = avrdude $UPLOAD_FLAGS -U flash:w:$SOURCE:i
USBasp
[env:program_via_USBasp] platform = atmelavr framework = arduino upload_protocol = custom upload_port = usb upload_flags = -C ; use "tool-avrdude-megaavr" for the atmelmegaavr platform ${platformio.packages_dir}/tool-avrdude/avrdude.conf -p $BOARD_MCU -P $UPLOAD_PORT -c usbasp upload_command = avrdude $UPLOAD_FLAGS -U flash:w:$SOURCE:i
Parallel Programmer
[env:program_via_PP] platform = atmelavr framework = arduino upload_protocol = custom upload_flags = -C ; use "tool-avrdude-megaavr" for the atmelmegaavr platform ${platformio.packages_dir}/tool-avrdude/avrdude.conf -p $BOARD_MCU -c dapa -F upload_command = avrdude $UPLOAD_FLAGS -U flash:w:$SOURCE:i
Bus Pirate as ISP
[env:program_via_BP] platform = atmelavr framework = arduino upload_protocol = custom upload_port = SERIAL_PORT_HERE upload_speed = 115200 upload_flags = -C ; use "tool-avrdude-megaavr" for the atmelmegaavr platform ${platformio.packages_dir}/tool-avrdude/avrdude.conf -p $BOARD_MCU -P $UPLOAD_PORT -b $UPLOAD_SPEED -c buspirate upload_command = avrdude $UPLOAD_FLAGS -U flash:w:$SOURCE:i
Upload EEPROM data
To upload EEPROM data (from EEMEM directive) you need to use uploadeep
target instead upload for pio run --target command.
For example, pio run -t uploadeep.
Erase chip before programming
In some cases erasing chip memory is a mandatory procedure before uploading bootloader
or setting fuses. AVRDUDE provides a special flag -e that causes a chip erase to be
executed. This will reset the contents of the flash ROM and EEPROM to the value 0xff,
and clear all lock bits. The easiest way to use it is to add this flag via the
upload_flags option:
[env:uno]
platform = atmelavr
framework = arduino
board = uno
upload_flags =
-e
Fuses programming
PlatformIO has a built-in target called fuses for setting fuse bits. The default fuse
bits are predefined in the board manifest file in the fuses section. For example,
fuses section for Arduino Uno board.
To set fuse bits you need to use target fuses with pio run --target command.
Custom fuses
Custom fuse values and upload flags (based on upload protocol) should be specified in
“platformio.ini” (Project Configuration File). The lfuse and hfuse bits are mandatory, efuse is optional
and not supported by all targets. An example of setting custom fuses for uno board:
[env:custom_fuses]
platform = atmelavr
framework = arduino
board = uno
upload_protocol = stk500v1
upload_speed = 19200
board_fuses.lfuse = 0xAA
board_fuses.hfuse = 0xBB
board_fuses.efuse = 0xCC
upload_flags =
-PCOM15
-b$UPLOAD_SPEED
-e
MiniCore, MegaCore, MightyCore, MajorCore and MicroCore
MiniCore, MegaCore, MightyCore, MajorCore and MicroCore support
dynamic fuses generation. Generated values are based on the following parameters:
Parameter
Description
Default value
board_build.f_cpuSpecifies the clock frequencies in Hz. Used to determine what oscillator option to choose. A capital L has to be added to the end of the frequency number.
16000000L
board_hardware.oscillatorSpecifies which oscillator is used
internalorexternal. Internal oscillator only works withf_cpuvalues8000000Land1000000L
external
board_hardware.uartSpecifies the hardware UART port used for serial upload. can be
uart0,uart1,uart2oruart3depending on the target. Useno_bootloaderif you’re not using a bootloader for serial upload.
uart0
board_hardware.bodSpecifies the hardware brown-out detection. Use
disabledto disable brown-out detection.
2.7v
board_hardware.eesaveSpecifies if the EEPROM memory should be retained when uploading using a programmer. Use
noto disable
yes
board_hardware.ckoutEnables system clock output on targets that have this feature. The system clock will be output on a dedicated output pin. See the target datasheet for more information. Use
Yesto enable
no
board_hardware.jtagenEnables the JTAG programming and debugging interface for targets that supports JTAG. Use
Yesto enable
no
board_hardware.cfdEnables clock failure detection. Note that this feature is only available on ATmega324PB and ATmega328PB. Use
Yesto enable CFD
no
Valid BOD values:
ATmega8, ATmega8515, ATmega8535/16/32, ATmega64/128
AT90CAN32/64/128
Other targets
4.0v
4.1v
4.3v
2.7v
4.0v
2.7v
disabled
3.9v
1.8v
3.8v
disabled
2.7v
2.6v
2.5v
disabled
Hardware configuration example:
[env:custom_fuses]
platform = atmelavr
framework = arduino
board = ATmega32
board_build.f_cpu = 1000000L
board_hardware.uart = uart0
board_hardware.oscillator = internal
board_hardware.bod = 2.7v
board_hardware.eesave = no
upload_protocol = usbasp
upload_flags =
-Pusb
Overriding default fuses command
PlatformIO splits the command for programming fuses in the following overridable parts:
Variable
Description
Examples
FUSESUPLOADERThe tool used for setting fuses
By default
avrdudeis used
FUSESUPLOADERFLAGSGeneral command-line options that control uploader’s behavior
-D,-V,-P COM1,-C atmelice_isp,-b 115200
FUSESFLAGSA list of flags specific to fuses settings
-Ulock:w:0x2F:m,-Uefuse:w:0xCB:m,-Ulfuse:w:0xFF:m
SETFUSESCMDVariable that holds the final command compiled from variables above
$FUSESUPLOADER $FUSESUPLOADERFLAGS $UPLOAD_FLAGS $FUSESFLAGS
If for any reason default parameters are not suitable for your project, you can override the entire upload command or any particular part of that command using an extra script, for example, you can override only fuses values:
Import("env")
env.Replace(
FUSESFLAGS=[
"-Uhfuse:w:0xAA:m",
"-Uefuse:w:0xBB:m",
"-Ulfuse:w:0xCC:m",
"-Ulock:w:0xDD:m"
]
)
Or override a specific uploader flag:
Import("env")
env.Append(
FUSESUPLOADERFLAGS=[
"-V",
"-D"
]
)
It’s also possible to completely override the entire upload command:
Import("env")
env.Replace(
FUSESUPLOADERFLAGS=[
# use "tool-avrdude-megaavr" for the atmelmegaavr platform
"-C", "$PROJECT_PACKAGES_DIR/tool-avrdude/avrdude.conf",
"-p", "$BOARD_MCU",
"-c", "atmelice_isp",
"-e", "-v"
],
SETFUSESCMD="avrdude $FUSESUPLOADERFLAGS -Ulock:w:0x0F:m",
)
Bootloader programming
PlatformIO has a built-in target called bootloader for flashing bootloaders. The
default bootloader image and corresponding fuse bits are predefined in the board manifest
file in the bootloader section, for example, Arduino Uno.
To upload a bootloader image you need to use target bootloader with
pio run --target command.
Custom bootloader
Custom bootloader and accompanying fuses should be specified in “platformio.ini” (Project Configuration File).
If lock_bits and unlock_bits are not set then the default values 0x0F and
0x3F are used accordingly. An example of setting custom bootloader for uno
board:
[env:uno]
platform = atmelavr
framework = arduino
board = uno
board_bootloader.file = /path/to/custom/bootloader.hex
board_bootloader.lfuse = 0xFF
board_bootloader.hfuse = 0xDE
board_bootloader.efuse = 0xFD
board_bootloader.lock_bits = 0x0F
board_bootloader.unlock_bits = 0x3F
MiniCore, MegaCore, MightyCore and MajorCore have a wide variety of
precompiled bootloaders. Bootloader binaries are dynamically selected according to the
hardware parameters f_cpu, oscillator, uart and upload_speed. For a
complete table with all available baud rates, see the Optiboot flash repo.
Here is a table with recommended baud rates for different clock frequencies:
Frequency
Oscillator type
Recommended upload speed
20000000Lexternal
115200
18432000Lexternal
115200
16000000Lexternal
115200
14745600Lexternal
115200
12000000Lexternal
57600
11059200Lexternal
115200
8000000Lexternal/internal
57600/38400
7372800Lexternal
115200
4000000Lexternal
9600
3686400Lexternal
115200
2000000Lexternal
9600
1843200Lexternal
115200
1000000Lexternal/internal
9600
Overriding default bootloader command
PlatformIO splits the command for programming bootloader in the following overridable parts:
Variable
Description
Examples
BOOTUPLOADERThe tool used for programming bootloader image
By default
avrdudeis used
BOOTUPLOADERFLAGSGeneral command-line options that control uploader’s behavior
-D,-V,-P COM1,-C atmelice_isp,-b 115200
BOOTFLAGSA list of flags specific to bootloader settings
-Uflash:w:/path/to/bootlader_image:i,-Ulock:w:0x2F:m
UPLOADBOOTCMDVariable that holds the final command compiled from variables above
$BOOTUPLOADER $BOOTUPLOADERFLAGS $UPLOAD_FLAGS $BOOTFLAGS
If for any reason default parameters are not suitable for your project, you can override the entire upload command or any particular part of that command using an extra script, for example, you can override only fuses values:
Import("env")
bootloader_path = "/path/to/custom/bootloader.hex"
env.Replace(
BOOTFLAGS=[
"-Uflash:w:%s:i" % bootloader_path,
"-Ulock:w:0xFF:m"
]
)
Or override a specific uploader flag:
Import("env")
env.Append(
BOOTUPLOADERFLAGS=[
"-e", "-p", "/dev/cu.usbserial-1414302"
]
)
It’s also possible to completely override the entire upload command:
Import("env")
env.Replace(
BOOTUPLOADERFLAGS=[
# use "tool-avrdude-megaavr" for the atmelmegaavr platform
"-C", "$PROJECT_PACKAGES_DIR/tool-avrdude/avrdude.conf",
"-p", "$BOARD_MCU",
"-c", "atmelice_isp"
],
UPLOADBOOTCMD="avrdude $BOOTUPLOADERFLAGS -Ulock:w:0x0F:m",
)
Examples
Examples are listed from Atmel AVR development platform repository:
Debugging
Debugging - “1-click” solution for debugging with a zero configuration.
Tools & Debug Probes
Supported debugging tools are listed in “Debug” column. For more detailed information, please scroll table by horizontal. You can switch between debugging Tools & Debug Probes using debug_tool option in “platformio.ini” (Project Configuration File).
Warning
You will need to install debug tool drivers depending on your system. Please click on compatible debug tool below for the further instructions.
External Debug Tools
Boards listed below are compatible with Debugging but DEPEND ON external debug probe. They ARE NOT READY for debugging. Please click on board name for the further details.
Name |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|
ATMEGA128 |
16MHz |
128KB |
4KB |
|
ATMEGA1280 |
16MHz |
128KB |
8KB |
|
ATMEGA1281 |
16MHz |
128KB |
8KB |
|
ATMEGA1284 |
16MHz |
128KB |
16KB |
|
ATMEGA1284P |
16MHz |
128KB |
16KB |
|
ATMEGA16 |
16MHz |
16KB |
1KB |
|
ATMEGA164P |
16MHz |
16KB |
1KB |
|
ATMEGA168 |
16MHz |
16KB |
1KB |
|
ATMEGA168P |
16MHz |
16KB |
1KB |
|
ATMEGA2560 |
16MHz |
256KB |
8KB |
|
ATMEGA324A |
16MHz |
32KB |
2KB |
|
ATMEGA324P |
16MHz |
32KB |
2KB |
|
ATMEGA324PA |
16MHz |
32KB |
2KB |
|
ATMEGA328 |
16MHz |
32KB |
2KB |
|
ATMEGA328P |
16MHz |
32KB |
2KB |
|
ATMEGA48 |
16MHz |
4KB |
512B |
|
ATMEGA48P |
16MHz |
4KB |
512B |
|
ATMEGA644P |
16MHz |
64KB |
4KB |
|
ATMEGA8 |
16MHz |
8KB |
1KB |
|
ATMEGA88 |
16MHz |
8KB |
1KB |
|
ATMEGA88P |
16MHz |
8KB |
1KB |
|
ATTINY13 |
9MHz |
1KB |
64B |
|
ATTINY13A |
9MHz |
1KB |
64B |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATTINY85 |
8MHz |
8KB |
512B |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA328P |
12MHz |
28KB |
2KB |
|
ATMEGA328P |
12MHz |
28KB |
2KB |
|
ATMEGA328P |
16MHz |
28KB |
2KB |
|
ATMEGA328P |
16MHz |
28KB |
2KB |
|
ATTINY85 |
8MHz |
8KB |
512B |
|
ATTINY85 |
16MHz |
8KB |
512B |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA168 |
16MHz |
14KB |
1KB |
|
ATMEGA328P |
16MHz |
28KB |
2KB |
|
ATMEGA168 |
16MHz |
14KB |
1KB |
|
ATMEGA328P |
16MHz |
30KB |
2KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA328P |
8MHz |
30KB |
2KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA168 |
8MHz |
14KB |
1KB |
|
ATMEGA328P |
8MHz |
30KB |
2KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
ATMEGA1280 |
16MHz |
124KB |
8KB |
|
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA168 |
16MHz |
14KB |
1KB |
|
ATMEGA328P |
16MHz |
28KB |
2KB |
|
ATMEGA168 |
16MHz |
14KB |
1KB |
|
ATMEGA8 |
16MHz |
7KB |
1KB |
|
ATMEGA168 |
16MHz |
14KB |
1KB |
|
ATMEGA328P |
16MHz |
30KB |
2KB |
|
ATMEGA328P |
16MHz |
30KB |
2KB |
|
ATMEGA168 |
8MHz |
14KB |
1KB |
|
ATMEGA168 |
16MHz |
14KB |
1KB |
|
ATMEGA328P |
8MHz |
30KB |
2KB |
|
ATMEGA328P |
16MHz |
30KB |
2KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA328P |
16MHz |
28KB |
2KB |
|
ATMEGA328P |
16MHz |
30KB |
2KB |
|
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATTINY85 |
16MHz |
5.87KB |
512B |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
ATMEGA2560 |
16MHz |
252KB |
8KB |
|
ATTINY2313 |
8MHz |
2KB |
128B |
|
ATTINY24 |
8MHz |
2KB |
128B |
|
ATTINY25 |
8MHz |
2KB |
128B |
|
ATTINY4313 |
8MHz |
4KB |
256B |
|
ATTINY44 |
8MHz |
4KB |
256B |
|
ATTINY45 |
8MHz |
4KB |
256B |
|
ATTINY84 |
8MHz |
8KB |
512B |
|
ATTINY85 |
8MHz |
8KB |
512B |
|
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA328P |
16MHz |
31KB |
2KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
ATMEGA1284P |
16MHz |
127KB |
16KB |
|
ATMEGA168P |
16MHz |
15.50KB |
1KB |
|
ATMEGA168P |
8MHz |
15.50KB |
1KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA1284P |
16MHz |
127KB |
16KB |
|
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
ATMEGA644P |
16MHz |
63KB |
4KB |
|
ATMEGA644P |
8MHz |
63KB |
4KB |
|
ATMEGA328P |
16MHz |
30KB |
2KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA2560 |
16MHz |
252KB |
8KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA2560 |
16MHz |
252KB |
8KB |
|
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
ATMEGA1284P |
16MHz |
127KB |
16KB |
|
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
ATMEGA644 |
16MHz |
63KB |
4KB |
|
ATMEGA644 |
8MHz |
63KB |
4KB |
|
ATMEGA644P |
16MHz |
63KB |
4KB |
|
ATMEGA644P |
8MHz |
63KB |
4KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA128RFA1 |
16MHz |
124KB |
16KB |
|
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA2560 |
8MHz |
252KB |
8KB |
|
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
ATMEGA2560 |
8MHz |
252KB |
8KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
ATMEGA328P |
8MHz |
30KB |
2KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA328P |
8MHz |
30KB |
2KB |
|
ATMEGA328P |
8MHz |
30KB |
2KB |
|
ATMEGA8 |
12MHz |
8KB |
1KB |
|
ATMEGA1284P |
16MHz |
120.00KB |
16KB |
|
ATMEGA1284P |
16MHz |
127KB |
16KB |
|
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
ATMEGA88 |
8MHz |
8KB |
1KB |
|
ATMEGA128 |
16MHz |
128KB |
4KB |
|
ATMEGA16 |
15MHz |
16KB |
1KB |
|
ATMEGA1284P |
20MHz |
128KB |
16KB |
|
ATMEGA16 |
15MHz |
16KB |
1KB |
|
ATMEGA1284P |
20MHz |
128KB |
16KB |
|
ATMEGA328P |
16MHz |
31.50KB |
2KB |
Stable and upstream versions
You can switch between stable releases of Atmel AVR development platform and the latest upstream version using platform option in “platformio.ini” (Project Configuration File) as described below.
Stable
; Latest stable version, NOT recommended
; Pin the version as shown below
[env:latest_stable]
platform = atmelavr
board = ...
; Specific version
[env:custom_stable]
platform = atmelavr@x.y.z
board = ...
Upstream
[env:upstream_develop]
platform = https://github.com/platformio/platform-atmelavr.git
board = ...
Packages
Name |
Description |
|---|---|
The official Arduino Wiring-based Framework for Microchip AVR microcontrollers |
|
Arduino Wiring-based Framework (ATtinyCore) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (Bean Core) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (Core13) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (Digistump Core) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (Dwenguino Core) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (MajorCore) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (MegaCore) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (MicroCore) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (MightyCore) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (MiniCore) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (Nicai Core) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (Panstamp Core) |
|
Arduino Wiring-based Framework for Microchip AVR microcontrollers (Prusa Rambo Core) |
|
AVRDUDE is a utility to download/upload/manipulate the ROM and EEPROM contents of AVR microcontrollers |
|
ATTiny usb bootloader with a strong emphasis on bootloader compactness |
|
simavr is a lean, mean and hackable AVR simulator |
|
GCC Toolchain for Microchip AVR microcontrollers |
Warning
Linux Users:
Install “udev” rules 99-platformio-udev.rules
Raspberry Pi users, please read this article Enable serial port on Raspberry Pi.
Windows Users:
Please check that you have a correctly installed USB driver from board manufacturer
Frameworks
Name |
Description |
|---|---|
Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences. |
Boards
Note
You can list pre-configured boards by pio boards command
For more detailed
boardinformation please scroll the tables below by horizontally.
Adafruit
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
External |
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
External |
ATTINY85 |
8MHz |
8KB |
512B |
|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA328P |
12MHz |
28KB |
2KB |
|
External |
ATMEGA328P |
12MHz |
28KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
28KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
28KB |
2KB |
|
External |
ATTINY85 |
8MHz |
8KB |
512B |
|
External |
ATTINY85 |
16MHz |
8KB |
512B |
Alorium Technology
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
Anarduino
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
Arduboy
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
Arduino
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA168 |
16MHz |
14KB |
1KB |
|
External |
ATMEGA328P |
16MHz |
28KB |
2KB |
|
External |
ATMEGA168 |
16MHz |
14KB |
1KB |
|
External |
ATMEGA328P |
16MHz |
30KB |
2KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA328P |
8MHz |
30KB |
2KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA168 |
8MHz |
14KB |
1KB |
|
External |
ATMEGA328P |
8MHz |
30KB |
2KB |
|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
External |
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
External |
ATMEGA1280 |
16MHz |
124KB |
8KB |
|
External |
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA168 |
16MHz |
14KB |
1KB |
|
External |
ATMEGA328P |
16MHz |
28KB |
2KB |
|
External |
ATMEGA168 |
16MHz |
14KB |
1KB |
|
External |
ATMEGA8 |
16MHz |
7KB |
1KB |
|
External |
ATMEGA168 |
16MHz |
14KB |
1KB |
|
External |
ATMEGA328P |
16MHz |
30KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
30KB |
2KB |
|
External |
ATMEGA168 |
8MHz |
14KB |
1KB |
|
External |
ATMEGA168 |
16MHz |
14KB |
1KB |
|
External |
ATMEGA328P |
8MHz |
30KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
30KB |
2KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
Atmel
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
No |
ATTINY1634 |
8MHz |
16KB |
1KB |
|
No |
ATTINY167 |
8MHz |
16KB |
512B |
|
External |
ATTINY2313 |
8MHz |
2KB |
128B |
|
External |
ATTINY24 |
8MHz |
2KB |
128B |
|
External |
ATTINY25 |
8MHz |
2KB |
128B |
|
No |
ATTINY261 |
8MHz |
2KB |
128B |
|
External |
ATTINY4313 |
8MHz |
4KB |
256B |
|
No |
ATTINY43U |
8MHz |
4KB |
256B |
|
External |
ATTINY44 |
8MHz |
4KB |
256B |
|
No |
ATTINY441 |
8MHz |
4KB |
256B |
|
External |
ATTINY45 |
8MHz |
4KB |
256B |
|
No |
ATTINY461 |
8MHz |
4KB |
256B |
|
No |
ATTINY48 |
8MHz |
4KB |
256B |
|
No |
ATTINY828 |
8MHz |
8KB |
512B |
|
External |
ATTINY84 |
8MHz |
8KB |
512B |
|
No |
ATTINY841 |
8MHz |
8KB |
512B |
|
External |
ATTINY85 |
8MHz |
8KB |
512B |
|
No |
ATTINY861 |
8MHz |
8KB |
512B |
|
No |
ATTINY87 |
8MHz |
8KB |
512B |
|
No |
ATTINY88 |
8MHz |
8KB |
512B |
|
External |
ATMEGA8 |
12MHz |
8KB |
1KB |
BQ
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
16MHz |
28KB |
2KB |
BSFrance
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
BitWizard
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
16MHz |
30KB |
2KB |
Controllino
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
External |
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
External |
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
Digistump
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
No |
ATTINY167 |
16MHz |
14.50KB |
512B |
|
No |
ATTINY167 |
16MHz |
14.50KB |
512B |
|
No |
ATTINY167 |
16MHz |
14.50KB |
512B |
|
External |
ATTINY85 |
16MHz |
5.87KB |
512B |
Dwengo
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
No |
AT90USB646 |
16MHz |
60KB |
2KB |
Elektor
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
No |
ATMEGA328PB |
16MHz |
31.50KB |
2KB |
Engduino
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
EnviroDIY
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA1284P |
8MHz |
127KB |
16KB |
FYSETC
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA2560 |
16MHz |
252KB |
8KB |
LightUp
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
Linino
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
LowPowerLab
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
16MHz |
31KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
External |
ATMEGA1284P |
16MHz |
127KB |
16KB |
MediaTek Labs
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
Microchip
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
No |
AT90CAN128 |
16MHz |
128KB |
4KB |
|
No |
AT90CAN32 |
16MHz |
32KB |
2KB |
|
No |
AT90CAN64 |
16MHz |
64KB |
4KB |
|
External |
ATMEGA128 |
16MHz |
128KB |
4KB |
|
External |
ATMEGA1280 |
16MHz |
128KB |
8KB |
|
External |
ATMEGA1281 |
16MHz |
128KB |
8KB |
|
External |
ATMEGA1284 |
16MHz |
128KB |
16KB |
|
External |
ATMEGA1284P |
16MHz |
128KB |
16KB |
|
External |
ATMEGA16 |
16MHz |
16KB |
1KB |
|
No |
ATMEGA162 |
16MHz |
16KB |
1KB |
|
No |
ATMEGA164A |
16MHz |
16KB |
1KB |
|
External |
ATMEGA164P |
16MHz |
16KB |
1KB |
|
No |
ATMEGA165A |
16MHz |
16KB |
1KB |
|
No |
ATMEGA165P |
16MHz |
16KB |
1KB |
|
External |
ATMEGA168 |
16MHz |
16KB |
1KB |
|
External |
ATMEGA168P |
16MHz |
16KB |
1KB |
|
No |
ATMEGA168PB |
16MHz |
16KB |
1KB |
|
No |
ATMEGA169P |
16MHz |
16KB |
1KB |
|
No |
ATMEGA169A |
16MHz |
16KB |
1KB |
|
External |
ATMEGA2560 |
16MHz |
256KB |
8KB |
|
No |
ATMEGA2561 |
16MHz |
256KB |
8KB |
|
No |
ATMEGA32 |
16MHz |
32KB |
2KB |
|
External |
ATMEGA324A |
16MHz |
32KB |
2KB |
|
External |
ATMEGA324P |
16MHz |
32KB |
2KB |
|
External |
ATMEGA324PA |
16MHz |
32KB |
2KB |
|
No |
ATMEGA324PB |
16MHz |
32KB |
2KB |
|
No |
ATMEGA325 |
16MHz |
32KB |
2KB |
|
No |
ATMEGA3250 |
16MHz |
32KB |
2KB |
|
No |
ATMEGA3250P |
16MHz |
32KB |
2KB |
|
No |
ATMEGA325P |
16MHz |
32KB |
2KB |
|
External |
ATMEGA328 |
16MHz |
32KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
32KB |
2KB |
|
No |
ATMEGA328PB |
16MHz |
32KB |
2KB |
|
No |
ATMEGA329 |
16MHz |
32KB |
2KB |
|
No |
ATMEGA3290 |
16MHz |
32KB |
2KB |
|
No |
ATMEGA3290P |
16MHz |
32KB |
2KB |
|
No |
ATMEGA329P |
16MHz |
32KB |
2KB |
|
External |
ATMEGA48 |
16MHz |
4KB |
512B |
|
External |
ATMEGA48P |
16MHz |
4KB |
512B |
|
No |
ATMEGA48PB |
16MHz |
4KB |
512B |
|
No |
ATMEGA64 |
16MHz |
64KB |
4KB |
|
No |
ATMEGA640 |
16MHz |
64KB |
8KB |
|
No |
ATMEGA644A |
16MHz |
64KB |
4KB |
|
External |
ATMEGA644P |
16MHz |
64KB |
4KB |
|
No |
ATMEGA645 |
16MHz |
64KB |
4KB |
|
No |
ATMEGA6450 |
16MHz |
64KB |
4KB |
|
No |
ATMEGA6450P |
16MHz |
64KB |
4KB |
|
No |
ATMEGA645P |
16MHz |
64KB |
4KB |
|
No |
ATMEGA649 |
16MHz |
64KB |
4KB |
|
No |
ATMEGA6490 |
16MHz |
64KB |
4KB |
|
No |
ATMEGA6490P |
16MHz |
64KB |
4KB |
|
No |
ATMEGA649P |
16MHz |
64KB |
4KB |
|
External |
ATMEGA8 |
16MHz |
8KB |
1KB |
|
No |
ATMEGA8515 |
16MHz |
8KB |
512B |
|
No |
ATMEGA8535 |
16MHz |
8KB |
512B |
|
External |
ATMEGA88 |
16MHz |
8KB |
1KB |
|
External |
ATMEGA88P |
16MHz |
8KB |
1KB |
|
No |
ATMEGA88PB |
16MHz |
8KB |
1KB |
|
External |
ATTINY13 |
9MHz |
1KB |
64B |
|
External |
ATTINY13A |
9MHz |
1KB |
64B |
|
No |
AT90PWM216 |
16MHz |
16KB |
1KB |
|
No |
AT90PWM316 |
16MHz |
16KB |
1KB |
Microduino
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA168P |
16MHz |
15.50KB |
1KB |
|
External |
ATMEGA168P |
8MHz |
15.50KB |
1KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA1284P |
16MHz |
127KB |
16KB |
|
External |
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
External |
ATMEGA644P |
16MHz |
63KB |
4KB |
|
External |
ATMEGA644P |
8MHz |
63KB |
4KB |
OpenEnergyMonitor
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
16MHz |
30KB |
2KB |
PanStamp
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
8MHz |
31.50KB |
2KB |
Pinoccio
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
No |
ATMEGA256RFR2 |
16MHz |
248KB |
32KB |
Pololu Corporation
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
Prusa 3D
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA2560 |
16MHz |
252KB |
8KB |
Punch Through
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
Quirkbot
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
RedBearLab
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
RepRap
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA2560 |
16MHz |
252KB |
8KB |
SODAQ
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
External |
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
External |
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
External |
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
External |
ATMEGA1284P |
8MHz |
127KB |
16KB |
Sanguino
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA1284P |
16MHz |
127KB |
16KB |
|
External |
ATMEGA1284P |
8MHz |
127KB |
16KB |
|
External |
ATMEGA644 |
16MHz |
63KB |
4KB |
|
External |
ATMEGA644 |
8MHz |
63KB |
4KB |
|
External |
ATMEGA644P |
16MHz |
63KB |
4KB |
|
External |
ATMEGA644P |
8MHz |
63KB |
4KB |
SeeedStudio
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
SparkFun
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA128RFA1 |
16MHz |
124KB |
16KB |
|
External |
ATMEGA328P |
8MHz |
31.50KB |
2KB |
|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA2560 |
8MHz |
252KB |
8KB |
|
External |
ATMEGA2560 |
16MHz |
248KB |
8KB |
|
External |
ATMEGA2560 |
8MHz |
252KB |
8KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
|
External |
ATMEGA32U4 |
8MHz |
28KB |
2.50KB |
|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
|
External |
ATMEGA328P |
8MHz |
31.50KB |
2KB |
SpellFoundry
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
8MHz |
30KB |
2KB |
The Things Network
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
Till Harbaum
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA32U4 |
16MHz |
28KB |
2.50KB |
TinyCircuits
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
8MHz |
30KB |
2KB |
|
External |
ATMEGA328P |
8MHz |
30KB |
2KB |
Wicked Device
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA1284P |
16MHz |
120.00KB |
16KB |
|
External |
ATMEGA1284P |
16MHz |
127KB |
16KB |
Wisen
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |
makerlab.mx
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
No |
ATMEGA256RFR2 |
16MHz |
248KB |
32KB |
nicai-systems
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA88 |
8MHz |
8KB |
1KB |
|
External |
ATMEGA128 |
16MHz |
128KB |
4KB |
|
External |
ATMEGA16 |
15MHz |
16KB |
1KB |
|
External |
ATMEGA1284P |
20MHz |
128KB |
16KB |
|
External |
ATMEGA16 |
15MHz |
16KB |
1KB |
|
External |
ATMEGA1284P |
20MHz |
128KB |
16KB |
ubIQio
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
|---|---|---|---|---|---|
External |
ATMEGA328P |
16MHz |
31.50KB |
2KB |