Esim on Xperia 10 iii (and other SFOS devices)

Recent versions of lpac have dynamically linked drivers, which seems to cause problems with Sailfish. You have to compile the version from @tvall eSIM and Sailfish OS - #36 by tvall .

As for the version from the official repository, this is the last functional tree in Sailfish, before they introduced dynamic drivers GitHub - estkme-group/lpac at e9e28c4f731b4e5046332d6fc22ef1a219463e4b

I have compiled it with all the drivers supported by Sailfish

cmake -B build -DLPAC_WITH_APDU_GBINDER=ON -DLPAC_WITH_APDU_PCSC=ON -DLPAC_WITH_APDU_AT=ON -DLPAC_WITH_HTTP_CURL=ON -L
cmake --build build
( for -DLPAC_WITH_APDU_QMI=ON and -DLPAC_WITH_APDU_QMI_QRTR=ON requires qmi-glib, for -DLPAC_WITH_APDU_MBIM=ON requires mbim-glib, which are not available in Sailfish), and it seems to work.

[defaultuser@Xperia10V lpac]$ LPAC_APDU_DEBUG=true build/output/lpac version | jq .
{
  "type": "lpa",
  "payload": {
    "code": 0,
    "message": "success",
    "data": "2.3.0.r388.e9e28c4f731b"
  }
}
[defaultuser@Xperia10V lpac]$ LPAC_APDU_DEBUG=true build/output/lpac driver list | jq .
{
  "type": "driver",
  "payload": {
    "LPAC_APDU": [
      "gbinder_hidl",
      "pcsc",
      "at",
      "stdio"
    ],
    "LPAC_HTTP": [
      "curl",
      "stdio"
    ]
  }
}

So far, I have tested that it detects a USB card reader. When I receive the 9eSIM I have ordered, I will test to see if it works to insert profiles with both the external reader and the mobile SIM reader. Esim on Xperia 10 iii (and other SFOS devices) - #23 by Juanro49

[defaultuser@Xperia10V lpac]$ LPAC_APDU_DEBUG=true LPAC_APDU=pcsc build/output/lpac driver apdu list | jq .
{
  "type": "driver",
  "payload": {
    "env": "LPAC_APDU_PCSC_DRV_IFID",
    "data": [
      {
        "env": "0",
        "name": "Alcor Micro AU9540 00 00"
      }
    ]
  }
}

On the downside, it does not seem to detect the eSIM chip on my Xperia 10 V so that I can’t configure it, although this may be due to Sony’s faulty blobs, or because it may be necessary to use the QMI APDU backend (which is not available for Sailfish at the moment, but seems to work on PostmarketOS An eSIM manager for Mobile Linux - Luca Weiss ) instead of GBinder APDU Backend .

[defaultuser@Xperia10V lpac]$ LPAC_APDU_DEBUG=true LPAC_APDU=gbinder_hidl build/output/lpac chip info | jq .
Attempting to connect to android.hardware.radio@1.0::IRadio/slot1
Failed to open APDU logical channel: 17
Attempting to connect to android.hardware.radio@1.0::IRadio/slot2
Failed to open APDU logical channel: 38
{
  "type": "lpa",
  "payload": {
    "code": -1,
    "message": "euicc_init",
    "data": ""
  }
}

2 Likes