expo/expo · error

Device not found: ${TARGET_DEVICE}

Error message

Device not found: ${TARGET_DEVICE}

What it means

Error "Device not found: ${TARGET_DEVICE}" thrown in expo/expo.

Source

Thrown at apps/bare-expo/scripts/start-ios-e2e-test.ts:43

import { getDylibPath } from '../e2e/image-comparison/inspector/ScreenInspectorIOS';

const TARGET_DEVICE = 'iPhone 17 Pro';
const TARGET_DEVICE_IOS_VERSION = 26;
const APP_ID = 'dev.expo.Payments';
const OUTPUT_APP_PATH = 'ios/build/BareExpo.app';
const NUM_OF_RETRIES = 6;

const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

(async () => {
  try {
    const startMode = getStartMode(__filename);

    const projectRoot = path.resolve(__dirname, '..');
    const deviceId = await queryDeviceIdAsync(TARGET_DEVICE_IOS_VERSION, TARGET_DEVICE);
    if (!deviceId) {
      throw new Error(`Device not found: ${TARGET_DEVICE}`);
    }

    const appBinaryPath = path.join(projectRoot, OUTPUT_APP_PATH);
    if (startMode === 'BUILD' || startMode === 'BUILD_AND_TEST') {
      const binaryPath = await buildAsync(projectRoot, deviceId);
      await ensureDirAsync(path.dirname(appBinaryPath));
      await fs.cp(binaryPath, appBinaryPath, { recursive: true });
    }
    if (startMode === 'TEST' || startMode === 'BUILD_AND_TEST') {
      const e2eDir = path.join(projectRoot, 'e2e');

      // The simulator, the app and the maestro driver survive across maestro invocations,
      // so set everything up only once instead of paying for it on every flow and retry.
      await startSimulatorAsync(deviceId);
      await preApproveDeepLinkPromptAsync(deviceId);
      await installAppAsync(deviceId, appBinaryPath);
      await launchAppWithInspectorAsync(deviceId);

View on GitHub (pinned to b09195aac2)

When it happens

Trigger: Thrown at apps/bare-expo/scripts/start-ios-e2e-test.ts:43 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of expo/expo@b09195aac2 (2026-08-12). Data as JSON: /api/errors/1522d91b706bbfc6. Report an issue: GitHub.