Expansion decks of the Crazyflie 2.x

Here is a list of expansion decks that are available for the Crazyflie 2.x:

Expansion Deck Description
LED-ring deck  The LED-ring expansion deck
Buzzer deck  The Buzzer expansion deck
Qi 1.2 wireless charging deck  Qi 1.2 compatible wireless charging deck
Prototyping deck  The prototype expansion deck
Breakout deck  The breakout expansion deck
BigQuad deck  EARLY ACCESS Expansion deck to build a bigger quad
Micro SD card deck  Expansion deck to read, write files to SD-card
Z-ranger deck V2  Expansion deck for precise height control.
Lighthouse positioning deck  Expansion deck that supports the SteamVR Lighthouse positioning
Motion capture marker deck  Expansion deck where motion capture markers can easily be mounted
Active marker deck  Expansion deck with active IR LED for motion capture markers
Loco Positioning deck  Expansion deck for the Loco positioning system
Multi-ranger deck  Expansion deck for detecting obstacles
Flow deck V2  Expansion deck for detecting flow and height
AI deck  AI expansion deck

Additional information

Expansion board template: The Crazyflie 2.0/2.1 expansion port template

Solder pins to a deck: Instructions to solder pins directly to the deck

Mechanical architecture

Expansion boards can be installed on top, bottom, or both top and bottom of the Crazyflie 2.x. The Crazyflie 2.x and expansion board have female, pass-through connectors that can be fitted with male pins. Pins in two differing lengths exist to permit installation of either one expansion board on top, one board on bottom and one on top, or two boards on top. There should always be one expansion board or battery holder on top to secure the battery, unless the battery is held by other means (ie. rubber band, sticky pad, etc…).

Orientation

WARNING: It is important to install expansion boards in the right orientation. Installing a board in the wrong orientation might damage the expansion board and the Crazyflie 2.x.

All expansion boards display a logo describing the correct orientation:

orientation symbols, overview

One expansion board on top

One expansion deck on top

One expansion board on top, one on bottom

One expansion deck on top and one under

Two expansion board on top

Two expansions decks on top

Expansion port pinout

Expansion port pinout

  • The Crazyflie 2.x is a 3.0V system, meaning a high output will be 3.0V but still compatible with a 3.3V system.
  • VCC can supply max 100mA
  • VCOM can supply max 1.0A
  • All IO pins are 5V tolerant except PA5 and the NRF51 pins
  • The NRF51 pins can be multiplexed with any of the available NRF51 peripheral.
  • The STM32F405RG pins can be multiplexed with more functions.

For full specification see the datasheets of the NRF51 and the STM32F405

Expansion board detection

Expansion boards are detected by having a one-wire memory cabled on the OW pin. At startup memories are detected and read by the power management MCU, the nRF51822. If no incompatibility is detected the nRF51 starts the system and makes available the memories content to the application processor, the STM32F4, where the application code is running.

Deck info

VID PID ID Name Weight Consumption Mount location
0xBC 0x01 bcLedRing LED-ring deck  3.3g 0 - 700mA Under
0xBC 0x02 bcQi Qi 1.2 wireless charging deck  5g N/A Under
0xBC 0x04 bcBuzzer Buzzer deck  1.8g 10mA Under/Above
0xBC 0x05 bcBigQuad BigQuad deck  3.8g N/A Under/Above
0xBC 0x06 bcLoco Loco Positioning deck  3.3g 160mA Under/Above
0xBC 0x08 bcUSD Micro SD card deck  1.7g ~30mA Under/Above
0xBC 0x09 bcZRanger Z-ranger deck 1.3g ~15mA Under
0xBC 0x0A bcFlow Flow deck 1.6g ~40mA Under
0xBC 0x0B bcOA Obstacle Avoidance N/A ~0.3mA Above
0xBC 0x0C bcMultiranger Multi-ranger deck  2.3g ~90mA (depending on mode) Above
0xBC 0x0D bcMocap Motion capture marker deck  1.6g 0mA Above
0xBC 0x0E bcZRanger2 Z-ranger deck V2  1.3g ~15mA Under
0xBC 0x0F bcFlow2 Flow deck V2  1.6g ~40mA Under
0xBC 0x10 bcLighthouse4 Lighthouse positioning deck  2.7g ~40mA Above
0xBC 0x11 bcActiveM Active marker deck  3.3g ~40mA Above
0xBC 0x12 bcAI AI deck  4.4g depending on deck app Above

Deck pin allocation

Below is a table showing which pins each deck uses. The table also contains information about boards that are not released yet, these are subject to change.

