I would like to try a wireless N M.2 NGFF card v2 (TPE-M2NCRD2) from ThinkPenguin with a Librem 5. It is a 2.4 Ghz Wi-Fi card without Bluetooth and supporting b/g/n but not ac, ax, or newer Wi-Fi generations. So, featurewise, it is a downshift from the SparkLAN card being shipped with Librem 5. However, I would still like to try it to see whether it comes with a noticeable reduction in quality of user experience, aside from lacking Bluetooth, and, if it does, whether such reduction is bearable enough to justify.
I assume that when I swap one card for another, it should just work. How accurate is that expectation? Are there any customizations in Librem 5, for example, in its hardware voltages, in U-Boot, or elsewhere, that might cause damage to my Librem 5 or to the Wi-Fi card or cause it operate suboptimally? May additional configuration be required before or after changing the card? Did anyone try doing the same or something similar already?
I am specifically concerned about what I might not know about Librem 5 that may result in damage to the device. My experience comes from changing cards in laptops with x86_64 architecture, but I am unsure whether such experience is also valid for Librem 5.
I would also appreciate any suggestions for the tests to run on the card.
I am aware of some risks potentially associated with the very process of replacing the card, which I list here below for completeness without an intention to discuss them.
Before experimenting, check your important data backups first.
I must power down Librem 5 and remove the battery to avoid damage to any parts.
I should put Librem 5 on a hard, steady, non-conductive surface before disassembling.
I should ground myself to avoid the chance of a static electricity discharge damaging the cards or the Librem 5 internal electronics.
The antenna wires are fragile and may tear, which would require a major disassembling to repair. The antenna needs to be detached before removing and attached after inserting the card.
The antenna connectors on the antenna wires are normally designed for a relatively small number of reattaching and are fragile. Any of them may break when detaching from the existing card or when attaching to the new one.
The antenna wires should match the markings for MAIN and AUX on the card.
The card may not fit. I need to measure its dimensions and compare to the existing card before trying to push it in to avoid breaking anything.
I’ve done the Sparklan card swap and tested another card in the modem slot. From these and some other tinkering, I’d say there’s nothing special about the slots as per voltages or like that. You are safe to test. The first test is, does L5 recognize the card and offer wifi, as the supported linux versions list seems to include past and present Debians. If it doesn’t, lsusb. If it’s not there, my condolences.
Slots and cards follow certain standards and they have tolerances, so no big surprises should be expected - no magic smoke events. A slight extra voltage that these slots may have is not that serious (for testing at least) but if they offer unexpected undervoltage, that may prevent something from working. More likely than that, some connector or keying isn’t used, which you can do nothing about. I once came across one card that was the right size and keying but the used connection standard for data/commands wasn’t the one that L5 uses on those. My take is, there are no absolute guarantees, but the most likely way to actually do harm is the disconnection/connection of antenna wires (to wires and/or cards), that you already listed.
The card is A+E keyed. The old cards and slot are E keyed, but that shouldn’t be a problem, if my memory serves how those are meant to function (unless L5 needs the missing contacts for something).
Size seems small enough and smaller than normal. Interestingly, as BT has been left off, it’s not as wide as normal card and some of the pins from the far end seem to be missing. This may make seating the card a bit easier but also finicky. Make sure that contacts in the slot align right and not at an angle (which could short it). The keying gap helps with alignment though. Let’s just hope nothing of interest to L5 in those.
Post pics in any case when you do the test. It’s always a learning experience…
The first issue I see with using this card in the Librem 5 (aside from whether it will fit, which is hard to guess from the shops picture) is that the Librem 5 WiFi cards (Redpine and Sparklan) are SDIO, and AFAIK the slot only takes SDIO cards.
Now, if you don’t need LTE, you could use the other slot, AFAIK it is USB.
Sencondly and sadly, ThinkPenguin does not list which technology the QCA9565 card uses to communicate, despite the fact m.2 interfaces can be used with various technologies. The chip is capable of PCIe and maybe also USB, but that does not necessarily mean that the specific card supports both - I have only read a summary here.
My Librem 5 does not recognize this card. lsusb does not list it. I tried in the slot dedicated to the Wi-Fi card as well as, for testing only, in the slot dedicated to the cellular card. I conclude that the tested card requires PCIe and does not support SDIO or USB. In a laptop, lspci lists this card.
Per a Purism publication, they chose SDIO and USB because they are “defined interfaces” allowing to separate CPU from the WiFi, Bluetooth and cellular modems to prevent them from accessing the RAM. So, the reason why the PCIe is absent in Librem 5 is because it is more difficult to secure from a hostile peripheral.
A card of that form factor sits as firmly in the slot as the full-sized. It is exactly the right width to be held by the left and the middle plastic holders along the edge.
The slots do not allow to secure cards with screws. As a side note, when disconnecting the antenna, one should hold the card in place to avoid popping it out suddenly with the antenna still attached. When removing or inserting the cellular card, the wires need to be held in grooves in the sides.
The card in the cellular slot. It cannot be secured in place. The wires are too short to reach, so I connected AUX antenna to MAIN on the card to have at least one.
Thanks for the report (especially the good photos) and too bad it didn’t succeed. But this does add to learning more about L5 and that’s always a good thing.