diff --git a/robot/resources/browser_setup.robot b/robot/resources/browser_setup.robot
index 6ef4f72..5d34d3d 100644
--- a/robot/resources/browser_setup.robot
+++ b/robot/resources/browser_setup.robot
@@ -7,6 +7,7 @@
 Resource          global_properties.robot
 
 *** Variables ***
+${HEADLESS}   True
 
 *** Keywords ***
 Setup Browser
@@ -14,28 +15,33 @@
     Run Keyword If    '${GLOBAL_SELENIUM_BROWSER}' == 'firefox'    Setup Browser Firefox
     Run Keyword If    '${GLOBAL_SELENIUM_BROWSER}' == 'chrome'    Setup Browser Chrome
     Log    Running with ${GLOBAL_SELENIUM_BROWSER}
-    
+
+
 Setup Browser Firefox
-    ${dc}   Evaluate    sys.modules['selenium.webdriver'].DesiredCapabilities.FIREFOX  sys, selenium.webdriver
-    Set To Dictionary   ${dc}   elementScrollBehavior    1 
-    Create Webdriver    Firefox    desired_capabilities=${dc}
-    Set Global Variable    ${GLOBAL_SELENIUM_BROWSER_CAPABILITIES}    ${dc}
-           
+    ${caps}=   Evaluate   sys.modules['selenium.webdriver'].common.desired_capabilities.DesiredCapabilities.FIREFOX   sys
+    Set To Dictionary   ${caps}   marionette=
+    Set To Dictionary   ${caps}   elementScrollBehavior    1
+    # TODO
+    # Figure out how to run FF headless without Xvfb
+    ${wd}=   Create WebDriver   Firefox   capabilities=${caps}
+    Set Global Variable    ${GLOBAL_SELENIUM_BROWSER_CAPABILITIES}    ${caps}
+
  Setup Browser Chrome
-    ${os}=   Get Normalized Os 
+    ${os}=   Get Normalized Os
     Log    Normalized OS=${os}
     ${chrome options}=    Evaluate    sys.modules['selenium.webdriver'].ChromeOptions()    sys
     Call Method    ${chrome options}    add_argument    no-sandbox
+    Run Keyword If  ${HEADLESS}==True  Call Method    ${chrome options}    add_argument    headless
     ${dc}   Evaluate    sys.modules['selenium.webdriver'].DesiredCapabilities.CHROME  sys, selenium.webdriver
     Set To Dictionary   ${dc}   elementScrollBehavior    1
-    Create Webdriver    Chrome   chrome_options=${chrome_options}    desired_capabilities=${dc}  
-    Set Global Variable    ${GLOBAL_SELENIUM_BROWSER_CAPABILITIES}    ${dc}       
+    Create Webdriver    Chrome   chrome_options=${chrome_options}    desired_capabilities=${dc}
+    Set Global Variable    ${GLOBAL_SELENIUM_BROWSER_CAPABILITIES}    ${dc}
 
-Handle Proxy Warning    
+Handle Proxy Warning
     [Documentation]    Handle Intermediate Warnings from Proxies
-    ${status}    ${data}=    Run Keyword And Ignore Error   Variable Should Exist    \${GLOBAL_PROXY_WARNING_TITLE}           
+    ${status}    ${data}=    Run Keyword And Ignore Error   Variable Should Exist    \${GLOBAL_PROXY_WARNING_TITLE}
     Return From Keyword if    '${status}' != 'PASS'
-    ${status}    ${data}=    Run Keyword And Ignore Error   Variable Should Exist    \${GLOBAL_PROXY_WARNING_CONTINUE_XPATH}          
+    ${status}    ${data}=    Run Keyword And Ignore Error   Variable Should Exist    \${GLOBAL_PROXY_WARNING_CONTINUE_XPATH}
     Return From Keyword if    '${status}' != 'PASS'
     Return From Keyword if    "${GLOBAL_PROXY_WARNING_TITLE}" == ''
     Return From Keyword if    "${GLOBAL_PROXY_WARNING_CONTINUE_XPATH}" == ''
diff --git a/setup.sh b/setup.sh
index d89fd02..16a3e16 100644
--- a/setup.sh
+++ b/setup.sh
@@ -73,7 +73,7 @@
 #
 # Get the appropriate chromedriver. Default to linux64
 #
-CHROMEDRIVER_URL=http://chromedriver.storage.googleapis.com/2.27
+CHROMEDRIVER_URL=http://chromedriver.storage.googleapis.com/2.29
 CHROMEDRIVER_ZIP=chromedriver_linux64.zip
 
 # Handle mac and windows
