             }
 
             self.log("targetDevice.sendJoinNewWifiNetwork: \(result.description())")
-            if (result == .NONE) {
-                onComplete(nil)
-                self.stepComplete(.EnsureCorrectSelectedWifiNetworkPassword)
-            } else if (result == .NOT_FOUND) {
-                onComplete(.WrongNetworkPassword)
-            } else {
-                onComplete(.BluetoothTimeout)
+            if (self.selectedWifiNetworkInfo!.security == .noSecurity) {
+                if (result == .NONE) {
+                    onComplete(nil)
+                    self.stepComplete(.EnsureCorrectSelectedWifiNetworkPassword)
+                } else {
+                    onComplete(nil)
+                    self.handleBluetoothErrorResult(result)
+                }
+            } else {
+                if (result == .NONE) {
+                    onComplete(nil)
+                    self.stepComplete(.EnsureCorrectSelectedWifiNetworkPassword)
+                } else if (result == .NOT_FOUND) {
+                    onComplete(.WrongNetworkPassword)
+                } else {
+                    onComplete(.BluetoothTimeout)
+                }
             }
         }
     }


    //MARK: EnsureCorrectSelectedWifiNetworkPassword
    private func stepEnsureCorrectSelectedWifiNetworkPassword() {
        self.delegate.meshSetupDidRequestToEnterSelectedWifiNetworkPassword()
    }


            return
        }

        guard self.validateWifiNetworkPassword(password) || (self.selectedWifiNetworkInfo!.security == .noSecurity) else {
            onComplete(.WifiPasswordTooShort)
            return
        }
