Logo

Wyse 3040 (N10D): SD card 

Storage, take 2

In November 2024 I heard from János

SD card in Wyse 3040 adapter
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.


  
  MicroSD 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 ~]#

  
  MicroSD 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.

 


Any comments? email me. Added November 2024