diff --git a/src/_includes/footer.html b/src/_includes/footer.html index 60279382..ad8902f2 100644 --- a/src/_includes/footer.html +++ b/src/_includes/footer.html @@ -43,7 +43,7 @@

Footer Menu

- © 2024 + © 2025 Bitcraze AB Bitcraze logo diff --git a/src/_includes/header-banner-fulltext.html b/src/_includes/header-banner-fulltext.html new file mode 100644 index 00000000..8d94028c --- /dev/null +++ b/src/_includes/header-banner-fulltext.html @@ -0,0 +1,12 @@ +
+
+
+
+ +

{{page.title}}

+ + +
+
+
+
diff --git a/src/_layouts/page-f-a-q.html b/src/_layouts/page-f-a-q.html new file mode 100644 index 00000000..98f76d29 --- /dev/null +++ b/src/_layouts/page-f-a-q.html @@ -0,0 +1,31 @@ +--- +layout: page-base +--- + +{% include header-banner-fulltext.html %} +
+
+
+
+ {{ content }} +
+ {% for item in page.faq %} +
+ +
+
{{ item.answer | markdownify }}
+
+
+ {% endfor %} +
+
+

Want to add a FAQ?  Improve this page

+
+
+
+
+
diff --git a/src/_layouts/page-fulltext-image.html b/src/_layouts/page-fulltext-image.html new file mode 100644 index 00000000..f78ce8d6 --- /dev/null +++ b/src/_layouts/page-fulltext-image.html @@ -0,0 +1,21 @@ +--- +layout: page-base +--- + +{% include header-banner.html %} +
+
+
+ {% if page.image %} + + {% endif %} +
+
+
+
+
+ {{content}} +
+
+
+
\ No newline at end of file diff --git a/src/_layouts/page-fulltext.html b/src/_layouts/page-fulltext.html new file mode 100644 index 00000000..40cf1a9c --- /dev/null +++ b/src/_layouts/page-fulltext.html @@ -0,0 +1,14 @@ +--- +layout: page-base +--- + +{% include header-banner-fulltext.html %} +
+
+
+
+ {{content}} +
+
+
+
diff --git a/src/about/bitcraze.md b/src/about/bitcraze.md index 7e119aa4..b61c76ed 100644 --- a/src/about/bitcraze.md +++ b/src/about/bitcraze.md @@ -1,5 +1,5 @@ --- -layout: page +layout: page-fulltext title: Bitcraze page_id: about-bitcraze redirects: diff --git a/src/about/contact.md b/src/about/contact.md index e3f4a86c..12dae26a 100644 --- a/src/about/contact.md +++ b/src/about/contact.md @@ -1,5 +1,5 @@ --- -layout: page +layout: page-fulltext title: Contact page_id: about-contact redirects: diff --git a/src/about/credits.md b/src/about/credits.md index 0636f89f..2419fb85 100644 --- a/src/about/credits.md +++ b/src/about/credits.md @@ -1,5 +1,5 @@ --- -layout: page +layout: page-fulltext title: Credits page_id: credits redirects: diff --git a/src/about/events/index.md b/src/about/events/index.md index 5a936afb..719408e8 100644 --- a/src/about/events/index.md +++ b/src/about/events/index.md @@ -1,5 +1,5 @@ --- -layout: page +layout: page-fulltext title: Events page_id: events redirects: diff --git a/src/about/feedback.md b/src/about/feedback.md index 3faf20e1..4507d723 100644 --- a/src/about/feedback.md +++ b/src/about/feedback.md @@ -1,5 +1,5 @@ --- -layout: page +layout: page-fulltext title: Feedback page_id: about-feedback redirects: diff --git a/src/about/jobs.md b/src/about/jobs.md index f898b519..19b577e7 100644 --- a/src/about/jobs.md +++ b/src/about/jobs.md @@ -1,5 +1,5 @@ --- -layout: page-left-menu +layout: page-fulltext title: Jobs page_id: jobs redirects: diff --git a/src/about/press.md b/src/about/press.md index 910c81db..46a517a1 100644 --- a/src/about/press.md +++ b/src/about/press.md @@ -1,5 +1,5 @@ --- -layout: page +layout: page-fulltext title: Press page_id: about-press redirects: diff --git a/src/about/product-cycle.md b/src/about/product-cycle.md index 7f3d9fad..af18fd51 100644 --- a/src/about/product-cycle.md +++ b/src/about/product-cycle.md @@ -1,5 +1,5 @@ --- -layout: page +layout: page-fulltext title: Product cycle page_id: product-cycle redirects: diff --git a/src/about/thesis.md b/src/about/thesis.md index 8985edda..7bd3f9eb 100644 --- a/src/about/thesis.md +++ b/src/about/thesis.md @@ -1,5 +1,5 @@ --- -layout: page +layout: page-fulltext title: Thesis page_id: thesis redirects: diff --git a/src/development/contribute/general-guidelines.md b/src/development/contribute/general-guidelines.md index e6d33859..830e0dfa 100644 --- a/src/development/contribute/general-guidelines.md +++ b/src/development/contribute/general-guidelines.md @@ -1,10 +1,10 @@ --- -layout: page +layout: page-fulltext title: General guidelines for code contributions page_id: general-guidelines-for-code-contributions --- -Code contributions are of great value to us and we are very grateful for the work you put in. Thanks! +**Code contributions are of great value to us and we are very grateful for the work you put in. Thanks!** The codebase is a shared resource that is used by many users, benefiting from the possibility of reading and modifying the code. It is also something that we hope will be used for a long @@ -24,37 +24,33 @@ into account, don't be afraid to ask for help! To help you create good pull requests, please try to follow these guidelines -1. Code contributions to the project are handled through pull requests, you can read more about how -it works in [github's documentation](https://help.github.com/articles/about-pull-requests/). Pull requests are public +1. **Code contributions to the project are handled through pull requests.** You can read more about how it works in [github's documentation](https://help.github.com/articles/about-pull-requests/). Pull requests are public and anyone can see what code changes you propose. When a pull request is received, one of the maintainers will look at it and evaluate if it can be merged to the codebase, if it requires changes, or if it should be rejected. If the code is deemed to be working, is useful to the community, and is good enough it will be merged. -1. The title of the pull request will be used in the release notes, try to make it as descriptive as -possible. +1. **The title of the pull request will be used in the release notes, try to make it as descriptive as possible.** -1. Add a short description to the pull request that tells other users what it contains. What is the change in functionality? +1. **Add a short description to the pull request that tells other users what it contains.** What is the change in functionality? What is the purpose? Maybe describe how it works? Anything that makes it easy for other users (and maintainers) to understand what it is and how it works. -1. New functionality should be useful for other users and somewhat generic. Since the codebase +1. **New functionality should be useful for other users and somewhat generic.** Since the codebase is used by many users, additions must not be too specific. Unused functionality tend to create complexity and becomes costly in the long run. -1. Avoid noise in your pull request. Do not include unnecessary changes that are not part of +1. **Avoid noise in your pull request.** Do not include unnecessary changes that are not part of the pull request. It should be possible to merge the pull request as is, without modifications. -1. If the repository you are contributing to contains automated tests, please try to -add tests for your code if possible. All code is currently not tested, but we are trying +1. **If the repository you are contributing to contains automated tests, please try to add tests for your code if possible.** All code is currently not tested, but we are trying to increase the coverage where possible. -1. There is documentation in each repository, please consider to add or update the documentation -for the changes you make. See the [Repository documentation guidelines](../repo-doc-guidelines) +1. **There is documentation in each repository, please consider to add or update the documentation for the changes you make.** See the [Repository documentation guidelines](../repo-doc-guidelines) for more information. -1. Keep you pull request fairly small, it should ideally only contain one feature. +1. **Keep you pull request fairly small, it should ideally only contain one feature.** Large pull requests are very hard to understand or test, and are more likely to be rejected. In most cases more complex functionality can be divided into smaller pieces that add value. One way to figure out if a feature is too complex is to try to describe it @@ -62,16 +58,14 @@ with one sentence, if you have to use the word "and" you should probably conside it up in sub-features and use multiple pull requests. There are no hard limits, but one pull request should probably only change a few files. -1. If your functionality requires multiple pull requests it might be useful to -use a github issue to tie them together and help other users understand the bigger -picture. This is also a good place for discussions of how to split a feature up into +1. **If your functionality requires multiple pull requests it might be useful to use a github issue to tie them together and help other users understand the bigger picture.** This is also a good place for discussions of how to split a feature up into smaller sub-features. Otherwise, there is no need to add an issue first. -1. Use recent branch points for your pull request. If your pull request is based on an old +1. **Use recent branch points for your pull request.** If your pull request is based on an old commit it is more likely that there will be merge conflicts or that other code around has changed, this makes it much harder for the maintainers to understand what has changed. -1. Write code for humans. The compiler will understand any code that is syntactically correct, +1. **Write code for humans.** The compiler will understand any code that is syntactically correct, but humans may not. Obviously, your code must work and implement some functionality but also keep in mind to make it easy for humans to understand it. * Use descriptive names for variables and functions to help a reader understand what is going on. @@ -87,18 +81,18 @@ in mind to make it easy for humans to understand it. * Some code constructs may be short and compact, but possibly not easy to understand. Compact code is not faster to execute in most cases, but harder to understand. -1. Write robust code. Make sure your code also works if something unexpected happens. +1. **Write robust code.** Make sure your code also works if something unexpected happens. -1. Use clean commits in the pull request. It is fine to use multiple commits, it may help +1. **Use clean commits in the pull request.** It is fine to use multiple commits, it may help the reader to understand what has changed, but only commit one change at a time. If you want to clean up existing code for instance, it is probably better to do that in a separate commit instead of mixing it with new functionality. -1. Try to keep the styling. We are not super strict on styling, but try to write code +1. **Try to keep the styling.** We are not super strict on styling, but try to write code that looks similar to the existing code. When in doubt follow the [coding standard guidelines.](coding-standards.md) -1. Write code that can be modified and maintained. Keep in mind that the code will +1. **Write code that can be modified and maintained.** Keep in mind that the code will live for a long time and that other people will read and modify your contribution. -1. Leave the code in better shape than you found it. Tidy up in the area where +1. **Leave the code in better shape than you found it.** Tidy up in the area where you modify or add code. diff --git a/src/development/early-access.md b/src/development/early-access.md index c913f310..c3dd39e8 100644 --- a/src/development/early-access.md +++ b/src/development/early-access.md @@ -1,5 +1,5 @@ --- -layout: page-left-menu +layout: page-fulltext title: Early access page_id: early-access redirects: diff --git a/src/documentation/start.md b/src/documentation/start.md index ca9ebdcc..07543788 100644 --- a/src/documentation/start.md +++ b/src/documentation/start.md @@ -1,12 +1,11 @@ --- -layout: page +layout: page-fulltext-image title: Start here page_id: getting-started-start redirects: - /start/ +image: /images/documentation/landing_page/crazyflie_boxes.png --- -{% img Crazyflie on boxes; wide; /images/documentation/landing_page/crazyflie_boxes.png %} - ## Let's get started! diff --git a/src/documentation/tutorials/index.md b/src/documentation/tutorials/index.md index b8dbbd69..a571d405 100644 --- a/src/documentation/tutorials/index.md +++ b/src/documentation/tutorials/index.md @@ -1,5 +1,5 @@ --- -layout: page +layout: page-fulltext title: Tutorials page_id: tutorials --- diff --git a/src/support/f-a-q.md b/src/support/f-a-q.md index 2c73a6db..515260d9 100644 --- a/src/support/f-a-q.md +++ b/src/support/f-a-q.md @@ -1,91 +1,106 @@ --- -layout: page-left-menu +layout: page-f-a-q title: FAQ page_id: support-frequently-asked-questions redirects: - /frequently-asked-questions-Crazyflie-2.0/ ---- - -**_Can the Crazyflie 2.x fly autonomously?_** -Yes, the Crazyflie 2.x is well suited for autonomous flight and this is one of its most common use cases. With the right setup, it can perform a wide range of autonomous tasks in research, education, and prototyping contexts. - -To fly autonomously, the Crazyflie needs additional sensors or external positioning systems to determine its location. The {% poplink flow-deck %} is the easiest way to get started—it allows the drone to understand how it moves relative to the floor, enabling indoor autonomous flight. See the [product page](/products/flow-deck-v2/) for more information. +faq: + - question: Can the Crazyflie 2.x fly autonomously? + answer: | + Yes, the Crazyflie 2.x is well suited for autonomous flight and this is one of its most common use cases. With the right setup, it can perform a wide range of autonomous tasks in research, education, and prototyping contexts. -For more advanced applications, external positioning systems can provide absolute position feedback. These include indoor solutions like Lighthouse, Loco Positioning, or motion capture. For an overview of available options, see our [positioning system documentation](/documentation/system/). + To fly autonomously, the Crazyflie needs additional sensors or external positioning systems to determine its location. The {% poplink flow-deck %} is the easiest way to get started—it allows the drone to understand how it moves relative to the floor, enabling indoor autonomous flight. See the [product page](/products/flow-deck-v2/) for more information. + - question: Is it possible to control a swarm of Crazyflies? + answer: | + Yes, swarm control is a popular use case for Crazyflies. There are several tools available to help you get started, including our Python library and ROS-based solutions. Many users in the community have successfully built swarm applications for research, education, and exploration. You can find examples and inspiration in our documentation, GitHub repositories, and forums. + - question: Can I fly the Crazyflie with a phone or tablet? + answer: | + The Crazyflie 2.0 and 2.1 support basic manual flight using a smartphone or tablet via Bluetooth Low Energy (BLE). The Crazyflie 2.1 Brushless is not supported by the mobile apps. Most modern Android and iOS devices with BLE support should work. For detailed system requirements, refer to the app store listing. -**_Is it possible to control a swarm of Crazyflies?_** -Yes, swarm control is a popular use case for Crazyflies. There are several tools available to help you get started, including our Python library and ROS-based solutions. Many users in the community have successfully built swarm applications for research, education, and exploration. You can find examples and inspiration in our documentation, GitHub repositories, and forums. + Due to the wide range of Android hardware and BLE implementations, compatibility may still vary between devices even if they meet the general requirements. We've published a [list of tested devices](/documentation/repository/crazyflie-android-client/master/userguides/user-instructions/#android-device-compatibility), though it is not actively maintained and should be treated as a general reference. -**_Can I fly the Crazyflie with a phone or tablet?_** -The Crazyflie 2.0 and 2.1 support basic manual flight using a smartphone or tablet via Bluetooth Low Energy (BLE). The Crazyflie 2.1 Brushless is not supported by the mobile apps. Most modern Android and iOS devices with BLE support should work. For detailed system requirements, refer to the app store listing. + - question: Can I fly the Crazyflie with a controller? + answer: | + Yes, you can fly the Crazyflie using a game controller such as a PlayStation or Xbox controller when connected to a computer. This setup typically requires the use of the Crazyflie Python client and a Crazyradio (PA or 2.0) for communication with the drone. -Due to the wide range of Android hardware and BLE implementations, compatibility may still vary between devices even if they meet the general requirements. We've published a [list of tested devices](/documentation/repository/crazyflie-android-client/master/userguides/user-instructions/#android-device-compatibility), though it is not actively maintained and should be treated as a general reference. + Support for specific controllers may vary by platform, but most standard USB or Bluetooth gamepads are compatible. -**_Can I fly the Crazyflie with a controller?_** -Yes, you can fly the Crazyflie using a game controller such as a PlayStation or Xbox controller when connected to a computer. This setup typically requires the use of the Crazyflie Python client and a Crazyradio (PA or 2.0) for communication with the drone. + - question: Can I fly the Crazyflie outdoors? + answer: | + We do not recommend flying the Crazyflie outdoors. The platform has minimal protection against wind, moisture, or debris. While it is quite durable (as noted in the durability FAQ), it is not designed to handle the elements typically encountered in outdoor environments. -Support for specific controllers may vary by platform, but most standard USB or Bluetooth gamepads are compatible. + - question: For how long can the Crazyflie 2.x fly? + answer: | + A Crazyflie 2.x with brushed motors can fly up to 7 minutes, depending on usage. The Crazyflie 2.1 Brushless version typically flies longer, with an expected flight time of up to 10 minutes, also depending on flying conditions. -**_Can I fly the Crazyflie outdoors?_** -We do not recommend flying the Crazyflie outdoors. The platform has minimal protection against wind, moisture, or debris. While it is quite durable (as noted in the durability FAQ), it is not designed to handle the elements typically encountered in outdoor environments. + - question: How is the Crazyflie 2.x charged? + answer: | + It is charged using a standard micro-USB connector commonly used by smartphones. You probably have one of these cables at home. You can charge it from any USB unit that can supply 500mA, most computers and adapters do. It takes up to 40min to charge and the blue LED (M3) will tell you roughly how charged it is by how long it is lit. When it is fully lit it is fully charged. -**_For how long can the Crazyflie 2.x fly?_** -A Crazyflie 2.x with brushed motors can fly up to 7 minutes, depending on usage. The Crazyflie 2.1 Brushless version typically flies longer, with an expected flight time of up to 10 minutes, also depending on flying conditions. + - question: Can I hot swap batteries on the Crazyflie 2.x? + answer: | + Yes, you can hot swap batteries. -**_How is the Crazyflie 2.x charged?_** -It is charged using a standard micro-USB connector commonly used by smartphones. You probably have one of these cables at home. You can charge it from any USB unit that can supply 500mA, most computers and adapters do. It takes up to 40min to charge and the blue LED (M3) will tell you roughly how charged it is by how long it is lit. When it is fully lit it is fully charged. + - question: Can I use a bigger battery on the Crazyflie 2.x? + answer: | + Yes, as long as it is not too heavy, it is a single cell (3.7V), it fits and the polarity is correct you can do so. A higher capacity battery will give you longer flight times but will decrease agility. We recommend batteries with at least 15C continuous discharge rate. -**_Can I hot swap batteries on the Crazyflie 2.x?_** -Yes, you can hot swap batteries. + - question: Can I store data on my Crazyflie? + answer: | + The [SD-card deck](/products/micro-sd-card-deck/) can be used to store configuration data for a Crazyflie. An example could be an autonomous implementation where the Crazyflie is not connected via radio. The configuration can be written to a SD-card in a computer and the SD-card is transferred to the Crazyflie before it is started. This is also a way to separate configuration from hardware/firmware and avoid flashing different firmware to Crazyflie individuals. -**_Can I use a bigger battery on the Crazyflie 2.x?_** -Yes, as long as it is not too heavy, it is a single cell (3.7V), it fits and the polarity is correct you can do so. A higher capacity battery will give you longer flight times but will decrease agility. We recommend batteries with at least 15C continuous discharge rate. + - question: What radio is used with the Crazyflie 2.x? + answer: | + The Crazyflie 2.x can be controlled with the Crazyradio, Crazyradio PA or {% poplink crazyradio-2-0 %} from a PC or with a mobile device using Bluetooth Low Energy. -**_Can I store data on my Crazyflie?_** -The [SD-card deck](/products/micro-sd-card-deck/) can be used to store configuration data for a Crazyflie. An example could be an autonomous implementation where the Crazyflie is not connected via radio. The configuration can be written to a SD-card in a computer and the SD-card is transferred to the Crazyflie before it is started. This is also a way to separate configuration from hardware/firmware and avoid flashing different firmware to Crazyflie individuals. + - question: What is the range of the Crazyradio? + answer: | + As with all radio communication it depends. It depends on the environment, radio interference, chip production variations, etc. It also depends on if you use the Crazyradio 2.0, Crazyradio PA or a mobile device. We have done a couple of line-of-sight tests with little interference outdoor with the different configurations: -**_What radio is used with the Crazyflie 2.x?_** -The Crazyflie 2.x can be controlled with the Crazyradio, Crazyradio PA or {% poplink crazyradio-2-0 %} from a PC or with a mobile device using Bluetooth Low Energy. + * Crazyradio PA: Up to about 1000 meters range with direct line of sight in the 250 Kbit mode and under ideal conditions (the downlink is the main limiting factor). + * Mobile device: Up to about 20 meters range (The uplink, the mobile device is limiting the range). -**_What is the range of the Crazyradio?_** -As with all radio communication it depends. It depends on the environment, radio interference, chip production variations, etc. It also depends on if you use the Crazyradio 2.0, Crazyradio PA or a mobile device. We have done a couple of line-of-sight tests with little interference outdoor with the different configurations: + - question: Can I use a normal R/C transmitter to control the Crazyflie 2.x? + answer: | + This can be done with the [BigQuad expansion deck](/products/bigquad-deck/). It's working, but not a turn-key solution. -* Crazyradio PA: Up to about 1000 meters range with direct line of sight in the 250 Kbit mode and under ideal conditions (the downlink is the main limiting factor). -* Mobile device: Up to about 20 meters range (The uplink, the mobile device is limiting the range). + - question: How many base stations do I need to fly in the Lighthouse positioning system? + answer: | + The recommended minimum number of base stations is two. This covers a 5x5x5m area. This can be scaled up to 4 base stations. -**_Can I use a normal R/C transmitter to control the Crazyflie 2.x?_** -This can be done with the [BigQuad expansion deck](/products/bigquad-deck/). It's working, but not a turn-key solution. + - question: How many loco nodes do I need to fly in the Lighthouse positioning system? + answer: | + A theoretical minimum of 4 Anchors is required to calculate the 3D position of a Tag, but a more realistic number is 6 to add redundancy and accuracy. -**_How many base stations do I need to fly in the Lighthouse positioning system?_** -The recommended minimum number of base stations is two. This covers a 5x5x5m area. This can be scaled up to 4 base stations. + - question: Can I add sensors to my Crazyflie? + answer: | + The expansion ports on the Crazyflie 2.X enables you to connect more or less any hardware you like. When prototyping the [Breakout deck](/products/breakout-deck/) is useful as you can use it to connect your Crazyflie 2.X to a breadboard and easily debug your hardware design. When satisfied with the design you can transfer it to a [prototyping deck](/products/prototyping-deck/) for a more permanent implementation. -**_How many loco nodes do I need to fly in the Lighthouse positioning system?_** -A theoretical minimum of 4 Anchors is required to calculate the 3D position of a Tag, but a more realistic number is 6 to add redundancy and accuracy. + - question: Can the Crazyflie 2.x be used to control a bigger quadcopter? + answer: | + Yes, it can. With the [BigQuad expansion deck](/products/bigquad-deck/). -**_Can I add sensors to my Crazyflie?_** -The expansion ports on the Crazyflie 2.X enables you to connect more or less any hardware you like. When prototyping the [Breakout deck](/products/breakout-deck/) is useful as you can use it to connect your Crazyflie 2.X to a breadboard and easily debug your hardware design. When satisfied with the design you can transfer it to a [prototyping deck](/products/prototyping-deck/) for a more permanent implementation. + You can also consider using the [Crazyflie Bolt 1.1](/products/crazyflie-bolt-1-1/) autopilot board to build a custom drone. -**_Can the Crazyflie 2.x be used to control a bigger quadcopter?_** -Yes, it can. With the [BigQuad expansion deck](/products/bigquad-deck/). + - question: How durable is the Crazyflie 2.x? + answer: | + The Crazyflie 2.x family, including the Crazyflie 2.1 Brushless, uses the PCB as the frame, made of strong and lightweight [FR4](https://en.wikipedia.org/wiki/FR-4) material. -You can also consider using the [Crazyflie Bolt 1.1](/products/crazyflie-bolt-1-1/) autopilot board to build a custom drone. + For the standard Crazyflie 2.x, brushed motors are mounted in flexible motor mounts designed to absorb impact. In a crash, propellers and motor mounts are the most likely components to need replacement. Both are inexpensive and easy to replace. In testing, Crazyflie 2.x drones have survived falls from heights up to 30 meters onto concrete, with damage typically limited to the propellers, motor mounts, or motors. However, it is not unbreakable, so handle with care! -**_How durable is the Crazyflie 2.x?_** -The Crazyflie 2.x family, including the Crazyflie 2.1 Brushless, uses the PCB as the frame, made of strong and lightweight [FR4](https://en.wikipedia.org/wiki/FR-4) material. + The Crazyflie 2.1 Brushless has brushless motors directly screwed onto the PCB without separate mounts. It includes flexible landing feet or optional motor guards to help absorb impacts. The brushless motors are highly durable and are less prone to breakage, though care is recommended for optimal long-term performance. -For the standard Crazyflie 2.x, brushed motors are mounted in flexible motor mounts designed to absorb impact. In a crash, propellers and motor mounts are the most likely components to need replacement. Both are inexpensive and easy to replace. In testing, Crazyflie 2.x drones have survived falls from heights up to 30 meters onto concrete, with damage typically limited to the propellers, motor mounts, or motors. However, it is not unbreakable, so handle with care! + - question: Is the Crazyflie 2.0 still supported? + answer: | + Yes, the Crazyflie 2.0 is still supported with the same firmware and PC software as the Crazyflie 2.1 -The Crazyflie 2.1 Brushless has brushless motors directly screwed onto the PCB without separate mounts. It includes flexible landing feet or optional motor guards to help absorb impacts. The brushless motors are highly durable and are less prone to breakage, though care is recommended for optimal long-term performance. + - question: Is the Crazyflie 2.x backward compatible with the Crazyflie 1.0 (aka Crazyflie Nano)? + answer: | + No, the Crazyflie 2.x's firmware and python library is no longer backwards compatible, as of the 2017.06 release -**_Is the Crazyflie 2.0 still supported?_** -Yes, the Crazyflie 2.0 is still supported with the same firmware and PC software as the Crazyflie 2.1 - -**_Is the Crazyflie 2.x backward compatible with the Crazyflie 1.0 (aka Crazyflie Nano)?_** -No, the Crazyflie 2.x's firmware and python library is no longer backwards compatible, as of the 2017.06 release - -**_Is the Crazyflie 1.0 (aka Crazyflie Nano) still supported?_** -No, as of the 2017.06 release of the firmware and PC software, the Crazyflie Nano is no longer supported. + - question: Is the Crazyflie 1.0 (aka Crazyflie Nano) still supported? + answer: | + No, as of the 2017.06 release of the firmware and PC software, the Crazyflie Nano is no longer supported. +--- -
-

Want to add a FAQ?  Improve this page

-
+Here are answers to some of our most frequently asked questions: