A while ago people realised that they could gain additional onboard storage on modern thin
clients which have switched to using M.2 interfaces for adding Wireless/Bluetooth cards.
For those not up-to-date with the M.2 interface it supports a wide range of signals/protocols
on the connector. Exactly what might be offered on what pins is signalled by the position of the
notch on the edge connector.
SSDs use the M keyID which supports PCIe x4 and SATA interfaces. The latest NVMe SSDs
interface over PCIe, older SSDs use SATA.
The A and E variants of the M.2 socket are there for interfacing a range of other I/O devices.
A popular use for these are for providing WiFi (via a single PCIe channel) and Bluetooth (via USB).
These days you can buy adaptors that carry an M.2 'M' socket that plug into the M.2 A+E socket.
The adaptor cross connects the single PCIe channel on the A+E interface to the appropriate position
on the 'M' socket. This then lets you plug in a NVMe SSD via the adaptor.
In March 2025 I heard from 'fanoush' who pointed out that
AliExpress also carried adapters where the M.2 socket was fitted to the adapter rotated
through 180°. i.e. Any SSD plugged in to it passes over the top of the original socket
and (may) extend beyond. Depending on the placing of the surrounding components this
alternative positioning of the SSD may be a better fit.
There are three(?) downsides to adding a SSD using the WiFi/Bluetooth
socket in this way:
You can no longer fit an internal WiFi interface.
The added NVME SSD is interfaced over a single PCIe channel rather than 4 x PCIe you would
get with a standard M.2 SSD socket.
The motherboard is not laid out to take the larger (2242/2260/2280) SSD sizes and so you
may or may not be able to fit them should you so wish.
In November 2024 I heard from Stefan who had gone down this
route with his M350C:
This was not an expensive upgrade:
The adapter was 1.45USD from AliExpress. It included all the necessary screws and even
came with a little screwdriver. (Try a search for M2 for KEY A-E to M2 NVME Adapter
or similar)
I bought a new PCIe 4.0 x4 NVMe 256GB SSD for only 12.99 EUR.
Of course in practice the NVME SSD when connected by the M350C WiFi M.2 slot only works as
PCIe 3.0 x1. However 1 lane of PCIe 3.0 is roughly 33% faster than mSATA.
As well as being faster than mSATA what I describe here is a much easier modification
than soldering in the mSATA connector. In fact, if you don't mind a small amount of
destruction, no soldering iron is required.
As can be seen in the photo above the practical limit to the NVMe card is the
2242 size. In order to accommodate this size of board we need to remove the USB5
header and the PC Speaker (BZ1) next to it - not a difficult job as noted below.
The larger 2260 and 2280 sizes I do not see as practical options as:
The 2260 length is a very tight fit and needs the further removal of USB2
(one of the USB 3.0 ports).
With USB2 out of the way you can even install 2280, but then you will need to
cut the case as well.
In reality I believe the 2242 size is all you need to cater for - as shown with
my purchase of a 2242 sized 256GB M.2 NVMe SSD for only 12.99EUR brand-new. This
provides enough additional (cheap) storage for most applications.
As noted above, in order to fit the adapter I needed to desolder USB5 (the
card-reader USB Header) and the PC speaker "BZ1" next to it, to make more room.
If you don't have any soldering equipment you can use a pair of side-cutters or
similar to cut up/remove the plastic body of USB5 and then to cut off the four pins
sticking up from the circuit board. Similarly you can use some pliers to crush
the PC speaker and once the remains are out of the way use the side cutters
to cut off the connecting pins. Admittedly that's more destructive than desoldering
but it does get the job done.
There are plenty of options though - including keeping USB5 and/or the PCSpeaker
and using extension wires to move them to another place in the case. Alternatively
you could install right angled-pin-headers in their place - that can be done on the
bottom side of the mainboard PCB as there is enough space between the board and the
bottom of the case to accommodate this.
Currently I am using the mainboard outside the case which means I'm missing a
power on button. To turn the thin client on or off you need to use JP2 which is
located on the edge of the board between SPK1 and CN1. To turn the thin client
on just short JP1. To turn it off just short it for a while until it turns off -
or use the OS 'power off' option.
That's it. IMHO it's more useful and better modification than soldering in the
mSATA socket as it is much easier to do. You don't necessarily need a soldering iron
and desoldering skills - just a couple of simple hand tools will suffice. Finally
it gives you faster storage than the mSATA alternative.
fanoush also supplied some photos of his own
installation using the 'reverse' adapter. The photo below shows the adapter in place
along with a shot showing a 2242 SSD fitted. Looking at the photo it looks like the
CMOS backup battery may be a problem with this style of adapter in the M350C. A 2260 SSD
may just squeeze in but not a 2280 one.
fanoush subsequently tried out a 2280 SSD.
When 2280 is properly aligned it hits the battery. However the SSD can be slightly moved to the side
and then it slides down next to the battery until it hits the black battery holder. While this
is not ideal the SSD is detected and does work. Also, if the adapter itself is not tightly screwed
down, it can also be slightly rotated so that the small misalignment can be distributed between both sockets.
How stable and reliable it is I cannot say but maybe it could work when fixed in this position by tape.