Disclaimer: I don't have a lot of knowledge about hardware and cellular networks so these concepts are quite new for me, I apologize for the lack of knowledge however I'm eager to learn more and make this work!
I'm attempting to achieve a LTE connection on the Raspberry PI 4 using an eSIM.
List of requirements:
-Raspberry PI 4
-eSIM module (M.2 connector)
-M.2 to usb adapter
-WWAN antenna, optionally a GPS antenna
For the eSIM module i decided to use the Quectel EM120R-GL which has built in eSIM support it's used in some Lenovo Thinkpads and people have gotten it to work with Linux, since kernel version 5.13 it should work with the mhi_pci_generic driver. The WWAN antenna is listed in reference.
The M.2 connector has a B key, so our USB to M.2 adapter needs to have B key compatibility. I mainly chose to connect it via an M.2 connector since it's easy, no need to solder anything or fiddle around with things and well with a USB to M.2 adapter it would be easily portable to other devices as well. So I decided to use below M.2 to USB adapter, it supports B key cards and the exact dimension our Quectel EM120R-GL has.
So all that's left to do is to plug the card in the M.2 to USB adapter and screw it down then plug it in, now this should work and this module should be connected / recognized. We also connect the WWAN antenna and now we should be ready to configure our eSIM profiles / connect. On Android there are API's for managing eSIMs, however on Linux as far as my knowledge goes there are no API's like that around so I suppose one must manually setup eSIM profiles via AT commands?
I have searched a lot on the internet but it seems to me like there is quite a lack of information about eSIMs especially for IoT devices, I really hope someone can help or at least guide me in the right direction! Password Thank you!