This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
doc:crazyflie:client:pycfclient:index [2017-04-18 16:19] tobias [Main UI] |
doc:crazyflie:client:pycfclient:index [2020-05-12 14:27] (current) kimberly |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | <WRAP center round important 60%> | ||
+ | This page has deprecated and moved to the new documentation framework of the main Bitcraze website. Please go to [[https:// | ||
+ | </ | ||
+ | |||
====== Overview ====== | ====== Overview ====== | ||
This page is intended to give an overview on how to use the Crazyflie client, not for installing it. For install instructions go [[https:// | This page is intended to give an overview on how to use the Crazyflie client, not for installing it. For install instructions go [[https:// | ||
Line 18: | Line 22: | ||
For more info on LED indicators etc. have a look at the [[projects: | For more info on LED indicators etc. have a look at the [[projects: | ||
====== Main UI ====== | ====== Main UI ====== | ||
- | {{ : | + | {{: |
- The window title will show the connection status | - The window title will show the connection status | ||
- Connect/ | - Connect/ | ||
Line 32: | Line 36: | ||
====== Functionality ====== | ====== Functionality ====== | ||
Below are a few guides on how to accomplish specific tasks with the client. | Below are a few guides on how to accomplish specific tasks with the client. | ||
- | |||
- | ===== Connecting ===== | ||
- | There' | ||
- | |||
- | If you search for Crazyflies the following dialog will be shown: | ||
- | <WRAP group> | ||
- | <WRAP half column> | ||
- | {{ : | ||
- | </ | ||
- | <WRAP half column> | ||
- | * //List of Crazyflies:// | ||
- | * // | ||
- | * //Scan:// Re-scan for Crazyflies (note you're Crazyflie must be powered on to show up in the list) | ||
- | * // | ||
- | * //Cancel:// Go back | ||
- | </ | ||
- | </ | ||
- | \\ | ||
===== Firmware upgrade ===== | ===== Firmware upgrade ===== | ||
Line 59: | Line 45: | ||
* Make sure that the Crazyflie is disconnected from the client and powered off | * Make sure that the Crazyflie is disconnected from the client and powered off | ||
* Go to the menu // | * Go to the menu // | ||
- | * For Crazyflie 2.0 hold the button for about 3 seconds when turning it on until the blue LED M2 starts to blink to get into bootloader mode. | + | * For Crazyflie 2.0 hold the button for about 3 seconds when turning it on until the blue LED M2 starts to blink to get into bootloader mode. If a wrong nRF51 firmware has been flashed you might have to start from an un-powered state. Then hold the button and connect power. |
* Click " | * Click " | ||
* For Crazyflie 1.0 now power it on **within 5 seconds** using the battery (not USB), the booloader should now connect | * For Crazyflie 1.0 now power it on **within 5 seconds** using the battery (not USB), the booloader should now connect | ||
Line 74: | Line 60: | ||
* **Pitch trim** Can be programmed permanently with the trim values found to work good in the flight tab. | * **Pitch trim** Can be programmed permanently with the trim values found to work good in the flight tab. | ||
* **Roll trim** Can be programmed permanently with the trim values found to work good in the flight tab. | * **Roll trim** Can be programmed permanently with the trim values found to work good in the flight tab. | ||
- | * **Radio channel** Can be set to anything between 0 and 125, correspond to a frequency from 2400MHz to 2525MHz. In most countries channel 0 to 80 is OK to use but this should be checked with you local regulations. If using 2M datarate, the copter channels should be 2MHz apart. | + | * **Radio channel** Can be set to anything between 0 and 125, correspond to a frequency from 2400MHz to 2525MHz. In most countries channel 0 to 80 is OK to use but this should be checked with you local regulations. If using 2M datarate, the copter channels should be 2 apart (2MHz). |
* **Radio bandwidth** This can set the radio bandwidth to 250k, 1M or 2M. A lower bandwidth has longer range but has higher chance of collision. When used inside sometimes it is better to use 1M or 2M as it decreases the risk of collision with WiFi. | * **Radio bandwidth** This can set the radio bandwidth to 250k, 1M or 2M. A lower bandwidth has longer range but has higher chance of collision. When used inside sometimes it is better to use 1M or 2M as it decreases the risk of collision with WiFi. | ||
* **Radio address** (advanced) will set the shock burst address used for communicating. Note that if you change this then you will have to set the address correctly in the connect dialog. | * **Radio address** (advanced) will set the shock burst address used for communicating. Note that if you change this then you will have to set the address correctly in the connect dialog. | ||
Line 86: | Line 72: | ||
===== Logging ===== | ===== Logging ===== | ||
- | TODO | + | |
+ | The Crazyflie logging framework allows to log the state of Crazyflie variables in real-time. This subsystem is used by the client to show information like pose or battery level. | ||
+ | |||
+ | The list of log variable can be seen in the "log TOC" tab in the client. | ||
+ | |||
+ | Variables are logged in block: one log block is a list of variable that are logged at the same time. You can setup custom log blocks that can be plotted in the plotter and saved to file in the log block tab. | ||
+ | |||
+ | To setup a new log block click on the menu " | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | - List of log variable in the Crazyflie | ||
+ | - Log variables in the current log block | ||
+ | - Add the selected Crazyflie log variable in the log block | ||
+ | - Remove the selected log block variable from the log block | ||
+ | - Period at which the variables are sampled and the block is send by the Crazyflie to the client. The minimum possible period is 10ms (100Hz) and it can be set by step of 10ms up to 2550ms. | ||
+ | - Space taken by the variables in the log block. | ||
+ | - Name of the new or existing log blocks. You can choose an existing block from the list or type the name of a new one | ||
+ | - Load existing log block configuration | ||
+ | - Save log block configuration | ||
===== Flight settings ===== | ===== Flight settings ===== | ||
Line 108: | Line 113: | ||
{{ : | {{ : | ||
- | Follow the instructions to detect the axis or button that you would like to map to the functionality. If you would like to map the functionality to two axis (like right/ | + | Follow the instructions to detect the axis or button that you would like to map to the functionality. If you would like to map the functionality to two axis (like right/ |
Go though all the functionality you would like to map by pressing the //Detect// button for each. To be able to save the mapping you will at least have to map roll, pitch, yaw and thrust. | Go though all the functionality you would like to map by pressing the //Detect// button for each. To be able to save the mapping you will at least have to map roll, pitch, yaw and thrust. | ||
Line 236: | Line 241: | ||
The tab can be used in two modes that is selected with the radio buttons to the right | The tab can be used in two modes that is selected with the radio buttons to the right | ||
+ | |||
+ | To setup the LPS anchor system mode (TWR or TDoA), see the [[doc: | ||
==== Position estimate mode ==== | ==== Position estimate mode ==== | ||
- | displays | + | Displays |
{{ : | {{ : | ||
+ | |||
+ | - Plot for X/Y (top view) showing anchors and Crazyflie | ||
+ | - Plot for X/Z showing anchors and Crazyflie | ||
+ | - Plot for Y/Z showing anchors and Crazyflie | ||
+ | - Sets the graph mode | ||
+ | * //Position estimate// - Normal viewing mode | ||
+ | * //Anchor identification// | ||
+ | - Indicates if anchors are communicating with Crazyflie (i.e anchors are up and running) | ||
+ | - Fit and center all data in graphs | ||
+ | - Used to set anchor positions (see below) | ||
+ | |||
+ | When setting the anchor position there' | ||
+ | * //White// - No position exists for this anchor (i.e the position has not been read yet) | ||
+ | * //Red// - Position has been read from the anchor and it differs from the currently shown value in the input box | ||
+ | * //Green// - Position has been read from the anchor and it is the same as the currently shown value in the input box | ||
+ | |||
+ | The positions of the anchors is continuously read in the background and as positions comes in or input box values changes the colors will be set accordingly. There' | ||
+ | |||
+ | * //Get from anchors// - Fills the input boxes with the positions read from the anchors | ||
+ | * //Write to anchors// - Writes the currently shown values in the input boxes to the anchors. In order to check that the write has been successful wait about 10s and all the fields should turn green as the positions are read back. If some of the fields are still red, try pressing the button again. | ||
+ | |||
==== Anchor identification mode ==== | ==== Anchor identification mode ==== | ||
displays the configured anchor positions. When the crazyflie is close to an anchor this is indicated in the graphs by highlighting it. This mode is useful to identify anchors and verify that the system is correctly configured. | displays the configured anchor positions. When the crazyflie is close to an anchor this is indicated in the graphs by highlighting it. This mode is useful to identify anchors and verify that the system is correctly configured. | ||
{{ : | {{ : | ||
+ | |||
+ | - Plot for X/Y (top view) showing anchors and Crazyflie | ||
+ | - Plot for X/Z showing anchors and Crazyflie | ||
+ | - Plot for Y/Z showing anchors and Crazyflie | ||
+ | - Sets the graph mode | ||
+ | * //Position estimate// - Normal viewing mode | ||
+ | * //Anchor identification// | ||
+ | - Current system mode indication. The system must be in TWR mode for the anchor identification mode to be available. | ||
====== ZMQ backends ====== | ====== ZMQ backends ====== |