eMMC Module

  • Check the eMMC module compatibility.
  • If the OS on your eMMC is corrupted or the eMMC has a wrong boot loader, reinstall a proper boot loader on the eMMC via eMMC Recovery.
  • The Orange eMMC modules work with ODROID-C0/C1/C1+/C2/C4/XU4/H2/N2.
  • The Black eMMC modules work with ODROID-C0/C1/C1+/C2/C4/H2/N2.
  • The Red eMMC modules work with ODROID-C0/C1/C1+/C2/C4/XU4/H2/N2.

Orange eMMC module

The Orange eMMC module uses Samsung eMMC 5.1 chipset. We started to ship it from October 2017.

It works with C1/C2/C4/XU4/H2/N2 series with a proper OS. The latest official OS images all work fine.
Orange eMMC module schematics : eMMC PCB Rev 0.4

If you want to use the Orange eMMC with XU4 platforms stably, the Kernel version must be higher than 4.9.58 or 4.14.6.

Orange eMMC compatibility status with XU4 series OS images

OS image Image file information Status
Ubuntu 18.04 Mate ubuntu-18.04-4.14-mate-odroid-xu4-20180501.img OK
Ubuntu 18.04 Minimal ubuntu-18.04-4.14-minimal-odroid-xu4-20180531.img OK
Ubuntu 16.04 Mate ubuntu-16.04.3-4.14-mate-odroid-xu4-20171212.img OK
Ubuntu 16.04 Minimal ubuntu-16.04.3-4.14-minimal-odroid-xu4-20171213.img OK
Android 7.1.1 Alpha-1.1_14.11.17 OK
Android TV 7.1.1 Alpha-1.0_20.11.17 OK
Android 4.4.4 Android 4.4.4 (v5.8) OK
Debian Jessie Debian-Jessie-1.1.4-20171121-XU3+XU4.img OK
ODROID Game Station Turbo(OGST) ODROID-GameStation-Turbo-3.9.5-20171115-XU3+XU4-Jessie.img OK
Armbian All Armbian variants starting with version 5.35 OK
OMV OMV_3_0_92_Odroidxu4_4.9.61 OK
DietPi DietPi_OdroidXU4-armv7-(Jessie).7z 22-Nov-2017 OK
Yocto project Untested
Kali-Linux Kali 2018.2 OK
Arch-Linux Untested
ROS Untested
Lakka Lakka-OdroidXU3.arm-2.1-rc6.img.gz OK
Batocera batocera-5.12-xu4-20171214.img.gz OK
RecalBox recalbox (17.11.10.2) OK
RetroPie ORA(Odroid Retro Arena) 1.5x OK

How to distinguish the Sandisk eMMC ver 5.1 from the 5.0

The eMMCs from Sandisk will be version up to 5.1 with slightly faster data transfer speed starting from 20th of July 2017.
As shown in the figure below, the QR code is on the left side of the ver5.1 ​chipset while eMMC ver 5.0 has it on the right side.

eMMC 5.0 eMMC 5.1

Old Kernel 3.10 should have this patch to make it work with XU4 series properly.
Github
Github
Github

eMMC modules for current running products 2016~

The Black eMMC modules work with only ODROID-C0/C1/C1+/C2/C4/H2/N2. It is not compatible with XU/XU3/XU4/U2/U3/X/X2.
Other Blue/Red/Orange eMMC modules work with all ODROID boards.

eMMC modules for old products

Note: XU4 and XU3 have software compatibility each other.

Compatibility with USB3.0 to eMMC Reader

It is not related to their version or capacity but color.

Listed all kind of eMMC are compatible with USB3.0 to eMMC Reader.

RED ORANGE BLUE

Listed all kind of eMMC are NOT compatible with USB3.0 to eMMC Reader.

BLACK

eMMC Module & eMMC Reader Schematics

Download old eMMC module Revison 0.3 schematics
Download Orange eMMC Module Revision 0.4 schematics

