diff --git a/src/Joystick/joystick.cxx b/src/Joystick/joystick.cxx
index ac38aaea2..1f766e363 100644
--- a/src/Joystick/joystick.cxx
+++ b/src/Joystick/joystick.cxx
@@ -31,6 +31,7 @@
 
 #include <Aircraft/aircraft.hxx>
 #include <Debug/logstream.hxx>
+#include <Main/options.hxx>
 
 #if defined( ENABLE_PLIB_JOYSTICK )
 #  include <js.h>		// plib include
@@ -161,6 +162,21 @@ int fgJoystickInit( void ) {
 	return 0;
     }
 
+    // I hate doing this sort of thing, but it's overridable from the
+    // command line/config file.  If the user hasn't specified an
+    // autocoordination preference, and if they have a single 2 axis
+    // joystick, then automatical enable auto_coordination.
+
+    if ( (current_options.get_auto_coordination() == 
+	  fgOPTIONS::FG_AUTO_COORD_NOT_SPECIFIED) &&
+	 (!js0->notWorking() && js1->notWorking() && (js0->getNumAxes() < 3)
+	  )
+	 )
+    {
+	current_options.set_auto_coordination(fgOPTIONS::FG_AUTO_COORD_ENABLED);
+    }
+
+
 #elif defined( ENABLE_GLUT_JOYSTICK )
 
     glutJoystickFunc(joystick, 100);