Open AndySchroder opened 2 months ago
The eSIM data will write to the eUICC chip directly. There is no way to write it to the local filesystem first.
I heard you are using 5ber eSIM. Unfortunately, 5ber eSIM has some bugs that may cause the download to fail. If you want to use the 5ber eSIM card, you may need to upgrade the firmware first.
We're working on the cancelSession function. It may resolve this problem.
What would cancelSession do?
I just tried again with another eSIM provider and was able to get it to work successfully. https://github.com/estkme-group/lpac/issues/100#issuecomment-2131970902 suggests there is a huge range in sizes for an eSIM though, so I don't yet know that this issue described above is due to card capacity or not. The one that didn't work was 3x the cost of the ones that did work though, but I don't know that cost of the plan should necessarily have any relationship to the data size of the eSIM.
In https://github.com/estkme-group/lpac/issues/100 you suggest there is no definite way to know the profile size in advance. Seems like after downloading and you finally know the size, you should check the available memory on the chip before attempting to write. If you know there isn't enough space, give a warning message and write the profile to a file on the local filesystem to allow the user a chance to put it on a different SIM or delete old profiles first.
There is no way to write it to the local filesystem first.
I don't understand why you can't save to some kind of file.
I heard you are using 5ber eSIM. Unfortunately, 5ber eSIM has some bugs that may cause the download to fail. If you want to use the 5ber eSIM card, you may need to upgrade the firmware first.
I am getting some other eSIM to try from a different manufacturer and will see if it behaves differently with this problem service provider. Will report back on that in a few weeks.
If you want to know more about the technology details, you can read this document:
GSMA eSIM SGP.22 eSIM whitepaper IIJ Technical Seminar DAY2018 ~ eSIM とは何か
It is very useful for understanding how eUICC works and how lpac
works.
@AndySchroder Which esim profile did you try to load unto your 5ber card?
you mean which supplier?
Yes, the supplier.
So, cancelSession can work even if the profile never made it to the eSIM card?
Using
profile download
, I had it error out after provisioning on the server, but it didn't write to the eSIM card yet. I'm not sure if the card is full or what (https://github.com/estkme-group/lpac/issues/100). It seems to me like the eSIM data should be temporarily written to the local filesystem after downloading and then delete after successfully writing to the eSIM. That way we can re-try to write to the eSIM card if there was a failure instead of having to contact the provider and ask for another try. Right now it only seems to be stored in RAM.Here's the output I got:
If I try again, I get
I'm using https://github.com/stich86/lpac-libmbim-wrapper , but I don't think that has to do with this problem.