Index: /trunk/src/atmsdriver/ConsoleDriver.java
===================================================================
--- /trunk/src/atmsdriver/ConsoleDriver.java	(revision 119)
+++ /trunk/src/atmsdriver/ConsoleDriver.java	(revision 121)
@@ -275,5 +275,5 @@
             System.out.println("");
             System.out.println("Enter a direction:");
-            directionInput = sc.next();
+            directionInput = sc.next().toUpperCase();
             System.out.println("");
             
Index: /trunk/src/tmcsim/client/ATMSBatchDriver.java
===================================================================
--- /trunk/src/tmcsim/client/ATMSBatchDriver.java	(revision 120)
+++ /trunk/src/tmcsim/client/ATMSBatchDriver.java	(revision 121)
@@ -1,5 +1,7 @@
 package tmcsim.client;
 
+import atmsdriver.ATMSDriver;
 import atmsdriver.ConsoleDriver;
+import atmsdriver.ExchangeInfo;
 import atmsdriver.model.Highways;
 import atmsdriver.model.Station;
@@ -48,4 +50,5 @@
     private static final String CONFIG_FILE_NAME = "cad_client_config.properties";
     private final static int ONE_SECOND = 1000;
+    private static final int FEPSIM_INTERVAL = 30000;
     private final static SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
     /**
@@ -98,4 +101,9 @@
      */
     private CADClientInterface client = this;
+
+    /**
+     * Highways in traffic network
+     */
+    final private Highways highways;
     
     /** 
@@ -121,9 +129,10 @@
             System.exit(0);
         }
-        Highways highways = new Highways(
+        highways = new Highways(
         "config/vds_data/lds.txt",
         "config/vds_data/loop.txt",
         "config/vds_data/highwaysMeta.txt",
         "localhost", 8080);
+        // Create console driver but don't start run() method
         console = new ConsoleDriver(highways);
         
@@ -133,8 +142,8 @@
         // READ THE BATCH FILE OF COMMANDS and put in a queue
         readBatchFile();
-        
         // Create a timer that fetches the simulation time every second.
         Timer timer = new Timer(ONE_SECOND, new ActionListener()
         {
+            // Every second, see if an event should be launched
             public void actionPerformed(ActionEvent e)
             {
@@ -205,4 +214,7 @@
         timer.start();
 
+        // Start the FEP thread (to update ATMS every 30 sec)
+        new WriteToFEPThread().run();
+
         ensureProperShutdown();
     }
@@ -222,4 +234,5 @@
             Logger.getLogger(ATMSBatchDriver.class.getName()).log(Level.SEVERE, null, ex);
         }
+        System.out.println("Events file read, " + eventQueue.size() + " events queued.");
     }
     
@@ -358,3 +371,29 @@
 
     }
+
+    class WriteToFEPThread extends Thread
+    {
+
+        public void run()
+        {
+            System.out.println("WriteToFEP Thread starting.");
+            // Run indefinitely
+            while (true)
+            {
+                // Write the highway network status to the FEP Simulator
+                highways.writeToFEP();
+
+                // Wait for FEP Sim to process the data we just sent
+                try
+                {
+                    Thread.sleep(FEPSIM_INTERVAL);
+                }
+                catch (InterruptedException ie)
+                {
+                    ie.printStackTrace();
+                }
+            }
+
+        }
+    }
 }
