This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
projects:crazyflie:pc_utils:index [2012-03-15 20:50] macke |
projects:crazyflie:pc_utils:index [2021-06-24 16:52] (current) kimberly |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | <WRAP center round important 60%> | ||
+ | This page has deprecated and will be archived. Please go to [[https:// | ||
+ | </ | ||
====== Crazyflie PC utilities ====== | ====== Crazyflie PC utilities ====== | ||
- | The Crazyflie PC utilities are developed using Python 2.6. The Crazyflie library is used from the command line tools as well as a graphical user interface. | + | The Crazyflie PC utilities are developed using Python 2.7. The Crazyflie library is used from the command line tools as well as a graphical user interface. For install instructions of PC side software please see [[projects: |
- | ====== | + | ====== |
- | The following has to be installed for the PC utilities to work: | + | The Crazyflie library can be used to easily integrate control and communication with the Crazyflie quadcopter into an application. Currently |
- | * [[http:// | + | |
- | * [[http:// | + | |
- | * [[http:// | + | |
- | For the graphical | + | ====== List of applications ====== |
- | * [[http:// | + | ===== Crazyflie control UI ===== |
- | * [[http:// | + | The Crazyflie control UI is used to pilot the Crazyflie using a graphical |
- | ===== Installing on Fedora 16 ===== | ||
- | |||
- | ===== Installing on Ubuintu 10.04 LTS ===== | ||
< | < | ||
- | sudo apt-get install python2.6 python-usb python-pygame python-qwt5-qt4 python-qt4 | + | usage: cfclient [-h] [--debug DEBUG] |
- | </ | + | |
- | ===== Fix udev premissions on Linux ===== | + | cfclient |
- | In order to fix the permissions so it's possible to use the USB Radio without being root do the following steps. | + | |
- | < | + | |
- | sudo usermod | + | |
- | </ | + | |
- | Note that you will need to logout and in again for the added group to take effect. | + | |
- | Create a file named / | + | optional arguments: |
- | < | + | -h, --help |
- | SUBSYSTEM==" | + | --debug DEBUG, |
- | </ | + | set debug level [minimal, info, debug, debugfile] |
- | + | ||
- | ===== Installing on Windows XP/7 ===== | + | |
- | + | ||
- | ====== Graphical User Interface ====== | + | |
- | A userguide for the GUI application can be found [[projects: | + | |
- | + | ||
- | ====== Command line tools ====== | + | |
- | + | ||
- | ===== Install instructions ===== | + | |
- | Besides the common bindings nothing has to be installed. | + | |
- | + | ||
- | ===== Link driver model ===== | + | |
- | All command line tools used the same link diver model. The link driver to use in order to communicate with the copter is chosen with the '' | + | |
- | < | + | |
- | crazyclient$ python gamepadCtrl.py -h | + | |
- | CRTP Driver loader options: | + | |
- | --------------------------- | + | |
- | -l < | + | |
- | | + | |
- | + | ||
- | Unless otherwise specified the URI " | + | |
- | </ | + | |
- | + | ||
- | The available drivers are: | + | |
- | + | ||
- | * **%%radio:// | + | |
- | * **%%radio:// | + | |
- | * **%%radio:// | + | |
- | * **%%radio:// | + | |
- | | + | |
- | ==== gamepadCtrl.py ==== | + | |
- | + | ||
- | // | + | |
- | < | + | |
- | crazyclient$ python gamepadCtrl.py | + | |
- | </ | + | |
- | {{: | + | |
- | + | ||
- | The gamepad mapping is as follow: | + | |
- | ^ Control ^ Gamepad Key/axis ^ | + | |
- | | Pitch | LY | | + | |
- | | Roll | LX | | + | |
- | | Thrust | + | |
- | | Yaw rate| RX | | + | |
- | | Emergency stop | Ps button | | + | |
- | + | ||
- | + | ||
- | ===== crazyload.py ===== | + | |
- | + | ||
- | // | + | |
- | + | ||
- | To program a copter with a firmware compile in bootloader mode (see build environment documentation): | + | |
- | < | + | |
- | $ python crazyload.py -c flash cflie.bin | + | |
- | </ | + | |
- | Here // | + | |
- | + | ||
- | The bootloader is normally able to automatically reset the copter in bootloader and firmware mode. This functionality requires to know the CPU-ID of the copter (which can be recovered with the command line tool // | + | |
- | < | + | |
- | $ python crazyload.py -i 32: | + | |
</ | </ | ||
- | This command is an example that would work if the copter is currently running a crazyflie firmware with radio configured to channel 77. | ||
- | ===== getinfo.py | + | ===== Crazyflie headless client |
+ | The Crazyflie headless client is intended to be run on the Raspberry Pi (see [[misc: | ||
- | // | ||
< | < | ||
- | crazyclient$ sudo python getinfo.py -l radio://0/77 | + | usage: cfheadless [-h] [-u URI] [-i INPUT] [-d] [-c CONTROLLER] |
- | Detected CrazyRadio dongle version 0.32 | + | |
- | Channel 77 | + | |
- | Data rate 2M | + | |
- | CPU ID: 52: | + | optional arguments: |
- | Battery voltage: 3.764599V | + | -h, --help |
- | CrazyCopter version: 0.9.0 | + | -u URI, --uri URI URI to use for connection to the Crazyradio dongle, |
- | Copter class name: CrazyFlie | + | defaults to radio://0/10/250K |
- | CPU ID: 52: | + | -i INPUT, --input INPUT |
- | crazyclient$ | + | Input mapping to use for the controller, defaults to |
+ | | ||
+ | -d, --debug | ||
+ | -c CONTROLLER, --controller CONTROLLER | ||
+ | Use controller with specified id, id defaults to 0 | ||
+ | | ||
</ | </ |