diff --git a/craftui/craftui.py b/craftui/craftui.py
index 9699186..d25b40b 100755
--- a/craftui/craftui.py
+++ b/craftui/craftui.py
@@ -252,12 +252,15 @@
       'peer_ipaddr': PtpConfig(VSlash, 'peer_ipaddr'),
 
       'vlan_inband': PtpConfig(VVlan, 'vlan_inband'),
+      'vlan_ooband': PtpConfig(VVlan, 'vlan_ooband'),
       'vlan_peer': PtpConfig(VVlan, 'vlan_peer'),
 
       'craft_ipaddr_activate': PtpActivate(VTrueFalse, 'craft_ipaddr'),
       'link_ipaddr_activate': PtpActivate(VTrueFalse, 'local_ipaddr'),
       'peer_ipaddr_activate': PtpActivate(VTrueFalse, 'peer_ipaddr'),
+
       'vlan_inband_activate': PtpActivate(VTrueFalse, 'vlan_inband'),
+      'vlan_ooband_activate': PtpActivate(VTrueFalse, 'vlan_ooband'),
       'vlan_peer_activate': PtpActivate(VTrueFalse, 'vlan_peer'),
 
       'freq_hi': Glaukus(VFreqHi, '/api/radio/frequency', '{"hiFrequency":%s}'),
