Skip to content

Commit

Permalink
flowdeck v2 poplink implemented
Browse files Browse the repository at this point in the history
  • Loading branch information
knmcguire committed Aug 10, 2021
1 parent a5ac92d commit 1e2e8c0
Show file tree
Hide file tree
Showing 12 changed files with 49 additions and 28 deletions.
4 changes: 4 additions & 0 deletions src/_data/poplink.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,7 @@ poplinks:
title: LED-ring deck
default-link: /products/led-ring-deck/
content: led-ring-deck.md
flow-deck:
title: Flow deck V2
default-link: /products/flow-deck-v2/
content: flow-deck.md
12 changes: 12 additions & 0 deletions src/_poplink/flow-deck.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[Buy in store](https://store.bitcraze.io/products/flow-deck-v2)

[Product Page](/products/flow-deck-v2/)

[Other deck compatibility](/documentation/system/platform/cf2-expansiondecks/#deck---deck)

[Tutorial](/documentation/tutorials/getting-started-with-flow-deck/)

[STEM Tutorial](/documentation/tutorials/getting-started-with-stem-drone-bundle/)

[Logging](https://www.bitcraze.io/documentation/repository/crazyflie-firmware/master/api/logs/#motion)

8 changes: 4 additions & 4 deletions src/buy/buyers-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -202,14 +202,14 @@ Note: SD card is not included
{% row_image_text_links I want assistance when flying the Crazyflie %}
{% row_text %}
Flying a quadcopter like the Crazyflie manually requires some skill and
practising. By adding the Z-ranger deck or Flow deck the Crazyflie gets more
practising. By adding the Z-ranger deck or {% poplink flow-deck %} the Crazyflie gets more
information about its motion and can assist the pilot.

The Z-ranger deck measures the distance to the ground and can be used
to automatically stay at a constant height, while the pilot can focus on the
position.

The Flow deck takes it even further by also detecting the motion of the Crazyflie
The {% poplink flow-deck %} takes it even further by also detecting the motion of the Crazyflie
relative to the ground. This enables a flight mode where the pilot tells
the system which direction to go rather than the tilt of the quad copter, by
releasing the controls the Crazyflie simply stays hovering on the spot.
Expand Down Expand Up @@ -238,7 +238,7 @@ Note: gamepad is not included
The Multi-ranger deck measures the distance to objects forward/back/left/right and up.
It can be used for obstacle avoidance, mapping a room or games where the
Crazyflie 2.X "bounces" between the walls of a room.
Combine with a Flow deck to measure the distance to the floor as well and
Combine with a {% poplink flow-deck %} to measure the distance to the floor as well and
support autonomous flight.
{% endrow_text %}
{% row_links %}
Expand Down Expand Up @@ -316,7 +316,7 @@ all have different properties.

{% row_image_text_links The Flow deck %}
{% row_text %}
With the Flow deck the Crazyflie gets the distance to, and the relative
With the {% poplink flow-deck %} the Crazyflie gets the distance to, and the relative
motion relative to the surface under it. With this information it can hover
in one spot or follow a trajectory. The advantage of this solution is that it
does not require any external systems and comes at a very good price.
Expand Down
12 changes: 6 additions & 6 deletions src/documentation/system/platform/cf2-expansiondecks.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Here is a list of expansion decks that are available for the Crazyflie 2.X:
| {% id_link product-active-marker-deck %}|Expansion deck with active IR LED for motion capture markers | [datasheet](/documentation/hardware/active_marker_deck/active_marker_deck-datasheet.pdf), [schematics](/documentation/hardware/active_marker_deck/active-marker-deck_revd.pdf)| |
| {% poplink loco-positioning-deck %}|Expansion deck for the Loco positioning system | [datasheet](/documentation/hardware/loco_deck/loco_deck-datasheet.pdf), [schematics](/documentation/hardware/loco_deck/loco_deck_revd.pdf) | [Modes explanation](/documentation/repository/crazyflie-firmware/master/userguides/decks/active-marker-deck/)|
| {% id_link product-multi-ranger-deck %}|Expansion deck for detecting obstacles | [datasheet](/documentation/hardware/multi_ranger_deck/multi_ranger_deck-datasheet.pdf), schematics [1](/documentation/hardware/multi_ranger_deck/multi-ranger-daughter-board-reve.pdf), [2](/documentation/hardware/multi_ranger_deck/multi-ranger-reve.pdf) | |
| {% id_link product-flow-deck-v2 %} | Expansion deck for detecting flow and height | [datasheet](/documentation/hardware/flow_deck_2/flow_deck_2-datasheet.pdf), [schematics](/documentation/hardware/flow_deck_2/flow-deck-v2-reva.pdf)| |
| {% poplink flow-deck %} | Expansion deck for detecting flow and height | [datasheet](/documentation/hardware/flow_deck_2/flow_deck_2-datasheet.pdf), [schematics](/documentation/hardware/flow_deck_2/flow-deck-v2-reva.pdf)| |

### Additional information

Expand Down Expand Up @@ -106,12 +106,12 @@ Deck info
| 0xBC | 0x06 | bcDWM | {% poplink loco-positioning-deck %} | 3.3g | 160mA | Under/Above | [link](https://store.bitcraze.io/products/loco-positioning-deck) |
| 0xBC | 0x08 | bcUSD | Micro-SD | 1.7g | ~30mA | Under/Above | [link](https://store.bitcraze.io/products/sd-card-deck) |
| 0xBC | 0x09 | bcZRanger | Z-Ranger | 1.3g | ~15mA | Under | [link](https://store.bitcraze.io/products/z-ranger-deck) |
| 0xBC | 0x0A | bcFlow | Flow | 1.6g | ~40mA | Under | [link](https://store.bitcraze.io/products/flow-deck) |
| 0xBC | 0x0A | bcFlow | Flow deck V1 | 1.6g | ~40mA | Under | [link](https://store.bitcraze.io/products/flow-deck) |
| 0xBC | 0x0B | bcOA | Obstacle Avoidance | N/A | ~0.3mA | Above | N/A |
| 0xBC | 0x0C | bcMultiranger | Multi-ranger | 2.3g | ~90mA (depending on mode) | Above | [link](https://store.bitcraze.io/products/multi-ranger-deck) |
| 0xBC | 0x0D | bcMocap | Mocap marker deck | 1.6g | 0mA | Above | [link](https://store.bitcraze.io/products/motion-capture-marker-deck) |
| 0xBC | 0x0E | bcZRanger2 | Z-Ranger v2 | 1.3g | ~15mA | Under | [link](https://store.bitcraze.io/products/z-ranger-deck-v2) |
| 0xBC | 0x0F | bcFlow2 | Flow v2 | 1.6g | ~40mA | Under | [link](https://store.bitcraze.io/products/flow-deck-v2) |
| 0xBC | 0x0F | bcFlow2 | {% poplink flow-deck %} | 1.6g | ~40mA | Under | [link](https://store.bitcraze.io/products/flow-deck-v2) |
| 0xBC | 0x10 | bcLighthouse4 | Lighthouse-4 | 2.7g | ~40mA | Above | [link](https://store.bitcraze.io/products/lighthouse-positioning-deck) |
| 0xBC | 0x11 | bcActiveM | Active marker deck | 3.3g | ~40mA | Above | [link](https://store.bitcraze.io/products/active-marker-deck) |
| 0xBC | 0x12 | bcAI | AI deck | 4.4g | depending on deck app | Above | [link](https://store.bitcraze.io/products/ai-deck-1-1) |
Expand Down Expand Up @@ -141,7 +141,7 @@ two decks where the connections collide.
| **bcBuzzer** | | | | | | | | | PWM | PWM | | | | | | N/A |
| **bcESP** | | | | | | | | *(X)* | X | X | | | | | | N/A |
| **bcZRanger, bcZRanger2** | | | X | X | | *(X)* | | | | | | | | | | VCC |
| **bcFlow, bcFlow2** | | | X | X | | *(X)* | X | | | | X | X | X | | | VCC |
| **{% poplink flow-deck %}, Flow deck V1** | | | X | X | | *(X)* | X | | | | X | X | X | | | VCC |
| **bcOA** | | | X | X | | | | | | | | | | | | VCC |
| **bcMultiranger** | | | X | X | | | | | | | | | | | | VCOM |
| **bcMocap** | | | | | | *(X)* | *(X)* | | | | | | | | | N/A |
Expand All @@ -167,7 +167,7 @@ This table shows which deck that works on which platform.
| **Buzzer** | yes | |
| **bcESP** | yes | yes |
| **Z-Ranger, Z-Ranger V2** | yes | yes |
| **Flow, Flow V2** | yes | yes |
| **{% poplink flow-deck %}, Flow deck V1** | yes | yes |
| **Multi-ranger** | yes | yes |
| **Mocap marker deck** | yes | yes |
| **Lighthouse-4** | yes | *2 |
Expand Down Expand Up @@ -196,7 +196,7 @@ compatible.
| **Buzzer** | yes | yes | yes | yes | | - | | yes | yes | yes | yes | yes | yes | yes |
| **bcESP** | yes | yes | yes | yes | | | - | yes | yes | yes | yes | yes | yes | yes |
| **Z-Ranger, Z-Ranger V2** | | | yes | yes | yes | yes | yes | - | | yes | yes | yes | yes | yes |
| **Flow, Flow V2** | | | yes *1 | yes | | yes | yes | | - | yes | yes | yes | yes | yes |
| **{% poplink flow-deck %}, Flow deck V1** | | | yes *1 | yes | | yes | yes | | - | yes | yes | yes | yes | yes |
| **Multi-ranger** | yes | yes | yes | yes | yes | yes | yes | yes | yes | - | yes | yes | yes | yes |
| **Mocap marker deck** | yes | yes | yes | yes | yes | yes | yes | yes | yes | yes | - | yes | | yes |
| **Lighthouse-4** | yes | yes | yes | *2 | *2 | yes | yes | yes | yes | yes | yes | - | | *3 |
Expand Down
13 changes: 9 additions & 4 deletions src/documentation/tutorials/getting-started-with-flow-deck.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,19 @@ redirects:
---

{% si_intro The Flow deck %}
The Flow deck gives the Crazyflie 2.X the ability to understand when it's moving in any direction.
The {% poplink flow-deck %} gives the Crazyflie 2.X the ability to understand when it is moving in any direction.
With the Flow deck the Crazyflie 2.X is able to hover and act as an aid for beginners where it creates a very stable flying platform.

For more information about how to mount an expansion deck please see the {% id_link getting-started-expansion-decks %} tutorial.

To be able to use the Flow deck you need to update the Crazyflie to the latest firmware. For more information on how to update the firmware, see the [update firmware in the Crazyflie]({% id_url getting-started-crazyflie-2; update-fw %}) section in our getting started with Crazyflie 2.X tutorial.
To be able to use the {% poplink flow-deck %} you need to update the Crazyflie to the latest firmware. For more information on how to update the firmware, see the [update firmware in the Crazyflie]({% id_url getting-started-crazyflie-2; update-fw %}) section in our getting started with Crazyflie 2.X tutorial.
You will also need the latest version of the [Crazyflie client](https://github.com/bitcraze/crazyflie-clients-python/releases).

{% endsi_intro %}

{% si_step Using the hover mode %}

To use the Flow deck you need to use the Python client and set up a connection with your Crazyflie.
To use the {% poplink flow-deck %} you need to use the Python client and set up a connection with your Crazyflie.
For more information go to the {% id_link getting-started-crazyflie-2 %}.

* In the client, go to **Assist mode** and choose **Hover** mode in the drop-down menu. Also make sure that the assist mode button is [configured](/documentation/repository/crazyflie-clients-python/master/userguides/userguide_client/#input-devices).
Expand All @@ -30,7 +30,7 @@ For more information go to the {% id_link getting-started-crazyflie-2 %}.
Make sure the Crazyflie is pointing away from you, the blue LEDs are on the back so keep them pointing in your direction when starting to fly.
* Press and hold the assisted mode button on the gamepad to activate the hover mode. The Crazyflie will now take off and hover at a height of 40cm.
* Now you can fly around using the x/y stick as shown in the image below. Pressing X+ will move the Crazyflie in the X+ axis of your system, and the same for the other axis.
* You can use the up/down joystick to go up and down. The height is limited in the range 0.2m to 3.0m (1.0m for Flow deck / Z-ranger deck v1). if you happen to he over 1.0 meter, the crazyflie might hang there and not go down, in this case you can either force the Crazyflie to go down with the up/down joystick or release the assisted mode button to take over manually.
* You can use the up/down joystick to go up and down. The height is limited in the range 0.2m to 3.0m (1.0m for the Flow deck v1 / Z-ranger deck v1). if you happen to he over 1.0 meter, the crazyflie might hang there and not go down, in this case you can either force the Crazyflie to go down with the up/down joystick or release the assisted mode button to take over manually.
* If somethings goes out of control release the sticks and the assisted mode button to have the Crazyflie drop to the ground. Each time hover mode is re-activated the height set-point is reset to 40 cm.

{% img Flying with a gamepad; wide; /images/tutorials/getting_started_with_lps/flying_with_a_gamepad.png %}
Expand Down Expand Up @@ -75,3 +75,8 @@ The optical flow sensor is a camera and works by tracking how patterns are movin
{% youtube 64LOEAQJamw; wide; 16by9 %}

{% endsi_step %}

{% si_step what's next? %}
* Learn how to control a Crazyflie with a {% poplink flow-deck %} from a python script using the {% id_link getting-started-stem-drone-bundle %} tutorial.
{% endsi_step %}

Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ redirects:

{% si_intro The STEM drone bundle %}
The STEM (Science Technology Engineering Mathematics) drone bundle is based on a
Crazyflie 2.X with a Flow Deck. It is an autonomous drone that can be controlled
Crazyflie 2.X with a {% poplink flow-deck %}. It is an autonomous drone that can be controlled
from a simple python script to explore and operate a robot in 3 dimensions.

This getting started guide will help you set up the system and make your first
Expand All @@ -18,7 +18,7 @@ autonomous flight.
{% si_step required hardware %}
* 1 x Crazyflie 2.X Kit
* 1 x Crazyradio PA
* 1 x Flow deck
* 1 x {% poplink flow-deck %}
{% endsi_step %}

{% si_step prerequisites %}
Expand All @@ -28,7 +28,7 @@ This guide also requires that you have updated the Crazyflie to the latest firmw
{% endsi_step %}

{% si_step mounting the flow deck %}
Mount the Flow Deck underneath the Crazyflie 2.X using the long pin-headers supplied with the Crazyflie 2.X Kit.
Mount the {% poplink flow-deck %} underneath the Crazyflie 2.X using the long pin-headers supplied with the Crazyflie 2.X Kit.
{% img Mounting the Flow deck; wide; /images/tutorials/getting_started_stem/stem_bundle_mounted_deck.jpg %}

For more information about how to mount an expansion deck please see the {% id_link getting-started-expansion-decks %} tutorial.
Expand Down Expand Up @@ -173,6 +173,6 @@ Landing!
{% si_step what's next? %}
* Explore the [motion commander](https://github.com/bitcraze/crazyflie-lib-python/blob/master/cflib/positioning/motion_commander.py) class. The class can do more then simple directional commands such as scripting using speed and time or together with events.
* Try out the logging and parameter framework. The [basic logging](https://github.com/bitcraze/crazyflie-lib-python/blob/master/examples/basiclogSync.py) is a good example to start from or digg into the details on the [documentation](/documentation/repository/crazyflie-firmware/master/userguides/logparam/).
* Connect a gamepad and with the [flow deck]({% id_url getting-started-flow-deck %}) try optical flow stabilized flight.
* Connect a gamepad and with the {% poplink flow-deck %} to try optical flow stabilized flight. See the {% id_link getting-started-flow-deck %} tutorial.
* Add one of the many [expansion deck boards](https://store.bitcraze.io/collections/decks), build your own deck using [prototyping deck](/products/prototyping-deck/) or even design it from ground up using the KiCad [deck template](https://github.com/bitcraze/crazyflie2-exp-template-electronics).
{% endsi_step %}
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ redirects:
---

{% si_intro The STEM ranging bundle %}
The STEM (Science Technology Engineering Mathematics) ranging bundle is based on a Crazyflie 2.X with a Flow Deck and a Multi-ranger deck.
The STEM (Science Technology Engineering Mathematics) ranging bundle is based on a Crazyflie 2.X with a {% poplink flow-deck %} and a Multi-ranger deck.
It is an autonomous drone that can be controlled from a simple python script to explore and operate a robot in 3 dimensions.
It has the ability to detect obstacles around it.

Expand All @@ -17,7 +17,7 @@ This getting started guide will help you set up the system and make your first a
{% si_step required hardware %}
* 1 x Crazyflie 2.X Kit
* 1 x Crazyradio PA
* 1 x Flow V2 deck
* 1 x {% poplink flow-deck %}
* 1 x Multi-ranger deck
{% endsi_step %}

Expand All @@ -28,7 +28,7 @@ This guide also requires that you have updated the Crazyflie to the latest firmw
{% endsi_step %}

{% si_step mounting the Flow V2 deck %}
Mount the Flow V2 Deck underneath and the Multi-ranger deck above the Crazyflie 2.X using the long pin-headers supplied with the Crazyflie 2.X Kit.
Mount the {% poplink flow-deck %} underneath and the Multi-ranger deck above the Crazyflie 2.X using the long pin-headers supplied with the Crazyflie 2.X Kit.
{% img Mounting the Flow V2 deck; wide; /images/tutorials/getting_started_stem_ranging/getting_started_with_stem_ranging_770px.jpg %}
{% img Mounting the Flow V2 deck; wide; /images/tutorials/getting_started_stem_ranging/getting_started_with_stem_ranging_770px-2.jpg %}

Expand Down Expand Up @@ -182,5 +182,5 @@ Demo terminated!
* Explore the different [example scripts](https://github.com/bitcraze/crazyflie-lib-python/blob/master/examples).
* Explore the [motion commander](https://github.com/bitcraze/crazyflie-lib-python/blob/master/cflib/positioning/motion_commander.py) class. The class can do more then simple directional commands such as scripting using speed and time or together with events.
* Try out the logging and parameter framework. The [basic logging](https://github.com/bitcraze/crazyflie-lib-python/blob/master/examples/basiclogSync.py) is a good example to start from or digg into the details on the [documentation](/documentation/repository/crazyflie-firmware/master/userguides/logparam/).
* Connect a gamepad and with the [flow deck]({% id_url getting-started-flow-deck %}) try optical flow stabilized flight.
* Connect a gamepad and with the {% poplink flow-deck %} to try optical flow stabilized flight.
{% endsi_step %}
Loading

0 comments on commit 1e2e8c0

Please sign in to comment.