This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
misc:hacks:rasberrypi [2013-06-10 01:33] absoloodle37 |
misc:hacks:rasberrypi [2013-08-13 05:29] absoloodle37 |
||
---|---|---|---|
Line 83: | Line 83: | ||
</ | </ | ||
- | **Note**: | + | ===== Manually Customizing Your .json Configuration File ===== |
+ | If you created a customized .json file for your xbox controller using a Windows PC and the cfclient GUI and are planning to copy it over to your Raspberry Pi, here is some advice: | ||
-save the new .json file as something different than the default, so you can recognize it easily. | -save the new .json file as something different than the default, so you can recognize it easily. | ||
Line 89: | Line 90: | ||
-the new .json file is not located in the Program Files(x64)/ | -the new .json file is not located in the Program Files(x64)/ | ||
- | -copy your new .json file into the correct RPi folder: / | + | -copy your new .json file into the correct RPi folder: / |
< | < | ||
Line 95: | Line 96: | ||
Verify netatalk was installed successfully on your RPi by checking the Finder window on your Mac for a " | Verify netatalk was installed successfully on your RPi by checking the Finder window on your Mac for a " | ||
- | -the cfheadless client on RPi may not recognize the same controller channel " | + | -the cfheadless client on RPi may not recognize the same controller channel " |
+ | Xbox Controller Input = id# | ||
+ | |||
+ | Left stick vertical = 1 | ||
+ | |||
+ | Left stick horizontal = 0 | ||
+ | |||
+ | Right stick vertical = 3 | ||
+ | |||
+ | Right stick horizontal = 2 | ||
+ | |||
+ | Right trigger = 4 | ||
+ | |||
+ | Customize your flying configuration anyway you like using the inputs/ | ||
**Note**: If you have more than one controller attached, you can select the one to use using the commandline parameter '' | **Note**: If you have more than one controller attached, you can select the one to use using the commandline parameter '' | ||
Line 128: | Line 142: | ||
[[http:// | [[http:// | ||
- | * Still dependent on QT (the plan is to remove this very soon) | + | * <del>Still dependent on QT (the plan is to remove this very soon)</ |
- | * Not much error handling yet (the plan is to improve this) | + | * <del>Not much error handling yet (the plan is to improve this)</ |
* < | * < | ||
* < | * < | ||
- | * No good way to quit it yet so you will have to kill the process | + | * <del>No good way to quit it yet so you will have to kill the process</ |
===== Make the client startup automatically on Crazyradio plug in ===== | ===== Make the client startup automatically on Crazyradio plug in ===== | ||
Line 143: | Line 157: | ||
</ | </ | ||
- | and (as root) create a file ''/ | + | and (as root) you will create a file ''/ |
<code bash> | <code bash> | ||
Line 161: | Line 175: | ||
</ | </ | ||
- | You can only create the cfheadless file above in the /root/bin/ folder by being root--not pi or any other user name. Switch to root: '' | + | You can only create the cfheadless file above in the /root/bin/ folder by being root--not pi or any other user name. Switch to root: '' |
- | <code bash> | + | For the XBox360 Controller (after an " |
- | </ | + | |
- | + | ||
- | The -h halts all processes, the -r is the command to reboot after shutdown. | + | |
- | + | ||
- | This should now take care to startup the headless client when you plug in the dongle and (hopefully ;-)) kill it again when you unplug. If you need any additional setup to get your controller working, you can add a similar udev-rule for that to take care of everything upon plugging in the controller as well. An example for the Microsoft Wireless XBox360 controller for PC can be found [[http:// | + | |
- | + | ||
- | And for the XBox360 Controller (after an " | + | |
Create a udev file ''/ | Create a udev file ''/ | ||
Line 183: | Line 190: | ||
killall -9 xboxdrv | killall -9 xboxdrv | ||
fi</ | fi</ | ||
+ | |||
+ | Don't forget to make your files executable after you've created them: '' | ||
+ | |||
+ | <code bash> | ||
+ | </ | ||
+ | |||
+ | The -h halts all processes, the -r is the command to reboot after shutdown. | ||
+ | |||
+ | This should now take care to startup the headless client when you plug in the dongle and (hopefully ;-)) kill it again when you unplug. If you need any additional setup to get your controller working, you can add a similar udev-rule for that to take care of everything upon plugging in the controller as well. | ||
:!: **Important** :!: Due to the current state of the client, you **must** make sure to first connect your controller and power up the Crazyflie before connecting the Crazyradio dongle and thus starting the client. If the client can't find either controller or Crazyflie, it will just hang and you'll have to re-plug the dongle again. | :!: **Important** :!: Due to the current state of the client, you **must** make sure to first connect your controller and power up the Crazyflie before connecting the Crazyradio dongle and thus starting the client. If the client can't find either controller or Crazyflie, it will just hang and you'll have to re-plug the dongle again. |