@@ -276,14 +279,14 @@
   ifmap = {
       'craft0': 'craft',
       'br0': 'bridge',
-      'eth1.outofband': 'outofband',
-      'eth1.inband': 'inband',
-      'eth1.peer': 'link',
+      'sw0.ooband': 'ooband',
+      'sw0.inband': 'inband',
+      'sw0.peer': 'link',
   }
   ifvlan = [
-      'eth1.outofband',
-      'eth1.inband',
-      'eth1.peer'
+      'sw0.ooband',
+      'sw0.inband',
+      'sw0.peer'
   ]
   stats = [
       'multicast',
@@ -427,7 +430,7 @@
     data['link_ipaddr'] = self.ReadFile(sim + cs + 'local_ipaddr')
     data['peer_ipaddr'] = self.ReadFile(sim + cs + 'peer_ipaddr')
     data['vlan_inband'] = self.ReadFile(sim + cs + 'vlan_inband')
-    data['vlan_outofband'] = self.ReadFile(sim + cs + 'vlan_outofband')
+    data['vlan_ooband'] = self.ReadFile(sim + cs + 'vlan_ooband')
     data['vlan_link'] = self.ReadFile(sim + cs + 'vlan_peer')
     self.AddIpAddr(data)
     self.AddInterfaceStats(data)
diff --git a/craftui/sim.tgz b/craftui/sim.tgz
index c0293f9..136253f 100644
--- a/craftui/sim.tgz
+++ b/craftui/sim.tgz
Binary files differ
diff --git a/craftui/www/config.thtml b/craftui/www/config.thtml
index 16393a1..8bd86ea 100644
--- a/craftui/www/config.thtml
+++ b/craftui/www/config.thtml
@@ -86,15 +86,15 @@
 
 	  <tr>
 	    <td><b>Out-of-band Management VLAN
-	    <td align=right><span id="platform/active_outofband_vlan">...</span>
+	    <td align=right><span id="platform/active_ooband_vlan">...</span>
 	    <td align=right>
-	      <span id="platform/vlan_outofband">...</span>
-	      <input type=submit value="Apply Now" onclick="CraftUI.config('vlan_outofband', 1)">
+	      <span id="platform/vlan_ooband">...</span>
+	      <input type=submit value="Apply Now" onclick="CraftUI.config('vlan_ooband', 1)">
 	    <td>
-	      <input id=vlan_outofband type=text value="">
-	      <input type=submit value=Configure onclick="CraftUI.config('vlan_outofband')">
+	      <input id=vlan_ooband type=text value="">
+	      <input type=submit value=Configure onclick="CraftUI.config('vlan_ooband')">
 	    <td>
-	      <span id=vlan_outofband_result>...</span>
+	      <span id=vlan_ooband_result>...</span>
 
 	  <tr>
 	    <td><b>Link VLAN (to peer)
diff --git a/craftui/www/index.thtml b/craftui/www/index.thtml
index e53ddd7..20bba69 100644
--- a/craftui/www/index.thtml
+++ b/craftui/www/index.thtml
@@ -61,10 +61,10 @@
 	    <td align=right><span id="platform/active_bridge_inet6">...</span></td></tr>
 	  <tr>
             <td><b>Out-of-Band (PoE)</b></td>
-	    <td align=right><span id="platform/outofband_mac">...</span></td>
-	    <td align=right><span id="platform/active_outofband_vlan">...</span></td>
-	    <td align=right><span id="platform/active_outofband_inet">...</span></td>
-	    <td align=right><span id="platform/active_outofband_inet6">...</span></td></tr>
+	    <td align=right><span id="platform/ooband_mac">...</span></td>
+	    <td align=right><span id="platform/active_ooband_vlan">...</span></td>
+	    <td align=right><span id="platform/active_ooband_inet">...</span></td>
+	    <td align=right><span id="platform/active_ooband_inet6">...</span></td></tr>
 	  <tr>
             <td><b>Link (to peer)</b></td>
 	    <td align=right><span id="platform/link_mac">...</span></td>
@@ -177,27 +177,27 @@
 
 	  <tr>
             <td><b>Out-of-Band (PoE)<b></td>
-            <td align=right><span id="platform/outofband_rx_bytes">...</span></td>
-            <td align=right><span id="platform/outofband_rx_packets">...</span></td>
-            <td align=right><span id="platform/outofband_multicast">...</span></td>
-            <td align=right><span id="platform/outofband_broadcast">...</span></td>
-            <td align=right><span id="platform/outofband_unicast">...</span></td>
+            <td align=right><span id="platform/ooband_rx_bytes">...</span></td>
+            <td align=right><span id="platform/ooband_rx_packets">...</span></td>
+            <td align=right><span id="platform/ooband_multicast">...</span></td>
+            <td align=right><span id="platform/ooband_broadcast">...</span></td>
+            <td align=right><span id="platform/ooband_unicast">...</span></td>
 
-            <td align=right><span id="platform/outofband_tx_bytes">...</span></td>
-            <td align=right><span id="platform/outofband_tx_packets">...</span></td>
+            <td align=right><span id="platform/ooband_tx_bytes">...</span></td>
+            <td align=right><span id="platform/ooband_tx_packets">...</span></td>
             <td align=right>-</td>
             <td align=right>-</td>
             <td align=right>-</td>
 
-            <td align=right><span id="platform/outofband_rx_errors">...</span></td>
-            <td align=right><span id="platform/outofband_rx_dropped">...</span></td>
+            <td align=right><span id="platform/ooband_rx_errors">...</span></td>
+            <td align=right><span id="platform/ooband_rx_dropped">...</span></td>
             <td align=right>-</td>
             <td align=right>-</td>
-            <td align=right><span id="platform/outofband_tx_errors">...</span></td>
-            <td align=right><span id="platform/outofband_tx_dropped">...</span></td>
+            <td align=right><span id="platform/ooband_tx_errors">...</span></td>
+            <td align=right><span id="platform/ooband_tx_dropped">...</span></td>
             <td align=right>-</td>
             <td align=right>-</td>
-            <td align=right><span id="platform/outofband_collisions">...</span></td>
+            <td align=right><span id="platform/ooband_collisions">...</span></td>
 
 	  <tr>
             <td><b>Link (to peer)<b></td>
diff --git a/craftui/www/static/craft.js b/craftui/www/static/craft.js
index 04e0f2c..81501aa 100644
--- a/craftui/www/static/craft.js
+++ b/craftui/www/static/craft.js
@@ -81,11 +81,13 @@
   var el = document.getElementById(key);
   var value = el.value;
   var xhr = new XMLHttpRequest();
+  var action = "Configured";
   xhr.open('post', 'content.json');
   xhr.setRequestHeader('Content-Type', 'application/json; charset=UTF-8');
   var data;
   if (activate) {
     data = { config: [ { [key + "_activate"]: "true" } ] };
+    action = "Applied";
   } else {
     data = { config: [ { [key]: value } ] };
   }
@@ -95,7 +97,7 @@
   xhr.onload = function(e) {
     var json = JSON.parse(xhr.responseText);
     if (json.error == 0) {
-      el.innerHTML = "Success!";
+      el.innerHTML = action + " successfully.";
     } else {
       el.innerHTML = "Error: " + json.errorstring;
     }
@@ -104,6 +106,7 @@
   xhr.onerror = function(e) {
     el.innerHTML = xhr.statusText + xhr.responseText;
   }
+  el.innerHTML = "sending...";
   xhr.send(txt);
 };
 
