Storage, take 2
In November 2024 I heard from János
I have some updates regarding the M.2 - SDIO adapter for the DELL Wyse 3040. I asked an acquaintance of mine to improve a bit on the PCB design originally shared by April on your site. The improved designs are available here:https://github.com/martonmiklos/m.2_microsd. We had a handful of boards manufactured and I recently got to test them.
The following tests were with my 3040 using Windows 10 and with Linux. Windows 10 was a generic install to the onboard 16GB eMMC by the previous owner. The Linux distribution was V11 of SystemRescue run from a USB drive.
My experiences so far have been as follows:
- I had a total of t…
Storage, take 2
In November 2024 I heard from János
I have some updates regarding the M.2 - SDIO adapter for the DELL Wyse 3040. I asked an acquaintance of mine to improve a bit on the PCB design originally shared by April on your site. The improved designs are available here:https://github.com/martonmiklos/m.2_microsd. We had a handful of boards manufactured and I recently got to test them.
The following tests were with my 3040 using Windows 10 and with Linux. Windows 10 was a generic install to the onboard 16GB eMMC by the previous owner. The Linux distribution was V11 of SystemRescue run from a USB drive.
My experiences so far have been as follows:
- I had a total of thirteen micro-SD cards to try, and out of those I found two that seemed to work with this adapter and the thin client.
- The two that apparently worked were older SanDisk branded cards, one a 16GB (plain black colour scheme) card and one a 32GB (red/grey SanDisk Ultra). Whilst my pool of cards included a number of red/grey SanDisk Ultra only one of them worked in the adapter.
- None of my recent SanDisk Extreme/Extreme Pro cards worked. They ranged in size from 32GB to 256GB in size.
- None of my Kingston branded cards worked.
- It seems that the cards that worked were SDHC ones, and supported at most UHS-I speeds, and were using SDR104 data rate in the thin-client
Turning to the two cards that actually did something:
- With Windows 10 I could see the cards okay, and even write to them, but re-reading the written data, after a reboot did not work.
- With Linux they worked out of the box and did not require any additional boot/kernel parameters or seperate driver. (The related kernel messages can be seen in the listing below.)
- With Linux the write speed is pretty moderate at around 11.2MB/s for the 16GB card and 15.5MB/s for the 32GB one, and, unlike with Windows, the written data can be read back successfully after an unmount.
So all in all, there should be a big fat warning next to this adapter design, as it seems to be only by chance that you can come by an older card that the thin client will work with (or you have to be pretty thorough in your search). But at least I was able to verify that the adapter design itself is correct, and functional, in that there were at least two cards that worked in it.
Click for system data relating to the SanDisk 32GB UHS-I card::
[root@sysrescue ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS loop0 7:0 0 767.5M 1 loop /run/archiso/sfs/airootfs sda 8:0 1 3.7G 0 disk +-sda1 8:1 1 853M 0 part +-sda2 8:2 1 1.4M 0 part mmcblk0 179:0 0 14.7G 0 disk +-mmcblk0p1 179:1 0 100M 0 part +-mmcblk0p2 179:2 0 16M 0 part +-mmcblk0p3 179:3 0 14G 0 part +-mmcblk0p4 179:4 0 531M 0 part mmcblk1 179:8 0 29.7G 0 disk +-mmcblk1p1 179:9 0 249M 0 part +-mmcblk1p2 179:10 0 249M 0 part mmcblk0boot0 179:16 0 4M 1 disk mmcblk0boot1 179:24 0 4M 1 disk [root@sysrescue ~]# dmesg | grep -iF sd [ 0.012816] ACPI: RSDP 0x000000007A723000 000024 (v02 DELL ) [ 0.012832] ACPI: XSDT 0x000000007A7230A0 0000C4 (v01 DELL CBX3 01072009 AMI 00010013) [ 0.012869] ACPI: DSDT 0x000000007A7231F8 01D52A (v02 DELL CBX3 01072009 INTL 20120913) [ 0.012935] ACPI: SSDT 0x000000007A7409E8 0041C5 (v01 DptfTb DptfTab 00001000 INTL 20120913) [ 0.012948] ACPI: SSDT 0x000000007A744BB0 000654 (v01 CpuDpf CpuDptf 00001000 INTL 20120913) [ 0.012960] ACPI: SSDT 0x000000007A745208 000058 (v01 LowPM LowPwrM 00001000 INTL 20120913) [ 0.012984] ACPI: SSDT 0x000000007A7452A8 000269 (v01 UsbCTb UsbCTab 00001000 INTL 20120913) [ 0.013007] ACPI: SSDT 0x000000007A745550 000763 (v01 PmRef CpuPm 00003000 INTL 20120913) [ 0.013019] ACPI: SSDT 0x000000007A745CB8 000290 (v01 PmRef Cpu0Tst 00003000 INTL 20120913) [ 0.013031] ACPI: SSDT 0x000000007A745F48 00017A (v01 PmRef ApTst 00003000 INTL 20120913) [ 0.013114] ACPI: Reserving DSDT table memory at [mem 0x7a7231f8-0x7a740721] [ 0.013134] ACPI: Reserving SSDT table memory at [mem 0x7a7409e8-0x7a744bac] [ 0.013137] ACPI: Reserving SSDT table memory at [mem 0x7a744bb0-0x7a745203] [ 0.013141] ACPI: Reserving SSDT table memory at [mem 0x7a745208-0x7a74525f] [ 0.013148] ACPI: Reserving SSDT table memory at [mem 0x7a7452a8-0x7a745510] [ 0.013154] ACPI: Reserving SSDT table memory at [mem 0x7a745550-0x7a745cb2] [ 0.013158] ACPI: Reserving SSDT table memory at [mem 0x7a745cb8-0x7a745f47] [ 0.013161] ACPI: Reserving SSDT table memory at [mem 0x7a745f48-0x7a7460c1] [ 0.196710] ACPI: SSDT 0xFFFF888001A0B000 00059C (v01 PmRef Cpu0Ist 00003000 INTL 20120913) [ 0.201034] ACPI: SSDT 0xFFFF888001D96400 0003A5 (v01 PmRef Cpu0Cst 00003001 INTL 20120913) [ 0.205081] ACPI: SSDT 0xFFFF888001CDE800 00015F (v01 PmRef ApIst 00003000 INTL 20120913) [ 0.208356] ACPI: SSDT 0xFFFF888001E55E40 00008D (v01 PmRef ApCst 00003000 INTL 20120913) [ 12.668098] sdhci: Secure Digital Host Controller Interface driver [ 12.668108] sdhci: Copyright(c) Pierre Ossman [ 12.711851] mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA [ 12.760973] sdhci-pci 0000:00:11.0: SDHCI controller found [8086:2295] (rev 36) [ 12.766335] mmc1: SDHCI controller on PCI [0000:00:11.0] using ADMA [ 12.913843] mmc1: new ultra high speed SDR104 SDHC card at address aaaa [ 15.193961] sd 0:0:0:0: [sda] 7834944 512-byte logical blocks: (4.01 GB/3.74 GiB) [ 15.194182] sd 0:0:0:0: [sda] Write Protect is off [ 15.194190] sd 0:0:0:0: [sda] Mode Sense: 23 00 00 00 [ 15.194552] sd 0:0:0:0: [sda] No Caching mode page found [ 15.194561] sd 0:0:0:0: [sda] Assuming drive cache: write through [ 15.198182] sda: sda1 sda2 [ 15.198541] sd 0:0:0:0: [sda] Attached SCSI removable disk [ 70.126635] sd 0:0:0:0: Attached scsi generic sg0 type 0 [root@sysrescue ~]# cat /sys/block/mmcblk1/device/uevent DRIVER=mmcblk MMC_TYPE=SD MMC_NAME=SC32G MODALIAS=mmc:block [root@sysrescue ~]# cat /sys/block/mmcblk1/device/cid 035344534333324780a49d00ae012900 [root@sysrescue ~]# cat /sys/block/mmcblk1/device/csd 400e00325b590000edc87f800a404000 [root@sysrescue ~]# cat /sys/block/mmcblk1/device/oemid 0x5344 [root@sysrescue ~]# cat /sys/block/mmcblk1/device/date 09/2018 [root@sysrescue ~]#Click for system data relating to the SanDisk 16GB UHS-I card::
[root@sysrescue ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS loop0 7:0 0 767.5M 1 loop /run/archiso/sfs/airootfs sda 8:0 1 3.7G 0 disk +-sda1 8:1 1 853M 0 part +-sda2 8:2 1 1.4M 0 part mmcblk0 179:0 0 14.7G 0 disk +-mmcblk0p1 179:1 0 100M 0 part +-mmcblk0p2 179:2 0 16M 0 part +-mmcblk0p3 179:3 0 14G 0 part +-mmcblk0p4 179:4 0 531M 0 part mmcblk0boot0 179:8 0 4M 1 disk mmcblk0boot1 179:16 0 4M 1 disk mmcblk1 179:24 0 14.8G 0 disk +-mmcblk1p1 179:25 0 14.8G 0 part [root@sysrescue ~]# dmesg | grep -iF sd [ 0.012833] ACPI: RSDP 0x000000007A723000 000024 (v02 DELL ) [ 0.012848] ACPI: XSDT 0x000000007A7230A0 0000C4 (v01 DELL CBX3 01072009 AMI 00010013) [ 0.012882] ACPI: DSDT 0x000000007A7231F8 01D52A (v02 DELL CBX3 01072009 INTL 20120913) [ 0.012947] ACPI: SSDT 0x000000007A7409E8 0041C5 (v01 DptfTb DptfTab 00001000 INTL 20120913) [ 0.012959] ACPI: SSDT 0x000000007A744BB0 000654 (v01 CpuDpf CpuDptf 00001000 INTL 20120913) [ 0.012971] ACPI: SSDT 0x000000007A745208 000058 (v01 LowPM LowPwrM 00001000 INTL 20120913) [ 0.012994] ACPI: SSDT 0x000000007A7452A8 000269 (v01 UsbCTb UsbCTab 00001000 INTL 20120913) [ 0.013015] ACPI: SSDT 0x000000007A745550 000763 (v01 PmRef CpuPm 00003000 INTL 20120913) [ 0.013027] ACPI: SSDT 0x000000007A745CB8 000290 (v01 PmRef Cpu0Tst 00003000 INTL 20120913) [ 0.013039] ACPI: SSDT 0x000000007A745F48 00017A (v01 PmRef ApTst 00003000 INTL 20120913) [ 0.013121] ACPI: Reserving DSDT table memory at [mem 0x7a7231f8-0x7a740721] [ 0.013141] ACPI: Reserving SSDT table memory at [mem 0x7a7409e8-0x7a744bac] [ 0.013145] ACPI: Reserving SSDT table memory at [mem 0x7a744bb0-0x7a745203] [ 0.013148] ACPI: Reserving SSDT table memory at [mem 0x7a745208-0x7a74525f] [ 0.013155] ACPI: Reserving SSDT table memory at [mem 0x7a7452a8-0x7a745510] [ 0.013162] ACPI: Reserving SSDT table memory at [mem 0x7a745550-0x7a745cb2] [ 0.013165] ACPI: Reserving SSDT table memory at [mem 0x7a745cb8-0x7a745f47] [ 0.013169] ACPI: Reserving SSDT table memory at [mem 0x7a745f48-0x7a7460c1] [ 0.196682] ACPI: SSDT 0xFFFF888001A0A800 00059C (v01 PmRef Cpu0Ist 00003000 INTL 20120913) [ 0.201027] ACPI: SSDT 0xFFFF888001D97800 0003A5 (v01 PmRef Cpu0Cst 00003001 INTL 20120913) [ 0.205101] ACPI: SSDT 0xFFFF888001CDEA00 00015F (v01 PmRef ApIst 00003000 INTL 20120913) [ 0.208463] ACPI: SSDT 0xFFFF888001E55600 00008D (v01 PmRef ApCst 00003000 INTL 20120913) [ 12.606696] sdhci: Secure Digital Host Controller Interface driver [ 12.606705] sdhci: Copyright(c) Pierre Ossman [ 12.646027] mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA [ 12.701240] sdhci-pci 0000:00:11.0: SDHCI controller found [8086:2295] (rev 36) [ 12.709414] mmc1: SDHCI controller on PCI [0000:00:11.0] using ADMA [ 15.189442] sd 0:0:0:0: [sda] 7834944 512-byte logical blocks: (4.01 GB/3.74 GiB) [ 15.189758] sd 0:0:0:0: [sda] Write Protect is off [ 15.189767] sd 0:0:0:0: [sda] Mode Sense: 23 00 00 00 [ 15.190154] sd 0:0:0:0: [sda] No Caching mode page found [ 15.190162] sd 0:0:0:0: [sda] Assuming drive cache: write through [ 15.193036] sda: sda1 sda2 [ 15.193387] sd 0:0:0:0: [sda] Attached SCSI removable disk [ 15.228350] mmc1: error -110 whilst initialising SD card [ 15.365891] mmc1: new ultra high speed SDR104 SDHC card at address e624 [ 69.304416] sd 0:0:0:0: Attached scsi generic sg0 type 0 [root@sysrescue /sys/block/mmcblk1/device]# cat /sys/block/mmcblk1/device/uevent DRIVER=mmcblk MMC_TYPE=SD MMC_NAME=SL16G MODALIAS=mmc:block [root@sysrescue /sys/block/mmcblk1/device]# cat /sys/block/mmcblk1/device/cid 035344534c31364780bb1690a1011400 [root@sysrescue /sys/block/mmcblk1/device]# cat /sys/block/mmcblk1/device/csd 400e00325b59000076b27f800a404000 [root@sysrescue ~]# cat /sys/block/mmcblk1/device/oemid 0x5344 [root@sysrescue ~]# cat /sys/block/mmcblk1/device/date 04/2017 [root@sysrescue ~]#
A few weeks later János added:
I have the following update for the Dell 3040 SDcard topic:
I recently managed to get my hands on three more 3040 thin-clients. My original 3040 was manufactured in 2018 and used a 5V/3A PSU. The latest ones were manufactured in 2020 and had 12V/2A PSUs. I took the SD cards that hadn’t worked with the 2018 version and retested them with my latest 2020 examples - and got much better results.
I tested them with a total of 9 micro-SD cards. The “best” 3040 worked with 5 of them, whilst the “worst” only worked with 3. The great news is that all of these newer models worked with my two SanDisk Extreme Pro SDXC cards one of which was a 256GB one. One thing that I noticed was that the SanDisk Ultra cards that worked had a better read speed - around 80 MB/s - whilst the Extreme Pros maxed out around 30-35 MB/s.
Unfortunately I can’t give you a rule of thumb telling you which type of card would work or not. The good news though is that newer models of the 3040 seem to be more compatible with a wider range of memory cards including SDXC cards.