eMMC reader board schematics
eMMC board dimensions : 18.5mm x 13.5mm
Gap between the PCBs : 1.1mm (Height of assembled B2B connectors

eMMC connector specification

The connector is made by LS-Mtron Korea.
On the eMMC module, we've used the GB042-34S-H10 (Socket-34pin).
On the host board, we've used the GB042-34P-H10 (Plug-34pin).

The connector specification is here

Information about Sandisk eMMC (iDisk Extreme)

Information about Samsung eMMC

Information about Essencore eMMC (8GB eMMC is used for XU4)

Information about Toshiba eMMC

ODROID-C4 + Orange eMMC Performance Test of File I/O
Test condition
OS : ubuntu 20.04
kernel version : Linux odroid 4.9.218-25
Test tool : iozone revision 3.489
iozone install & performance test

$ sudo apt install iozone3
$ iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
/* 8G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    32835    39198    30593    30638    30064    37580
  102400      16    55605    55864    77602    77210    77025    55587
  102400     512    56324    56335   167658   167931   155491    55992
  102400    1024    56388    56402   168213   168464   156691    56366
  102400   16384    56307    56508   170166   170325   169964    56772
 
/* 16G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    34479    40603    30540    30163    30095    37737
  102400      16    54340    54432    77096    77102    76993    53930
  102400     512    54444    54501   166421   166753   151607    54232
  102400    1024    54343    54479   167804   168047   158466    54213
  102400   16384    54346    54524   170215   170685   170251    54439
 
/* 32G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    34659    40006    30456    30653    30585    40189
  102400      16    81093    89477    77379    77343    77078    88657
  102400     512   111766   112174   167889   168013   153708   112190
  102400    1024   112247   112418   168818   169020   157981   112252
  102400   16384   111973   111996   170058   170593   170312   112344
 
/* 64G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    32720    39823    30021    30005    29905    39021
  102400      16    77273    83613    75869    76174    75637    82888
  102400     512   138202   136923   161642   162313   149562   138764
  102400    1024   137274   138298   163043   163388   152816   138989
  102400   16384   148874   148710   167319   167598   167464   149640
 
/* 128G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    28836    33497    27364    27063    26278    29271
  102400      16    72122    77892    70063    70047    69312    77770
  102400     512   137289   136301   165930   166323   149172   136535
  102400    1024   137023   135748   166734   166979   153839   136675
  102400   16384   140365   139800   167435   168381   167079   141673

Note 1:
Orange eMMC module is made with Samsung eMMC 5.1 chipset.

ODROID-N2Plus + Orange eMMC Performance Test of File I/O
Test condition
OS : ubuntu 20.04 minimal
kernel version : Linux odroid 4.9.230-88
Test tool : iozone revision 3.489
iozone install & performance test

$ sudo apt install iozone3
$ iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
/* 8G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    37518    44227    33183    33089    33049    46391
  102400      16    56351    56539    80518    80424    80258    56310
  102400     512    56655    56766   160631   161022   148955    56375
  102400    1024    56627    56751   161111   161364   150157    56585
  102400   16384    56471    56684   163643   163909   163668    56274
 
/* 16G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    38035    44223    33210    33195    32748    43092
  102400      16    54323    54679    80294    80418    80284    54355
  102400     512    54737    54791   159582   159578   145576    54473
  102400    1024    54801    54726   159838   160316   149142    54484
  102400   16384    54651    54767   163614   163968   163703    54684
 
/* 32G */
                                                                random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    39049    44400    32450    32448    32287    43891
  102400      16    83239    92206    78486    78843    78234    90928
  102400     512   111459   111460   161389   161604   148190   111381
  102400    1024   111436   111550   162192   162440   152001   111355
  102400   16384   111336   111311   163861   164100   163658   111236
 
/* 64G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    37627    44375    32477    32488    32597    45050
  102400      16    83902    94060    78950    78706    78827    93485
  102400     512   149500   151792   161603   161924   148691   153336
  102400    1024   152307   152700   162246   162556   152416   153682
  102400   16384   155768   154567   163946   164153   163931   156139
 
/* 128G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    30385    33826    27532    27596    27405    32611
  102400      16    78443    86788    72825    72707    71967    86350
  102400     512   138058   138790   160191   160835   141309   138554
  102400    1024   140770   141342   160935   161193   146787   142336
  102400   16384   142275   141434   163060   163184   162785   145041

Note 1:
Orange eMMC module is made with Samsung eMMC 5.1 chipset.

Unit : MByte/sec

Samsung Toshiba Sandisk
8G Write 45.4 21.9 N/A
8G Read 113 148 N/A
16G Write 80.1 N/A 25.6
16G Read 126 N/A 153
32G Write 124 N/A 98.7
32G Read 125 N/A 153
64G Write 124 83.7 107
64G Read 124 153 153

Note 1: Write/Read command for the eMMC benchmark.
$ dd if=/dev/zero of=test.tmp oflag=direct bs=1M count=1024
$ dd if=test.tmp of=/dev/null iflag=direct bs=1M

ODROID-C2 + Black eMMC Performance Test of File I/O
Test condition
ubuntu 16.04
kernel version : Linux odroid64 3.14.79-115
Test tool : iozone revision 3.429
iozone install & performance test

$ sudo apt install iozone3
$ iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
/* 8G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4     9290    13582    13570    13568    11900     8787
  102400      16    10934    15680    27511    27484    25976     7699
  102400     512    14943    23761    42163    42121    41361    15122
  102400    1024    15140    28564    41951    41915    41196    16743
  102400   16384    16559    24001    42308    42267    42287    28604
 
/* 16G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    14602    14622    18102    17953    16768    14421
  102400      16    49363    49279    52902    52808    47450    48389
  102400     512    49779    49993   138268   138315   137171    48836
  102400    1024    50005    49870   137522   137709   136958    49027
  102400   16384    49861    50058   139358   139154   139299    50024
 
/* 32G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    14608    14670    18333    18343    17935    14624
  102400      16    58393    66157    56412    56766    55744    56371
  102400     512    80356    81074   136828   137132   137503    79224
  102400    1024    80464    81036   137368   137278   136896    79191
  102400   16384    80388    81070   139486   139612   139446    80560
 
/* 64G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    14240    14299    17619    17548    16012    14216
  102400      16    49991    57484    53245    53405    50001    59302
  102400     512   132316   135079   134154   134016   134208   129755
  102400    1024   132476   134966   133753   133840   133677   130054
  102400   16384   135772   139140   136133   136019   135821   135107
 
/* 128G */
                                                      random    random
      kB  reclen    write  rewrite    read    reread    read     write
  102400       4    14162    14152    18161    18184    17833    14200
  102400      16    56527    64906    55057    55684    54492    66525
  102400     512   131327   131444   137307   137040   137358   132500
  102400    1024   131908   131896   137570   137495   136844   132365
  102400   16384   136418   134070   139940   133304   121160   134002

Note 2:
Black eMMC module is made with Samsung eMMC chipset.
Red/Blue(normal) eMMC module is made with Sandisk or Toshiba or AIO chipset.
C1/C0/C1+/C2 works with Black and Red eMMC modules.
XU4/XU3/U3/X2/U2 do NOT work with Black eMMC module.

New 8GB eMMC Red PCB for XU4 model is based on Essencore/AIO's eMMC 5.0 technology.

Sequential speed with “dd” test
dd write : 15.1 MB/s
dd read : 104 MB/s

Random access(IOPS) speed test with 4k block.
Random write : io=993228KB, bw=9928.2KB/s, iops=2482
Random read : io=1479.1MB, bw=15149KB/s, iops=3787

16GB eMMC Black PCB
16GB UHS-1 SDHC Card (Sandisk SDSDQAD-016G UHS-I 50 OEM model)

Cleanly flashed Android 5.1 V2.8 image and installed GApps Pico package.
eMMC booting time from power on event : 18~20 seconds
SDHC booting time from power on event : 32~35 seconds

* Do not overwrite the hidden eMMC boot partition. If you have, go here to recover: How to recover the eMMC boot loader.

* eMMC must be partitioned like so;
—FAT16 partition with UUID 6E35-5356 (boot)
—EXT4 partition with UUID e139ce78-9841-40fe-8823-96a304a09859 (linux)

* Copy contents from Ubuntu image partitions to the boot and linux partitions using “cp -afpv source destination”

* Insert eMMC and boot normally.