]> git.mxchange.org Git - flightgear.git/blobdiff - docs-mini/README.IO
Merge branch 'next' into durk-atc
[flightgear.git] / docs-mini / README.IO
index ee0a46eb9cf586b6a7a386a99d50b1e320e25205..3d6c4a1707649b9f3fda80915947db089422ca8a 100644 (file)
@@ -1,9 +1,10 @@
 This document describes how to invoke FlightGear's generic IO subsystem.
 
 FlightGear has a fairly flexible generic IO subsystem that allows you
-to speak any supported protocol over any supported medium.  The IO
+to "speak" any supported protocol over any supported medium.  The IO
 options are configured at runtime via command line options.  You can
-specify multiple entries, one per option.
+specify multiple entries if you like, one per command line option.
+
 
 The general form of the command line option is as follows:
 
@@ -15,6 +16,24 @@ The general form of the command line option is as follows:
     hz = number of times to process channel per second (floating
          point values are ok.
 
+
+Generic Communication:
+
+    --generic=params
+
+    With this option it is possible to output a pre-configured
+    ASCII string or binary sequence  using a predefined separator.
+    The configuration is defined in an XML file located in the
+    Protocol directory of the base package.
+
+    params can be:
+    serial port communication:    serial,dir,hz,device,baud,protocol
+    socket communication:         socket,dir,hz,machine,port,style,protocol
+    i/o to a file:                file,dir,hz,filename,protocol
+
+    See README.protocol for how to define a generic protocol.
+
+
 Serial Port Communication:
 
     --nmea=serial,dir,hz,device,baud
@@ -26,7 +45,8 @@ Serial Port Communication:
 
     --nmea=serial,out,0.5,COM1,4800
 
-    Note that for unix varient you might use a device name like "/dev/ttyS0"
+    Note that for unix variants you might use a device name like "/dev/ttyS0"
+
 
 Socket Communication:
 
@@ -63,7 +83,15 @@ File I/O:
 
     example to replay your flight
 
-    --native=file,in,10,flight1.fgfs
+    --native=file,in,10,flight1.fgfs --fdm=external
+
+    You can make the replay from a file loop back to the beginning
+    when it reaches the end of the file with the "repeat" flag:
+
+    --generic=file,in,20,flight.out,playback,repeat
+
+    With a numeric argument, FlightGear will exit after that number of repeats.
+    --generic=file,in,20,flight.out,playback,repeat,5
 
 
 Moving Map Example:
@@ -86,5 +114,34 @@ Moving Map Example:
 
     Once both programs are running, the Atlas program should display
     your current location.  Atlas is a really nifty program with many
-    neat optoins such as the ability to generate and use background
+    neat options such as the ability to generate and use background
     bitmaps that show the terrain, cities, lakes, oceans, rivers, etc.
+
+
+HTTP Server Example
+
+    You can now interact with a running copy of FlightGear using your
+    web browser.  You can view all the key internal variables and even
+    change the ones that are writable.  If you have support in your
+    favorite [scripting] language for interacting with an http server,
+    you should be able to use this as a mechanism to interface your
+    script with FlightGear.
+
+    Start up fgfs with the --httpd=<port#> option:
+
+    For example:
+
+        fgfs --httpd=5500
+
+    Now point your web browser to:
+
+        http://host.domain.name:5500/
+
+    When a value is displayed, you can click on it to bring up a form
+    to assign it a new value.
+
+
+ACMS flight data recorder playback
+
+  fgfs --fdm=acms --generic=file,in,1,<path_to_replay_file>,acms
+