diff --git a/src/examples/test_ftdi.cpp b/src/examples/test_ftdi.cpp
index c3e26de0d9eb0cc1ed9e247a9e692b3b99feed6f..e8a46cffeeba10d239bdf4df94e43e5185c008af 100644
--- a/src/examples/test_ftdi.cpp
+++ b/src/examples/test_ftdi.cpp
@@ -61,29 +61,32 @@ int main(int argc, char *argv[])
   ftdi_config.latency_timer = 16;
 
   try{
-  std::cout << (*ftdi_server) << std::endl;
-  if(ftdi_server->get_num_devices()>0)
-  {
-    while(ftdi_device==NULL && count>0)
+    std::cout << (*ftdi_server) << std::endl;
+    if(ftdi_server->get_num_devices()>0)
     {
-      try{
-        ftdi_device=ftdi_server->get_device(ftdi_server->get_serial_number(atoi(argv[1])));
-      }catch(CException &e){
-        std::cout << e.what() << std::endl;
-        count--;
+      while(ftdi_device==NULL && count>0)
+      {
+        try{
+          if(argc>=2)
+            ftdi_device=ftdi_server->get_device(ftdi_server->get_serial_number(atoi(argv[1])));
+          else
+            ftdi_device=ftdi_server->get_device(ftdi_server->get_serial_number(0));
+        }catch(CException &e){
+          std::cout << e.what() << std::endl;
+          count--;
+        }
+      }
+      if(count==0)
+        std::cout << "Device not available" << std::endl;
+      else
+      {
+        ftdi_device->config(&ftdi_config);
+        std::cout << (*ftdi_device) << std::endl;
+        ftdi_device->close();
       }
     }
-    if(count==0)
-      std::cout << "Device not available" << std::endl;
-    else
-    {
-      ftdi_device->config(&ftdi_config);
-      std::cout << (*ftdi_device) << std::endl;
-      ftdi_device->close();
-    }
-  }
-  if(ftdi_device!=NULL)
-    delete ftdi_device;
+    if(ftdi_device!=NULL)
+      delete ftdi_device;
   }catch(CException &e){
     std::cout << e.what() << std::endl;
   }