Real iOS device shows up as <unrecognized device> . the execution fails because of a desired capabilities being blank

Trying to test on a real device iPad 5th Generation running iOS 12.4.1 but when I want to record on it, the running fails and appium cannot find the deviceName. The device is detected fine on xcode and the terminal. I can also run a test case that opens the browser but not an app.Annotation%202019-09-12%20173407

Running:
Xcode 10.3
Appium 1.14.2
Katalon 6.3.3

The log is as follows:
e[35m[Appium]e[39m Welcome to Appium v1.14.2
e[35m[Appium]e[39m Non-default server args:
e[35m[Appium]e[39m port: 50356
e[35m[Appium]e[39m loglevel: info
e[35m[Appium]e[39m chromeDriverPort: 50357
e[35m[Appium]e[39m tmpDir: /var/folders/n4/kf6lq2f93vnd1zvxghb2xc6w0000gn/T//Katalon/Appium/Temp1568278759666
e[35m[Appium]e[39m Appium REST http interface listener started on 0.0.0.0:50356
e[35m[HTTP]e[39m e[37m–>e[39m e[37mGETe[39m e[37m/wd/hub/statuse[39m
e[35m[HTTP]e[39m e[90m{}e[39m
e[35m[HTTP]e[39m e[37m<-- GET /wd/hub/status e[39me[32m200e[39m e[90m16 ms - 68e[39m
e[35m[HTTP]e[39m e[90me[39m
e[35m[HTTP]e[39m e[37m–>e[39m e[37mGETe[39m e[37m/wd/hub/statuse[39m
e[35m[HTTP]e[39m e[90m{}e[39m
e[35m[HTTP]e[39m e[37m<-- GET /wd/hub/status e[39me[32m200e[39m e[90m3 ms - 68e[39m
e[35m[HTTP]e[39m e[90me[39m
e[35m[HTTP]e[39m e[37m–>e[39m e[37mPOSTe[39m e[37m/wd/hub/sessione[39m
e[35m[HTTP]e[39m e[90m{“desiredCapabilities”:{“newCommandTimeout”:1800,“realDeviceLogger”:"/Users/andrewmark/Documents/Katalon Studio.app/Contents/Eclipse/configuration/resources/tools/deviceconsole",“platformVersion”:“12.2”,“automationName”:“XCUITest”,“bundleId”:“com.xxx.xxx”,“waitForAppScript”:“true;”,“platformName”:“iOS”,“udid”:"",“deviceId”:"",“deviceName”:"",“wdaLocalPort”:50370},“capabilities”:{“firstMatch”:[{“appium:automationName”:“XCUITest”,“appium:bundleId”:“com.umaiglobal.partner”,“deviceId”:"",“appium:deviceName”:"",“appium:newCommandTimeout”:1800,“platformName”:“ios”,“appium:platformVersion”:“12.2”,“realDeviceLogger”:"/Users/andrewmark/Documents/Katalon Studio.app/Contents/Eclipse/configuration/resources/tools/deviceconsole",“appium:udid”:"",“appium:waitForAppScript”:“true;”,“appium:wdaLocalPort”:50370}]}}e[39m
e[35m[BaseDriver]e[39m The capabilities [“deviceId”,“realDeviceLogger”] are not standard capabilities and should have an extension prefix
e[35m[Appium]e[39m Could not parse W3C capabilities: ‘deviceName’ can’t be blank
e[35m[Appium]e[39m Trying to fix W3C capabilities by merging them with JSONWP caps
e[35m[BaseDriver]e[39m The capabilities [“deviceId”,“realDeviceLogger”,“automationName”,“bundleId”,“deviceName”,“newCommandTimeout”,“platformVersion”,“udid”,“waitForAppScript”,“wdaLocalPort”] are not standard capabilities and should have an extension prefix
e[35m[Appium]e[39m Could not parse fixed W3C capabilities: ‘deviceName’ can’t be blank. Falling back to JSONWP protocol
e[35m[Appium]e[39m Appium v1.14.2 creating new XCUITestDriver (v2.116.3) session
e[35m[Appium]e[39m Capabilities:
e[35m[Appium]e[39m newCommandTimeout: 1800
e[35m[Appium]e[39m realDeviceLogger: /Users/andrewmark/Documents/Katalon Studio.app/Contents/Eclipse/configuration/resources/tools/deviceconsole
e[35m[Appium]e[39m platformVersion: 12.2
e[35m[Appium]e[39m automationName: XCUITest
e[35m[Appium]e[39m bundleId: com.xxxx.xxx
e[35m[Appium]e[39m waitForAppScript: true;
e[35m[Appium]e[39m platformName: iOS
e[35m[Appium]e[39m udid:
e[35m[Appium]e[39m deviceId:
e[35m[Appium]e[39m deviceName:
e[35m[Appium]e[39m wdaLocalPort: 50370
e[35m[HTTP]e[39m e[37m<-- POST /wd/hub/session e[39me[31m500e[39m e[90m432 ms - 199e[39m
e[35m[HTTP]e[39m e[90me[39m

1 Like

The same problem here. Could someone help us?

Thank you!

Hey Bernardo.
You have to uninstall libimobiledevice and usbmxd and install them again.

This worked for me
brew update
brew uninstall --ignore-dependencies libimobiledevice
brew uninstall --ignore-dependencies usbmuxd
brew install --HEAD usbmuxd
brew unlink usbmuxd
brew link usbmuxd
brew install --HEAD libimobiledevice

2 Likes

Thank you so much @andrew.o! Now i can see my device, however i have another problem when i do a mobile spy:

ava.util.concurrent.ExecutionException: org.openqa.selenium.SessionNotCreatedException: Unable to create a new remote session. Please check the server log for more details. Original error: An unknown server-side error occurred while processing the command. Original error: Unable to launch WebDriverAgent because of xcodebuild failure: EACCES: permission denied, mkdir ‘/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/Resources’. Make sure you follow the tutorial at https://github.com/appium/appium-xcuitest-driver/blob/master/docs/real-device-config.md. Try to remove the WebDriverAgentRunner application from the device if it is installed and reboot the device.