This getting started guide is split up into three parts. First we are going to assemble the Crazyflie, secondly we move on to setting up a gamepad and communication, and lastly we get up in the air and start flying. Let’s get started!

You are responsible for handling the drone and its components. It is your responsibility to make sure you understand how your drone works and that it is in good working condition before flight. Using a drone in a reckless and negligent manner could cause damage or bodily harm, resulting in lawsuits, fines and jail time.
There are things you should do to ensure maximum safety:
To fly with the Crazyflie you need to have a computer with a Crazyradio 2.0 . To fly manually with your computer you also need a gamepad of your choice.
Don’t worry! We have many ways to figure out what might be wrong. A good place to start is to look at the Getting help page. Our documentation also provides more details than this guide. On our Github Discussions you can look at discussions from our community or start your own to get help.
Make sure to follow the instructions below for assembling your Crazyflie® 2.1 Brushless.
Start by unpacking the box. It should contain the following items:
|
1 x Crazyflie Brushless control board |
|
5 x Counter clockwise (CCW) propellers (3 spare) 5 x Clockwise rotation (CW) propellers (3 spare) |
|
5 x Legs (1 spare) 5 x Legs/propeller guards (1 spare) |
|
1 x 350mAh LiPo battery |
|
4 x Brushless motors |
|
2 x Short expansion connector pins (1×10, 2mm spacing, 8 or 9 mm long) 2 x Long expansion connector pins (1×10, 2mm spacing, 14 or 15 mm long) |
|
1 x Battery holder deck |
|
1 x Micro-USB cable (48cm) |
|
14 x Short (black) screws |
|
5 x Longer (silver) screws |
|
1 x Foam battery pad |
|
1 x Screwdriver |
|
1 x Propeller tool |
First of all, lets look at what is front and back before starting. This is a good reference point while assembling the Crazyflie, later when flying, as well as in the future when mounting expansion decks. The small “bump” (the antenna) is on the front of the Crazyflie. On the top you can also see that each arm has an LED. Here you can also see where the power button and M1, M2, M3 and M4 are.

Position the motor above the mounting holes, the motor cable should run along the arm. Use three black screws from underneath in the corner holes of the motor to fasten it. There is a screwdriver in the kit you can use to fasten it.

Attach the motor cables to their connectors and twist the wire 180 degrees to attach to the connector.
Note: New motors may feel a bit stiff or stuggle to spin at low throttle levels (e.g., during arming). This is normal — a small amount of friction exists between their components. Once the motors have run for a short time (e.g, during a few test flights), this friction naturally decreases and the motors will spin more freely and efficiently.
Now it’s time to attach the propellers.
Before attaching:
There are two types of propellers, the clock wise (CW) and counterclockwise (CCW) propellers, each kind has their own bag in the box:
They need to be mounted on the correct arm. As a guide, you’ll find arrows next to each motor on the PCB.
Attaching:
Here’s a detailed view of where to attach CW and CCW propellers.

