FSweekend 2010

From FlightGear wiki
Jump to navigation Jump to search
FSweekend banner 2010.jpg

This wiki page lists all information required for participants to the FSweekend and the attached multiplayer event(s). FlightGear will be represented by a team of seven regular FlightGear developers and users.


<eventcountdown date="06-November-2010"><daysuntil in="days">06-November-2010</daysuntil> until the FSweekend</eventcountdown>


Booth information

This year's booth will probably exist of:

Anaglyph-glasses.jpg
  • an UMTS USB stick for unlimited data use at high speed, so users from all over the world can visit us virtually.
  • a bunch of 3D glasses, to demo the anaglyph ability of FlightGear.
  • a FlightGear based procedure trainer.
  • a Linux-based triple-screen PC, with a generic set of input devices for general purpose flight demonstrations.
  • a top-end workstation equipped with 4(!) nVidia GTX460 to showcase our multi-screen capabilities

Equipment Checklist

  • One main power extension cord (DT: yellow)
  • One main power extension cord (DT: green)
  • One main power extension cord (TD: black)
  • One main power extension cord (JVDV: red)
  • One Linux-based PC (DT)
    • Three monitors
    • Saitek Joystick
    • Saitek Rudder Pedals
    • Headset
    • Sound system
  • One Linux-based PC (JVDV)
    • Three monitors
    • Thrustmaster HOTAS Cougar
    • Saitek Rudder Pedals
    • USB Headset
  • One Macbook Pro (DT)
    • simple joystick
  • One Macbook, white (TD)
  • One Linx-based Notebook (TD)
    • simple joystick
    • ELITE yoke
    • simple, homemade multi-engine and view controller
    • 3Dconnexion 3d-mouse
  • One FlightGear based procedure trainer (TD)
    Pmpt-0.1.jpg
    • ELITE ProPanelII
    • FlightLink rudder set
    • Two TFT Displays
    • Panel controller
    • old (historic?) tablet pc running Atlas
  • One Thomas-Krens-AG workstation (TD)
    • Eight monitors (probably)
  • Two FlightGear banners (TD)
    • mounting material (last year's setup from Durk)
  • FlightGear business cards (TD)
  • Coffee maker (Senseo, bring your own pads!) (TD)
  • two or three sets of aviation headsets (deco) (TD)
  • One CH Flight Sim Yoke
  • One CH Pro Pedals

Configuration files

Here are the config files for the multi-gpu machine.

Monitor-Layout

                +--------+   +--------+
                |        |   |        |
                | C,:0.4 |   | E,:0.0 |
                | CRT-2  |   | CRT-2  |
                +--------+   +--------+
+--------+     +----------+ +----------+     +--------+
| A,:0.2 |     |          | |          |     | B,:0.3 |
|+------+|     |  D,:0.5  | |  F,:0.1  |     |+------+|
||      ||     |  DFP-1   | |  DFP-1   |     ||      ||
||DFP-0 ||     +----------+ +----------+     ||DFP-0 ||
||      ||                                   ||      ||
|+------+|     +----------------------+      |+------+|
||      ||     |    Panel, :0.6       |      ||      ||
||DFP-2 ||     |+---------++---------+|      ||DFP-2 ||
||      ||     || CRT-0   || CRT-1   ||      ||      ||
|+------+|     |+---------++---------+|      |+------+|
+--------+     +----------------------+      +--------+

/etc/X11/xorg.conf

Section "ServerLayout"
   Identifier     "Layout0"
#    Screen      0  "ConsoleScreen" 0 0
   Screen      1  "Screen0" 0 0
   Screen      2  "Screen0b" 1280 0
   Screen      3  "Screen1" 1280 0
   Screen      4  "Screen2" 1280 0
   Screen      5  "Screen3" 1280 0
   Screen      6  "Screen3b" 1280 0
   Screen      7  "Panel" 1280 0
   InputDevice    "Keyboard0" "CoreKeyboard"
   InputDevice    "Mouse0" "CorePointer"
   Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "Module"
   Load           "dbe"
   Load           "extmod"
   Load           "freetype"
   Load           "glx"
EndSection

Section "InputDevice"
   Identifier     "Mouse0"
   Driver         "mouse"
   Option         "Protocol" "auto"
   Option         "Device" "/dev/psaux"
   Option         "Emulate3Buttons" "no"
   Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
   Identifier     "Keyboard0"
   Driver         "kbd"
   Option         "Protocol" "Standard"
   Option         "XkbLayout" "de"
   Option         "XkbModel" "pc105"
    Option         "XkbRules" "xfree86"
   Option         "XkbVariant" "nodeadkeys"
EndSection

########################################################
# Internal Matrox Card
########################################################
#Section "Monitor"
#    Identifier     "ConsoleMonitor"
#    VendorName     "Unknown"
#    ModelName      "Maxdata/Belinea Belinea101705"
#    HorizSync       30.0 - 83.0
#    VertRefresh     50.0 - 75.0
#EndSection
# 
#Section "Device"
#   Identifier      "MatroxInternal"
#   Busid           "07:01:0"
#   Driver          "mga"
#   Vendorname      "matrox"
#EndSection
#
#Section "Screen"
#    Identifier     "ConsoleScreen"
#    Device         "MatroxInternal"
#    Monitor        "ConsoleMonitor"
#    DefaultDepth    24
#    Option         "RenderAccel" "True"
#    Option         "AddARGBGLXVisuals" "True"
#    Option         "AllowGLXWithComposite" "True"
#    SubSection     "Display"
#        Depth       24
#        Modes      "1280x1024"
#    EndSubSection
#EndSection

########################################################
# Internal Matrox Card End
########################################################

Section "Device"
   Identifier     "GPU0_0"
   Driver         "nvidia"
   VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 460"
   BusID          "PCI:2:0:0"
   Screen          0
#    Option         "RandRRotation" "true"
EndSection

Section "Device"
   Identifier     "GPU0_1"
   Driver         "nvidia"
   VendorName     "NVIDIA Corporation"
   BoardName      "GeForce GTX 460"
   BusID          "PCI:2:0:0"
   Screen          1
#    Option         "RandRRotation" "true"
EndSection

Section "Device"
   Identifier     "GPU2"
   Driver         "nvidia"
   VendorName     "NVIDIA Corporation"
   BoardName      "GeForce GTX 460"
   BusID          "PCI:3:0:0"
EndSection

Section "Device"
   Identifier     "GPU1"
   Driver         "nvidia"
   VendorName     "NVIDIA Corporation"
   BoardName      "GeForce 9500 GT"
   BusID          "PCI:1:0:0"
EndSection

Section "Device"
   Identifier     "GPU3"
   Driver         "nvidia"
   VendorName     "NVIDIA Corporation"
   BoardName      "GeForce GTX 460"
   BusID          "PCI:131:0:0"
EndSection

Section "Device"
   Identifier     "GPU4_0"
   Driver         "nvidia"
   VendorName     "NVIDIA Corporation"
   BoardName      "GeForce GTX 460"
   BusID          "PCI:132:0:0"
   Screen          0
EndSection

Section "Device"
   Identifier     "GPU4_1"
   Driver         "nvidia"
   VendorName     "NVIDIA Corporation"
   BoardName      "GeForce GTX 460"
   BusID          "PCI:132:0:0"
   Screen          1
EndSection

Section "Monitor"
   Identifier     "Belinea"
   VendorName     "Unknown"
   ModelName      "Maxdata/Belinea Belinea101705"
   HorizSync       30.0 - 83.0
   VertRefresh     50.0 - 75.0
   Option         "DPMS"
EndSection

Section "Monitor"
   Identifier     "C19"
   VendorName     "Unknown"
   ModelName      "FUS C19-1"
   HorizSync       30.0 - 80.0
   VertRefresh     55.0 - 75.0
   Option         "DPMS"
EndSection

Section "Monitor"
   Identifier     "AOC"
   VendorName     "Unknown"
   ModelName      "AOC 2416"
   HorizSync       30.0 - 80.0
   VertRefresh     56.0 - 75.0
EndSection

Section "Screen"
   Identifier     "Screen0"
   Device         "GPU0_0"
   Monitor        "C19"
   DefaultDepth    24
   Option         "NoLogo"
   Option         "TwinView" "0"
   Option         "metamodes" " CRT-2: 1280x1024 +0+0, DFP-1: nvidia-auto-select +1280+0"
   SubSection     "Display"
       Depth       24
   EndSubSection
EndSection

Section "Screen"
   Identifier     "Screen0b"
   Device         "GPU0_1"
   Monitor        "C19"
   DefaultDepth    24
   Option         "NoLogo"
   Option         "TwinView" "0"
   SubSection     "Display"
       Depth       24
   EndSubSection
EndSection

Section "Screen"
   Identifier     "Screen1"
   Device         "GPU2"
   Monitor        "C19"
   DefaultDepth    24
   Option         "NoLogo"
   Option         "TwinView" "1"
   Option         "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-2: nvidia-auto-select +1920+0"
   SubSection     "Display"
       Depth       24
   EndSubSection
EndSection

Section "Screen"
   Identifier     "Panel"
   Device         "GPU1"
   Monitor        "Belinea"
   DefaultDepth    24
   Option         "NoLogo"
   Option         "TwinView" "1"
   Option         "metamodes" "CRT-0: nvidia-auto-select +0+0, CRT-1: nvidia-auto-select +1280+0"
   SubSection     "Display"
       Depth       24
   EndSubSection
EndSection

Section "Screen"
   Identifier     "Screen2"
   Device         "GPU3"
   Monitor        "C19"
   DefaultDepth    24
   Option         "NoLogo"
   Option         "TwinView" "1"
   Option         "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-2: nvidia-auto-select +1920+0"
   SubSection     "Display"
       Depth       24
   EndSubSection
EndSection

Section "Screen"
   Identifier     "Screen3"
   Device         "GPU4_0"
   Monitor        "C19"
   DefaultDepth    24
   Option         "TwinView" "0"
   Option         "NoLogo"
   SubSection     "Display"
       Depth       24
   EndSubSection
EndSection

Section "Screen"
   Identifier     "Screen3b"
   Device         "GPU4_1"
   Monitor        "C19"
   DefaultDepth    24
   Option         "TwinView" "0"
   Option         "NoLogo"
   SubSection     "Display"
       Depth       24
   EndSubSection
EndSection

rendering.xml

Run flightgear with --config=rendering.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<PropertyList>
 <sim>
   <model>
     <hide-model type="bool">true</hide-model>
   </model>
   <menubar>
     <visibility type="bool">false</visibility>
   </menubar>
   <view n="0">
     <config>
       <pitch-offset-deg>0.0</pitch-offset-deg>
     </config>
   </view>

   <rendering>
     <multithreading-mode>AutomaticSelection</multithreading-mode>

     <camera-group>
       <window>
         <name type="string">A</name>
         <host-name type="string"></host-name>
         <display>0</display>
         <screen>2</screen>
         <fullscreen type = "bool">true</fullscreen>
       </window>

       <window>
         <name type="string">B</name>
         <host-name type="string"></host-name>
         <display>0</display>
         <screen>3</screen>
         <fullscreen type = "bool">true</fullscreen>
       </window>

       <window>
         <name type="string">C</name>
         <host-name type="string"></host-name>
         <display>0</display>
         <screen>4</screen>
         <fullscreen type = "bool">true</fullscreen>
      </window>

       <window>
         <name type="string">D</name>
         <host-name type="string"></host-name>
         <display>0</display>
         <screen>5</screen>
         <fullscreen type = "bool">true</fullscreen>
       </window>

       <window>
         <name type="string">E</name>
         <host-name type="string"></host-name>
         <display>0</display>
         <screen>0</screen>
         <fullscreen type = "bool">true</fullscreen>
       </window>

       <window>
         <name type="string">F</name>
         <host-name type="string"></host-name>
         <display>0</display>
         <screen>1</screen>
         <fullscreen type = "bool">true</fullscreen>
       </window>

       <camera>
         <window>
          <name>A</name>
         </window>
         <viewport>
           <x>0</x>
           <y>0</y>
           <width>1920</width>
           <height>1200</height>
         </viewport>
         <view>
           <heading-deg type = "double">45</heading-deg>
           <roll-deg type = "double">0</roll-deg>
           <pitch-deg type = "double">0</pitch-deg>
         </view>
         <frustum>
           <top>0.070</top>
           <bottom>-0.03</bottom>
          <left>-.080</left>
           <right>.080</right>
           <near>0.4</near>
           <far>120000.0</far>
         </frustum>
       </camera>
       <camera>
         <window>
          <name>A</name>
         </window>
         <viewport>
           <x>1920</x>
           <y>0</y>
           <width>1920</width>
           <height>1200</height>
         </viewport>
         <view>
           <heading-deg type = "double">45</heading-deg>
           <roll-deg type = "double">0</roll-deg>
           <pitch-deg type = "double">0</pitch-deg>
         </view>
         <frustum>
           <top>-0.05</top>
           <bottom>-0.150</bottom>
           <left>-.080</left>
           <right>.080</right>
           <near>0.4</near>
           <far>120000.0</far>
         </frustum>
       </camera>
       <camera>
         <window>
          <name>D</name>
         </window>
         <viewport>
           <x>0</x>
           <y>0</y>
           <width>1920</width>
           <height>1200</height>
         </viewport>
         <view>
           <heading-deg type = "double">0</heading-deg>
          <pitch-deg type = "double">0</pitch-deg>
         </view>
         <frustum>
           <top>0.070</top>
           <bottom>-0.030</bottom>
           <left>-.129</left>
           <right>.031</right>
           <near>0.4</near>
           <far>120000.0</far>
         </frustum>
       </camera>
       <camera>
         <window>
          <name>F</name>
         </window>
         <viewport>
           <x>0</x>
           <y>0</y>
           <width>1920</width>
           <height>1200</height>
         </viewport>
         <view>
           <heading-deg type = "double">0</heading-deg>
           <pitch-deg type = "double">0</pitch-deg>
         </view>
         <frustum>
           <top>0.070</top>
           <bottom>-0.030</bottom>
           <left>.0431</left>
           <right>.2031</right>
           <near>0.4</near>
           <far>120000.0</far>
         </frustum>
       </camera>
       <camera>
         <window>
          <name>E</name>
         </window>
         <viewport>
           <x>0</x>
           <y>0</y>
           <width>1280</width>
           <height>1024</height>
         </viewport>
         <view>
           <heading-deg type = "double">0</heading-deg>
           <pitch-deg type = "double">0</pitch-deg>
         </view>
         <frustum>
           <top>0.181</top>
           <bottom>0.088</bottom>
           <left>.0431</left>
           <right>.2031</right>
           <near>0.4</near>
           <far>120000.0</far>
         </frustum>
       </camera>
       <camera>
         <window>
          <name>C</name>
         </window>
         <viewport>
           <x>0</x>
           <y>0</y>
           <width>1280</width>
           <height>1024</height>
         </viewport>
         <view>
           <heading-deg type = "double">0</heading-deg>
           <pitch-deg type = "double">0</pitch-deg>
         </view>
         <frustum>
           <top>0.181</top>
           <bottom>0.088</bottom>
           <left>-0.1077</left>
           <right>.009231</right>
           <near>0.4</near>
           <far>120000.0</far>
         </frustum>
       </camera>
       <camera>
         <window>
          <name>B</name>
        </window>
         <viewport>
           <x>0</x>
           <y>0</y>
           <width>1920</width>
           <height>1200</height>
         </viewport>
         <view>
           <heading-deg type = "double">-45</heading-deg>
           <roll-deg type = "double">0</roll-deg>
           <pitch-deg type = "double">0</pitch-deg>
         </view>
         <frustum>
           <top>0.070</top>
           <bottom>-0.03</bottom>
           <left>-.080</left>
           <right>.080</right>
           <near>0.4</near>
           <far>120000.0</far>
         </frustum>
       </camera>
       <camera>
         <window>
          <name>B</name>
         </window>
         <viewport>
           <x>1920</x>
           <y>0</y>
           <width>1920</width>
           <height>1200</height>
         </viewport>
         <view>
           <heading-deg type = "double">-45</heading-deg>
           <roll-deg type = "double">0</roll-deg>
           <pitch-deg type = "double">0</pitch-deg>
         </view>
         <frustum>
           <top>-0.05</top>
           <bottom>-0.150</bottom>
           <left>-.080</left>
           <right>.080</right>
           <near>0.4</near>
           <far>120000.0</far>
        </frustum>
       </camera>
       <gui>
         <window>
           <name type="string">E</name>
         </window>
       </gui>
     </camera-group>
   </rendering>
 </sim>
</PropertyList>

.xinitrc

X startup script for the home directory. Initializes the X-screens, disables screen savers, places a logo-background-bitmap to keep our sponsor happy, starts the 2D-panel and the window manager (icewm, because it's cool).

export DISPLAY=:0.1
xset -display "$DISPLAY" -dpms
xset -display "$DISPLAY" s off
xsetroot -display "$DISPLAY" -solid red
xpmroot $HOME/.icewm/logo-3d-1920x1200.xpm

export DISPLAY=:0.2
xset -display "$DISPLAY" -dpms
xset -display "$DISPLAY" s off
#xsetroot -display "$DISPLAY" -solid darkslateblue
xsetroot -display "$DISPLAY" -solid blue
xpmroot $HOME/.icewm/logo-3d-1920x1200.xpm

export DISPLAY=:0.3
xset -display "$DISPLAY" -dpms
xset -display "$DISPLAY" s off
xsetroot -display "$DISPLAY" -solid green
xpmroot $HOME/.icewm/logo-3d-1920x1200.xpm

export DISPLAY=:0.4
xset -display "$DISPLAY" -dpms
xset -display "$DISPLAY" s off
xsetroot -display "$DISPLAY" -solid red
xpmroot $HOME/.icewm/logo-3d-1280x1024.xpm

export DISPLAY=:0.5
xset -display "$DISPLAY" -dpms
xset -display "$DISPLAY" s off
xpmroot $HOME/.icewm/logo-3d-1920x1200.xpm

export DISPLAY=:0.6
xset -display "$DISPLAY" -dpms
xset -display "$DISPLAY" s off
xsetroot -display "$DISPLAY" -solid darkslateblue
fgpanel -geometry 2560x1024+0+0 --panel=Aircraft/SenecaII/Panels/Panel1.xml --fg-root=/home/flightgear/fg-osg/data --prop:/sim/frame-rate-throttle-hz=60 &

export DISPLAY=:0.0
xset -display "$DISPLAY" -dpms
xset -display "$DISPLAY" s off
xpmroot $HOME/.icewm/logo-3d-1280x1024.xpm

/usr/bin/nvidia-settings -l
xterm &
icewm-session || xterm -fg red

Flight information

Airports

Activities will mainly take place at and around Amsterdam Airport Schiphol (EHAM), Lelystad Airport (EHLE), Volkel Air Base (EHVK) and the VU University Medical Center Helipad EH0001.

Charts

All charts that you may have to use on your flights are available at http://ais-netherlands.nl (AIS Publications > Integrated Package). Please note that these are the most up to date charts available, so certain situations might not have been changed in FlightGear (EHAM, EHLE and EHVK taxiways should be correct though).

Parking positions have been created for most of the Dutch airports including EHAM, EHRD, EHVK and EHLE (A1-A6, B1 and B2).

All named airports are for civil usage, except for Volkel Air Base (EHVK). This base will be occupied by the (AI) F-16 squadrons and likely one setup in Lelystad. Feel free to join with your F-16 or other Dutch/NATO mil aircraft.

Weather information

Reallife weather information can be found at the KNMI (Dutch Meteorological institute) website.

  • METAR current weather at airports
  • TAF expected weather at airports

If the weather is really bad, it is likely that the FSweekend guys will use a preset weather scenario.

The weather forecast of Thursday reads:

  • Saterday: 90% rain, Western wind (4 bft, 11-16 kts)
  • Sunday: 40% rain, Northeastern wind (3 bft, 7-10 kts)

Scenery

We will be using newly generated scenery in Lelystad.

Events

The guys from TransGear will organise a multiplayer event on both days. The event consist pilots flying pre-requested routes from and to Schiphol (EHAM). All activity at EHAM will take place around 13:00 GMT (that is 14:00 local time in the Netherlands). Traffic will be controlled by at least one (likely more) air traffic controller(s).

The people in Lelystad will have something to show to the public and might be able to participate during parts of the event (maybe there are even some visitors to our booth that would like to fly in one of our best MP events).

More information in the forum topic and on the TransGear website.