Difference between revisions of "Installation/MacOSX"

From PaparazziUAV
Jump to navigation Jump to search
Line 28: Line 28:
= Configuration =
= Configuration =
[[Image:NetworkPreferences.png|thumb|right|150px|]]
[[Image:NetworkPreferences.png|thumb|right|150px|]]
At the moment it the Ivy bus doesn't like to talk on the standard loopback network on Macs.
Curently the Ivy bus library cannot utilse the standard loopback network interface on a Mac. If on ocassion you intend operate without a network (ie at the flying field) then set the environment variable IVY_BUS to the following multicast address thus: 


To work around this issue set the environment variable IVY_BUS to be the broadcast address of the network your using. For example: <pre>export IVY_BUS=192.168.1.255</pre>
<pre>export IVY_BUS=224.255.255.255</pre>


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.
If the intent is to run the ground segment distributed across a number of computers the the IVY_BUS environment variable should be set to a local network address.
 
For example <pre>export IVY_BUS=192.168.1.255</pre>
 
 
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. Thus in nearly every case


[[Image:PaparazziMacOSX.png|thumb|left|150px|]]
[[Image:PaparazziMacOSX.png|thumb|left|150px|]]

Revision as of 02:31, 20 January 2011

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

  1. Install the latest XCode http://developer.apple.com/technologies/tools/xcode.html
  2. Install MacPorts from http://www.macports.org/install.php
  3. Install GIT sudo port install git-core
  4. Get a local copy of the Paparazzi Portability Support source git clone git://github.com/paparazzi/paparazzi-portability-support.git
  5. edit /opt/local/etc/macports/sources.conf and above the rsync://... line add file://<local path>/paparazzi-portability-support/darwin/macports/ports/ [nosync] for example:
    file:///Users/dummyuser/projects/paparazzi/paparazzi-portability-support/darwin/macports/ports/ [nosync]
  6. Install paparazzi sudo port install paparazzi # then go and have lunch, get a coffee, get some sleep. this will probably take a long time
  7. (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

  1. Install the latest XCode http://developer.apple.com/technologies/tools/xcode.html
  2. Download the paparazzi binary installer from http://TODO find a place to host this file
  3. Install paparazzi by double clicking on the downloaded file paparazzi.mpkg
  4. 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

NetworkPreferences.png

Curently the Ivy bus library cannot utilse the standard loopback network interface on a Mac. If on ocassion you intend operate without a network (ie at the flying field) then set the environment variable IVY_BUS to the following multicast address thus:

export IVY_BUS=224.255.255.255

If the intent is to run the ground segment distributed across a number of computers the the IVY_BUS environment variable should be set to a local network address.

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. Thus in nearly every case

PaparazziMacOSX.png

Alternatively the bus can be specified as arguments to each command in the GCS.

  1. Close all processes using the stop button
  2. add -b <network>.255 to each command
  3. 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.

  1. Remove all USB devices from the computer and run the command ls -l /dev/*usb* /dev/*USB* hopefully this will not list anything
  2. 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 get
        ls -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
  3. 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
  4. To check that everything is correct run the first command again ls -l /dev/*usb* /dev/*USB* and you should get something like this
        ls -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