#637·escrcpy

[Bug] Device saved with serial "undefined" shows as permanent Offline row and cannot be removed via trash icon

Author: joshm-simrilCreated Sep 8, 2026Updated Sep 10, 2026

Describe the bug

A device can get saved in config.json under the literal key "undefined" instead of its serial. Once that happens it shows as a permanent "Offline" row in the Devices tab with an empty Serial column, and the trash icon does nothing — presumably because the remove action looks up the entry by serial and there isn't one.

adb devices -l (using the bundled adb) listed no devices at all, so the row came purely from the saved config.

Relevant part of ~/Library/Application Support/escrcpy/config.json:

json
"device": {
    "undefined": {
        "remark": "Z Fold 5",
        "status": "offline",
        "type": "offline"
    }
}

To reproduce

I can't say exactly what produced it. The device (Samsung Galaxy Z Fold 5) had previously been connected over USB and Wi-Fi and given a remark. At some point it was persisted with an undefined serial. The row then survived app restarts and reinstalls (config is kept across reinstalls).

Expected behaviour

Either of:

  • Don't persist a device entry when the serial is undefined / empty.
  • Let the trash button remove an entry whose key isn't a valid serial (e.g. remove by the row's config key rather than by serial).

Workaround

Quit Escrcpy, delete the "undefined" object from device in config.json, relaunch. The row is gone and the app is otherwise unaffected.

Environment

  • Escrcpy 3.2.0 (Escrcpy-3.2.0-mac-arm64.dmg), also present on 3.0.8
  • macOS 26 (Darwin 25.6), Apple Silicon
  • Device: Samsung Galaxy Z Fold 5