Assignments in parenthesis are unconnected but connectable via solder bridges or 0 Ohm resistors and are thus alternative connections. The idea is to make it possible to re-route a connection if you want to use two decks where the connections collide.

  UART1 UART1 I2C I2C STM32 IO STM32 IO STM32 IO STM32 IO UART2 UART2 SPI SPI SPI nRF51 IO nRF51 IO  
Name RX1 TX1 SDA SCL IO1 IO2 IO3 IO4 TX2 RX2 SCK MOSI MISO NIO1 NIO2 PWR
LED-ring deck            PWM PWM                 VCOM
Qi 1.2 wireless charging deck                            CHG   N/A
Micro SD card deck  (MISO) (SCK)     (CS) (CS) (CS) CS/(MOSI)     SCK MOSI MISO     VCC
Loco Positioning deck  IRQ RST     CS (IRQ) (RST)       SCK MOSI MISO     VCOM
BigQuad deck  (RX1) (TX1) (SDA) (SCL)   PWM PWM (IO) PWM PWM (ADC) (ADC) (IO)     N/A
Buzzer deck                  PWM PWM           N/A
Z-ranger deck V2 , Z-ranger deck V1     SDA SCL   (VL53_IO)                   VCC
Flow deck V2 , Flow deck V1     SDA SCL   (RST/MOT/IO) CS   (RST) (MOT) SCK MOSI MISO     VCC
Multi-ranger deck      SDA SCL                       VCOM
Motion capture marker deck            (BTN/IO) (BTN/IO)                 N/A
Lighthouse positioning deck  RX1 TX1 (SDA) (SCL)                       N/A
Active marker deck      SDA SCL                       N/A
AI deck  RX1 TX1 SDA SCL BOOT     RST TX2 RX2           VCOM

Compatibility matrixes

Platform - deck

This table shows which deck that works on which platform.

  Crazyflie 2.0, 2.1(+) Crazyflie 2.1 Brushless
LED-ring deck  yes no
Qi 1.2 wireless charging deck  yes yes
Micro SD card deck  yes yes
Loco Positioning deck  yes yes
BigQuad deck  yes yes
Buzzer deck  yes yes
Z-ranger deck V2 , Z-ranger deck V1 yes yes
Flow deck V2 , Flow deck V1 yes yes
Multi-ranger deck  yes yes
Motion capture marker deck  yes yes
Lighthouse positioning deck  yes yes
Active marker deck  yes yes
AI deck  yes yes

Deck - deck

This table shows which decks that can be used at the same time.

Note: This matrix is for unmodified decks and the standard firmware. Some decks can be modified to use other pins on the expansion port and thus work with decks that are marked as not compatible. Also decks that are normally physically blocking each other are marked as not compatible.

  LED-ring deck  Qi 1.2 wireless charging deck  Micro SD card deck  Loco Positioning deck  BigQuad deck  Buzzer deck  Z-ranger deck V2 , Z-ranger V1 Flow deck V2 , Flow deck V1 Multi-ranger deck  Motion capture marker deck  Lighthouse positioning deck  Active marker deck  AI deck 
LED-ring deck  -   yes yes   yes     yes yes yes yes yes
Qi 1.2 wireless charging deck    - yes yes yes yes     yes yes yes yes yes
Micro SD card deck  yes yes - yes *1 yes yes yes yes *1 yes yes yes yes *4
Loco Positioning deck  yes yes yes *1 - yes yes yes yes yes yes *2 yes *5
BigQuad deck    yes yes yes -   yes   yes yes *2 yes *6
Buzzer deck  yes yes yes yes   - yes yes yes yes yes yes *6
Z-ranger deck V2 , Z-ranger V1     yes yes yes yes -   yes yes yes yes yes
Flow deck V2 , Flow deck V1     yes *1 yes   yes   - yes yes yes yes yes
Multi-ranger deck  yes yes yes yes yes yes yes yes - yes yes yes yes
Motion capture marker deck  yes yes yes yes yes yes yes yes yes - yes   yes
Lighthouse positioning deck  yes yes yes *2 *2 yes yes yes yes yes -   *3
Active marker deck  yes yes yes yes yes yes yes yes yes     - yes
AI deck  yes yes *4 *5 *6 *6 yes yes yes yes *3 yes -

Notes:

  1. SPI sharing might limit the logging speed of the uSD-card deck.
  2. Could be patched using soldering bridges or can be supported in the future, SW update
  3. The GAP8 module is connected to UART1, so if that is enabled there will be conflicts
  4. The Micro-SD deck and AI deck both use IO4, the Micro-SD deck needs to be patched to use another IO for Chip Select
  5. With a patch or workaround it is possible
  6. CPX uses UART2 to communicate with the ESP32 by default, if that is enabled there will be conflicts.