diff --git a/server/cros/chaos_ap_configurators/ap_configurator.py b/server/cros/chaos_ap_configurators/ap_configurator.py
index 30e1ac9..b6a1505 100644
--- a/server/cros/chaos_ap_configurators/ap_configurator.py
+++ b/server/cros/chaos_ap_configurators/ap_configurator.py
@@ -37,10 +37,11 @@
         self.current_band = self.band_2ghz
 
         # Possible modes
-        self.mode_a = 0x0001
-        self.mode_b = 0x0010
-        self.mode_g = 0x0100
-        self.mode_n = 0x1000
+        self.mode_a = 0x00001
+        self.mode_b = 0x00010
+        self.mode_g = 0x00100
+        self.mode_n = 0x01000
+        self.mode_auto = 0x10000
 
         # Possible security types
         self.security_type_disabled = 0
diff --git a/server/cros/chaos_ap_configurators/asus_ap_configurator.py b/server/cros/chaos_ap_configurators/asus_ap_configurator.py
index 4a91db8..965a37a 100644
--- a/server/cros/chaos_ap_configurators/asus_ap_configurator.py
+++ b/server/cros/chaos_ap_configurators/asus_ap_configurator.py
@@ -72,9 +72,9 @@
 
 
     def is_security_mode_supported(self, security_mode):
-        return security_mode in (self.security_disabled,
-                                 self.security_wpapsk,
-                                 self.security_wep)
+        return security_mode in (self.security_type_disabled,
+                                 self.security_type_wpapsk,
+                                 self.security_type_wep)
 
 
     def navigate_to_page(self, page_number):
diff --git a/server/cros/chaos_ap_configurators/asus_qis_ap_configurator.py b/server/cros/chaos_ap_configurators/asus_qis_ap_configurator.py
index 0a1d06c..ab7a733 100644
--- a/server/cros/chaos_ap_configurators/asus_qis_ap_configurator.py
+++ b/server/cros/chaos_ap_configurators/asus_qis_ap_configurator.py
@@ -10,9 +10,6 @@
 
     def __init__(self, router_dict):
         super(AsusQISAPConfigurator, self).__init__(router_dict)
-        self.mode_n = 'N Only'
-        self.mode_legacy = 'Legacy'
-        self.mode_auto = 'auto'
 
 
     def _set_authentication(self, authentication, wait_for_xpath=None):
@@ -58,9 +55,9 @@
 
     def get_supported_modes(self):
         return [{'band': self.band_2ghz,
-                 'modes': [self.mode_legacy, self.mode_n, self.mode_auto]},
+                 'modes': [self.mode_n, self.mode_auto]},
                 {'band': self.band_5ghz,
-                 'modes': [self.mode_legacy, self.mode_n, self.mode_auto]}]
+                 'modes': [self.mode_n, self.mode_auto]}]
 
 
     def _set_mode(self, mode, band=None):
diff --git a/server/cros/chaos_ap_configurators/belkin_ap_configurator.py b/server/cros/chaos_ap_configurators/belkin_ap_configurator.py
index bad2efa..6882b9f 100644
--- a/server/cros/chaos_ap_configurators/belkin_ap_configurator.py
+++ b/server/cros/chaos_ap_configurators/belkin_ap_configurator.py
@@ -66,9 +66,9 @@
 
 
     def is_security_mode_supported(self, security_mode):
-        return security_mode in (self.security_disabled,
-                                 self.security_wpapsk,
-                                 self.security_wep)
+        return security_mode in (self.security_type_disabled,
+                                 self.security_type_wpapsk,
+                                 self.security_type_wep)
 
 
     def navigate_to_page(self, page_number):
diff --git a/server/cros/chaos_ap_configurators/buffalo_ap_configurator.py b/server/cros/chaos_ap_configurators/buffalo_ap_configurator.py
index b776fc6..7166054 100644
--- a/server/cros/chaos_ap_configurators/buffalo_ap_configurator.py
+++ b/server/cros/chaos_ap_configurators/buffalo_ap_configurator.py
@@ -37,9 +37,9 @@
 
 
     def is_security_mode_supported(self, security_mode):
-        return security_mode in (self.security_disabled,
-                                 self.security_wpapsk,
-                                 self.security_wep)
+        return security_mode in (self.security_type_disabled,
+                                 self.security_type_wpapsk,
+                                 self.security_type_wep)
 
 
     def navigate_to_page(self, page_number):
