Skip to content

Supported microcontrollers

paradajz edited this page Jun 16, 2020 · 32 revisions

This section describes supported microcontrollers which are used for supported OpenDeck boards and which can be used to create custom board variants. It also lists peripherals for each MCU which can be used in OpenDeck firmware.

ATmega32u4

  • 8-bit architecture
  • 1kB of EEPROM memory
  • 32kB of Flash memory
  • 2.5kB of RAM
  • Requires 16MHz crystal to run OpenDeck firmware (no other values have been tested)
  • 1 UART channel
  • 1 I2C channel

UART pinout

Channel Rx Tx
0 D2 D3

I2C pinout

Channel SDA SCL
0 D1 D0

ATmega2560

  • 8-bit architecture
  • 4kB of EEPROM memory
  • 256kB of Flash memory
  • 8kB of RAM
  • Requires 16MHz crystal to run OpenDeck firmware (no other values have been tested)
  • 4 UART channels
  • 1 I2C channel

UART pinout

Channel Rx Tx
0 E0 E1
1 D2 D3
2 H0 H1
3 J0 J1

I2C pinout

Channel SDA SCL
0 D1 D0

ATmega328P

  • 8-bit architecture
  • 1kB of EEPROM memory
  • 32kB of Flash memory
  • 2kB of RAM
  • Requires 16MHz crystal to run OpenDeck firmware (no other values have been tested)
  • 1 UART channel
  • 1 I2C channel

UART pinout

Channel Rx Tx
0 D0 D1

I2C pinout

Channel SDA SCL
0 C4 C5

ATmega8u2

  • 8-bit architecture
  • 0.5kB of EEPROM memory
  • 8kB of Flash memory
  • 0.5kB of RAM
  • Requires 16MHz crystal to run OpenDeck firmware (no other values have been tested)
  • 1 UART channel

Note: recommeded to use only as USB link between the MCUs which don't support USB such as ATmega2560 or ATmega328P since regular OpenDeck firmware doesn't fit in this MCU.

UART pinout

Channel Rx Tx
0 D2 D3

ATmega16u2

  • 8-bit architecture
  • 0.5kB of EEPROM memory
  • 16kB of Flash memory
  • 0.5kB of RAM
  • Requires 16MHz crystal to run OpenDeck firmware (no other values have been tested)
  • 1 UART channel

Note: recommeded to use only as USB link between the MCUs which don't support USB such as ATmega2560 or ATmega328P since regular OpenDeck firmware doesn't fit in this MCU.

UART pinout

Channel Rx Tx
0 D2 D3

AT90USB1286

  • 8-bit architecture
  • 4kB of EEPROM memory
  • 128kB of Flash memory
  • 8kB of RAM
  • Requires 16MHz crystal to run OpenDeck firmware (no other values have been tested)
  • 1 UART channel
  • 1 I2C channel

UART pinout

Channel Rx Tx
0 D2 D3

I2C pinout

Channel SDA SCL
0 D1 D0

STM32F405

  • 32-bit architecture
  • 1024kB of Flash memory (~128kB of EEPROM memory is simulated within flash space)
  • 192kB of RAM
  • Requires 16MHz crystal to run OpenDeck firmware (no other values have been tested)
  • 6 UART channels
  • 3 I2C channels

UART pinout

Channel Rx Tx
0 D2 D3
0 D2 D3
0 D2 D3
0 D2 D3
0 D2 D3
0 D2 D3

I2C pinout

Channel SDA SCL
0 D1 D0
0 D1 D0
0 D1 D0

STM32F407

  • 32-bit architecture
  • 1024kB of Flash memory (~128kB of EEPROM memory is simulated within flash space)
  • 192kB of RAM
  • Requires 16MHz crystal to run OpenDeck firmware (no other values have been tested)
  • 6 UART channels
  • 3 I2C channels

UART pinout

Channel Rx Tx
0 D2 D3
0 D2 D3
0 D2 D3
0 D2 D3
0 D2 D3
0 D2 D3

I2C pinout

Channel SDA SCL
0 D1 D0
0 D1 D0
0 D1 D0
Clone this wiki locally