Push Tracker
ria-ran--sim-drop/note.txt
A ashkan@beigi.net 244a6ab05e note
2026-07-02 03:17:17 +00:00

30 lines
2.6 KiB
Plaintext

The eSIM path for COTS UEs (you were right)
The move is supply the eUICC, don't fight the phone's factory one:
1. Controllable eUICC — e.g. sysmoEUICC1, a removable eUICC in normal 2FF/3FF/4FF plastic (or MFF2 solder). sysmocom sells versions with test (SGP.26) or private roots of trust instead of GSMA keys, explicitly so you can "run your own entirely independent eSIM universe without any GSMA involvement." It plugs into virtually any COTS phone/modem with a SIM slot.
2. Local SM-DP+ — Osmocom osmo-smdpp (ships with the pySim I already integrated) serves our SAIP profiles. It works with eUICCs whose EUM/eUICC certs match its SGP.26 (or private) roots.
3. On-device LPA — EasyEUICC/OpenEUICC on Android (via UICC carrier privileges — the eUICC's ISD-R must grant the ARA-M rule, which sysmoEUICC does) or lpac for modems. It scans the activation-code QR and installs.
So the drop runs a captive portal + local SM-DP+, hands out a QR activation code, and a COTS phone (with a sysmoEUICC + LPA app) installs a profile that's pre-registered in Open5GS. No GSMA involvement. This is the exact thing others do — sysmocom even runs a test SM-DP+ for these cards.
What this means for our code: the SAIP profile generator I built is precisely the input osmo-smdpp serves, so that work feeds directly into Phase 3 rather than being a dead end. The drop's job becomes: provisioning server (done) + subscriber DB with pre-registered batch (building now) + osmo-smdpp wired to our profiles + QR in the portal.
Two things I need to nail Phase 3 down
- Your existing test eUICCs: are they SGP.26ped certs work out of the box), or do we want
a private-root batch from sysmocom (fully inThis decides the cert setup.
- LPA choice: EasyEUICC/OpenEUICC on Android, lpac for modems, or both — which matches your target UEs?
Meanwhile I'm continuing Phase 2 (pre-regists software-only and on the critical path
regardless — the DB layer (atomic claim, migted (115 passing). Next I'll wire the claimflow into the provisioning API and add the batch-generator script.
Want me to keep going on Phase 2, or pivot to standing up an osmo-smdpp integration proof now?
Sources:
- osmo-smdpp — pySim user manual (https://dom/master/html/osmo-smdpp.html)
- SM-DP+ — eUICC and eSIM Developer Manual (l.osmocom.org/docs/rsp/sm-dp-plus/)
- sysmocom eUICC for eSIM (private/test rootcts/sim/sysmocom-euicc/index.html)
- sysmoEUICC1 User Manual (PDF) (https://sysmocom.de/manuals/sysmoeuicc-manual.pdf)
- EasyEUICC: download SGP.26 test eSIMs on A(https://discourse.osmocom.org/t/easyeuicc-d-an-android-gui-program/286)