Setting up my first eSIM via adapter on Linux

Most modern phones already support eSIM by their hardware. Older phones sometimes do not, and I wanted to use a Samsung S10e as my travel phone.

It does not support eSIM, but there are adapter cards available, which are physical SIM cards you can install an eSIM profile on.
Even multiple ones, if you like. But only one profile can be active at the same time.

EIOTCLUB eSIM

In the manual is a link to a website with their software:

https://www.eiotclub.com/pages/eiotclub-esim-reader-guide

EIOTCLUB eSIM Reader software

I bought this without even knowing whether the software runs on Linux. After the download I found a hint to LPAC and it mentioned Linux in a file.

So after looking it up I landed here: https://github.com/estkme-group/lpac

LPAC means either Lesbian Super PAC or C-based eUICC LPA.

C-based eUICC LPA Aha!

Glossary:

So lpac is an open-source CLI LPA tool list and download profiles. Exactly what I was looking for.

After some more searching, I also found an open-source GUI tool: EasyLPAC

easyLPAC

It looks frighteningly similar to the tool provided by EIOTCLUB, doesn't it?

1. Inserting the eSIM adapter card into the USB adapter

EIOTCLUB eSIM opened

2. Using the CLI via lpac

Reference: https://github.com/estkme-group/lpac/blob/main/docs/USAGE.md

2.1. View information

lpac chip info | jq
lpac profile list | jq

2.2. Install a new profile

https://wiki.soprani.ca/eSIM Adapter/lpac

You need a QR-Code, which will give you a string in the format LPA:1$example.tld$XX-YYYYYY-ZZZZZZZ.

lpac profile download -s example.tld -m "XX-YYYYYY-ZZZZZZZ"
lpac profile enable [ICCID]
lpac profile nickname [ICCID] "My new eSIM"

If you get an error involving * SCardEstablishContext() * APDU driver init failed

Try installing a possible missing dependency ccid. Also enable the systemd pcscd.socket with a command like systemctl enable --now pcscd.socket

3. Using the GUI via EasyLPAC

paru -S easylpac

This takes some time to build, be patient.

The GUI is very self-explanatory. There is a Download button and you can choose to enter the code string manually, upload an image file with a QR code or scan it from your camera.

Just make sure to select your eSIM adapter beforehand and then press the refresh button.

Please note: eSIM profiles can only be downloaded once. If you remove it afterwards from the device, it is gone. If the download fails for some reason, you cannot retry it. Make sure you have a good internet connection before trying it.

If you wish to transfer it to another device, it is sometimes possible, sometimes not, depending on your provider.

4. Technical details about eSIM

Harald Welte did a deep technical talk about eSIM, which I enjoyed even though I only understood 1% of it:

https://www.youtube.com/watch?v=vms_beSPhfY