Installation/MacOSX
The task of building Paparazzi on for Apple MacOS X is on going.
The current installation instructions are as follows. As the process evolves and the more people begin to use it the process will become easier and more simplified.
Installing from source
- Install the latest XCode http://developer.apple.com/technologies/tools/xcode.html
- Install MacPorts from http://www.macports.org/install.php
- Install GIT
sudo port install git-core
- Get a local copy of the Paparazzi Portability Support source
git clone git://github.com/paparazzi/paparazzi-portability-support.git
- edit
/opt/local/etc/macports/sources.conf
and above thersync://...
line addfile://<local path>/paparazzi-portability-support/darwin/macports/ports/ [nosync]
for example:file:///Users/dummyuser/projects/paparazzi/paparazzi-portability-support/darwin/macports/ports/ [nosync]
- Install paparazzi
sudo port install paparazzi
# then go and have lunch, get a coffee, get some sleep. this will probably take a long time - (TBD: I think this can be removed) edit ~/.profile or ~/.bash_profile and add export CPPFLAGS="-I/opt/local/include"
If you want to follow the standard Paparazzi Git install then the prerequisite software can be installed by running the command sudo port install paparazzi-tools
Installation using the binary installer
- Install the latest XCode http://developer.apple.com/technologies/tools/xcode.html
- Download the paparazzi binary installer from http://TODO find a place to host this file
- Install paparazzi by double clicking on the downloaded file paparazzi.mpkg
- edit /etc/profile and add export CPPFLAGS="-I/opt/local/include" (TODO: Remove the need for this)
If you want to follow the standard Paparazzi Git install then the prerequisite software can be installed by downloading the paparazzi-tools binary installer from http://TODO find a place to host this file and installing the tools by doublclicking on the downloaded file paparazzi-tools.mpkg
Configuration
At the moment it the Ivy bus doesn't like to talk on the standard loopback network on Macs.
To work around this issue set the environment variable IVY_BUS to be the broadcast address of the network your using. For example:
export IVY_BUS=192.168.1.255
Note that your network address is the network you are currently using. If you are at home configuring on a wireless network, that network won't be available out in the field.
Alternatively the bus can be specified as arguments to each command in the GCS.
- Close all processes using the stop button
- add -b <network>.255 to each command
- start the processes again
Running Paparazzi
Paparazzi can be started in the usual way
cd ~/paparazzi ./paparazzi
Changing the gtk look and feel
Run /opt/local/bin/switch2 to select a different theme. More detailed instructions can be found at http://gtk.php.net/manual/en/html/tutorials/tutorials.installation.macosx-stepbystep.html
Additional themes can be downloaded from http://art.gnome.org/themes/gtk2
FTDI Drivers
FTDI drivers can be downloaded from FTDI
The device will probably become available as something like /dev/tty.usbserial-000013FD when connected. Note that different USB ports get different addresses. When connecting to another port the same device came up as /dev/tty.usbserial-000014FA
Since Paparazzi is currently configured to use /dev/ttyUSB0 it's easiest to just create a link to the required device.
- Remove all USB devices from the computer and run the command
ls -l /dev/*usb* /dev/*USB*
hopefully this will not list anything - Plug in your radio and repeat the command
ls -l /dev/*usb* /dev/*USB*
this should now list the serial port that the radio has been connected to. In my case I getls -l /dev/*usb* /dev/*USB*
- crw-rw-rw- 1 root wheel 11, 27 20 Jan 14:38 /dev/cu.usbserial-000013FD
- crw-rw-rw- 1 root wheel 11, 26 20 Jan 14:38 /dev/tty.usbserial-000013FD
- Next we need to create a symbolic link to the tty.usbserial device listed to /dev/ttyUSB0 in my case the command is
sudo ln -s /dev/tty.usbserial-000013FD /dev/ttyUSB0
- To check that everything is correct run the first command again
ls -l /dev/*usb* /dev/*USB*
and you should get something like thisls -l /dev/*usb* /dev/*USB*
- crw-rw-rw- 1 root wheel 11, 27 20 Jan 14:38 /dev/cu.usbserial-000013FD
- crw-rw-rw- 1 root wheel 11, 26 20 Jan 14:38 /dev/tty.usbserial-000013FD
- lrwxr-xr-x 1 root wheel 0 20 Jan 14:42 /dev/ttyUSB0 -> /dev/tty.usbserial-000013FD