For safety or repair purposes, you may need to remove the propellers. This process can be challenging to perform by hand, which is why a propeller tool is included in the box.
Choose between using the propeller guards or the landing legs. The legs are lighter and has less inertia, giving a longer and more agile flight. We advise you to always use the guards if it is possible in your use case. These will protect the drone and you if something goes wrong.
Slide the legs/guards on from below hooking the little plastic part on the circular part just below the motors. Snap the straight part of the legs/guards on the arms of the Crazyflie.
While not recommended, you can fasten your legs/guards on the PCB using the long (silver) screws. This will prevent the legs/guards from detaching during a crash, which could potentially damage the Crazyflie.
Removing the legs/guards can be a bit tricky. An easy approach is by using the propeller tool to release the clips, as shown in the video below. Be careful not to damage any of the motor cables.
The foam pad should be attached to the Crazyflie between the expansion pins. This will create friction, keep the battery from slipping out and also protect the electronics.
There are two types of pins in the box, long and short ones. Find the long ones and insert them into the expansion connector from below.
Place the battery between the pins and insert the battery holder board onto the pins. Watch out for the pins that can be a bit sharp when inserting it. Have the side of the battery holder with the text facing up. The friction should hold the battery in place so tighten it until it does.
The battery wires can preferably be bent and placed underneath the PCB to be out of the way.
Now connect the battery and you are finished with the assembly.
Your Crazyflie 2.1 Brushless is now assembled!
The assembly is finished, now it’s time to power it on! While powering on, keep the Crazyflie still on a flat surface to let it complete the start up sequence. The power button is placed on the front right of the Crazyflie, right next to the M1 LED. Note that the power button is a push button, not a sliding button. The LEDs on the Crazyflie 2.1 Brushless will run in a startup sequence that can be seen in the video.
When the Crazyflie is powered on it will automatically go through a short sequence of events to get ready for flight.
To understand and diagnose the Crazyflie you need to understand what the LEDs mean. Here is a short explanation of each state of the LEDs:
Now that you have assembled the Crazyflie, its time to get ready to control it. To control the Crazyflie, we need to be able to communicate with it to give commands on how to fly and receive information back from the copter. You can fly the Crazyflie 2.1 Brushless with a computer running Windows, MacOs or Linux. The Crazyflie 2.1 Brushless is built to be flown using scripting or on board automomous navigation, however it is also possible to fly it using our client and a gamepad.
To get started, you need to set up communication with the Crazyflie and install the client. Both ways of flying need a Crazyradio 2.0 .
The first step to getting your computer ready for communication is to set up your Crazyradio 2.0 . Follow this Getting Started tutorial to set it up.
This section describes how to get your Crazyflie ready for manual flight control.
This section of the tutorial introduces how to fly your Crazyflie manually, which is the best way to get started and to get to know your Crazyflie. If you want to skip this and go straight to scripted autonomous flight, follow the instructions in Next steps.
There are different ways to run the Client, for example uvx, pip or through the client repository. You can see what will suit you best and follow the prerequisites and instructions to install the latest release on the Client installation instruction page.
In this section we will look at the main features for getting started with the client. More details and features can be found in the Client user-guide.
When you have set up the client, insert the Crazyradio 2.0 in your USB-port, connect the gamepad and then start the client.
Now that you have connected your Crazyflie to your client, telemetry data is continuously sent from the copter to the client. When you move the Crazyflie around you will see the flight data being updated in realtime, as well as battery status and the link quality.
To make sure that your Crazyflie has all the latest features you should always update the firmware to the newest version. To learn how, check out the client user-guide here.
You can use any gamepad connected to your computer by cable or Bluetooth. The gamepad has to be connected before you start the client to be recognized by the client. After you have connected your gamepad, open the input device settings in the client. Check if the correct device mapping is chosen, otherwise pick your device type.

For more detailed information on input devices, see the Client user-guide. In this guide it is also shown how to configure your own device mapping to perfectly suit your gamepad.
Now it’s time to do some flying, but first there are some basics you need to know about.
First of all, the easiest way to fly is when the copter is pointing away from you. The blue LEDs are on the back, so keep them pointing in your direction when starting to fly.
When flying a quadcopter there are four main dimensions of controls; roll, pitch, yaw and thrust.

Lear more about the coordinate system of a Crazyflie here.
The controls on the gamepad have multiple different input mappings to select from. A common mapping to use in a lot of flying robotics applications is mapping 3, and it is mapped the following way:

To change between mappings and gamepad types as well as creating your own custom mapping check out the documentation for input devices.
When thrusting without touching any other controls, this is what it might look like. The Crazyflie usually drifts in some direction if not compensated for, this is completely normal.
When the copter is flying close to the ground (less than a few decimeters above the ground) it is effected by what is called the Ground effect. The feeling is that the air is slippery, almost as if it is gliding on ice. To avoid this, particularly when learning to fly, use a lot of thrust just when taking off and then ease off for level flight.
Firstly, if your Crazyflie’s propellers spin but it does not properly take off, the most common reason is that the propellers are not placed correctly. Look at the image under Attach the propellers and make sure to place the correct propeller on the correct arm.
Check that the propellers are spinning freely. Verify that they turn, one by one. A common problem is that hair or other debris is jammed between the propeller and motor. If this is the problem, just pull the propeller off from the motor, remove the hair and reinstall the propeller.
To charge the battery of the Crazyflie, plug in a micro USB cable. Make sure the Crazyflie is powered on. While the battery is charging, the back left blue LED will blink. When the LED is fully lit the battery is charged.
Have fun!
Now that you are in the air you can explore more opportunities with our Expansion Decks, and if you already have a deck you want to attach you can check out the Getting started with expansion decks tutorial.
Another step is trying autonomous flight with Python scripting and the Crazyflie Python library. When flying using a script you need a Crazyradio 2.0 for communication. As a first step, you need to install and familiarize yourself with our library cflib. This software enables you to fly one or more quadcopters in predetermined way using Python to control the quadcopter. Get started with Python scripting and the Crazyflie Python library though our Step-by-step user guides. To get some inspiration on what can be done, please check out the examples and the demos repository.