ODROID-M1S review – Part 1: Ubuntu 20.04, Vu8S touchscreen display, UPS Kit, and WiFi Module 5BK

Hardkernel ODROID-M1S single board board was recently launched to celebrate the company’s 15th anniversary. While the ODROID-M1 board was introduced with the Rockchip RK3568 SoC last year, the new ODROID-M1S board is smaller and cheaper starting at just $49 and comes with a Rockchip RK3566 SoC.

Hardkernel sent us a sample of the ODROID-M1S board for review with 8GB of memory and 64GB of storage as well as accessories. Let’s unpack the box before trying it out with Ubuntu 20.04 Desktop and testing each accessory.

ODROID-M1S unboxing with ODROID-Vu8S display, UPS kit, and WiFi dongle

ODROID-M1S VU8S display unboxing
The review package we received from Hardkernel included the ORDROID-M1S SBC in its plastic enclosure, the VU8S 8-inch touchscreen display, a UPS board, and a dual-band WiFi 5 USB dongle.

ODROID-M1S power adapter
The UPS module comes without a battery, so we had to find an 18650 battery to use it. As we’ll see further below, the UPS module is connected to the ODROID-M1S’s 14-pin GPIO header, and the tiny WiFi USB dongle (on the left below) was sent because ODROID-M1S board doesn’t have a built-in WiFi module.

WiFi dongle and UPS for M1S + cable

The ODROID-M1S comes in a black case and our sample shipped with a 5V/3A USB Type-C power adapter. When the ODROID-M1S board is in the case, we only have access to HDMI, USB, and Ethernet ports, and the GPIO headers are not accessible, but there are cutouts to help us easily expose the GPIO headers if needed.

ODROID-M1S ports
The ODROID-Vu8S display sent for review is an 8-inch TFT display with a 1280 x 800 resolution and a 5-point capacitive touchscreen that can be connected to the ODROID-M1S board via its 30-pin MIPI DSI connector.

ODROID-Vu8S Display
Hardware overview

ODROID-M1S specifications

  • SoC – Rockchip RK3566 quad-core Cortex-A55 processor @ up to 1.8 GHz with Arm Mali-G52 MP2 GPU @ 800 MHz, 0.8 TOPS AI accelerator
  • System Memory – 4GB or 8GB LPDDR4 RAM at 2112 MT/s or up to 1,055 MHz
  • Storage
    • 64GB eMMC flash (soldered on PCB) benchmarked at up to 180MB/s with fio
    • MicroSD card slot (UHS-I SDR104, boot priority higher than eMMC flash)
    • M.2 NVMe M-Key 2280 socket (1-lane PCIe 2.1) benchmarked at up to 400MB/s with fio (Note: ODROID-M1 could support 1,600MB/s thanks to PCIe 3.0)
  • Video Output
    • 1x HDMI 2.0 port up to 4Kp60 with HDR, EDID
    • 4-lane 30-pin MIPI DSI connector
  • Audio – 3.5mm headphone jack, mono speaker output (1.3W at 8Ω load)
  • Networking – Gigabit Ethernet RJ45 port via Realtek RTL8211F Ethernet transceiver
  • USB
    • 1x USB 3.0 port
    • 1x USB 2.0 port
    • 1x Micro USB 2.0 OTG port
  • Expansion – 40-pin GPIO header + 14-pin GPIO header (both headers optional)
  • Debugging – UART header for serial console
  • Misc – IR receiver, RTC battery connector, 2x system LEDs, M.2 LED
  • Power Supply – 5V/3A via USB Type-C port
  • Power consumption
    • Power off – 0 Watt
    • Idle – 1.1 Watt (vs 1.3 Watt)
    • CPU stress – 3.52 Watts with performance governor (vs 4.5 Watts)
  • Dimensions – 90 x 65 x 16mm
  • Weight – 52 grams with heatsink
ODROID-M1S top view
ODROID-M1S top side
ODROID-M1S bottom
ODROID-M1S bottom side

ODROID-M1S heatsink thermal paste

We’ve also removed the heatsink with the CPU, RAM, and eMMC flash covered with thermal paste.  There’s also a Rockchip RK809-5 PMIC and a Realtek RTL8211F gigabit Ethernet controller.

GPIO Headers

The ODROID-M1S comes with two GPIO headers: the 40-pin J4 connector and the 14-pin J3 connector. The 40-pin J4 connector is (mostly) compatible with Raspberry Pi, while the other GPIO header (J3) can be used with various ODROID accessories using USB, I2C, UART, headphone, power, and/or reset signals.

ODROID-M1S 14-pin GPIO header
J3 GPIO header for Hardkernel accessories

J3 pinout diagram

ODROID-M1S 40-pin GPIO header
J4 GPIO header compatible with Raspberry Pi GPIO header

J4 pinout diagram

MIPI DSI interface

The MIPI DSI  connector on the ODROID-M1S can be connected to two ODROID screen models: the 5-inch ODROID-Vu5S and the 8-inch ODROID-Vu8S.  Capacitive touch is also supported.


M.2 Key-M socket
ODROID-M1S M.2 NVMe SSD installation

Another highlight of the ODROID-M1S SBC is its M.2 Key-M (PCIe 2.1 x1) socket allowing it to add an M.2 2280 NVMe SSD or an M.2 AI accelerator like the Google Coral accelerator. The single-lane PCIe 2.1 interface will however be a bottleneck for some applications.

Operating systems for the ODROID-M1S board

OS installation

The ODROID-M1S board officially supports three operating systems:

  • Android 11
  • Ubuntu 20.04 LTS Desktop
  • Ubuntu 20.04 LTS Server

We will test the installation procedure with Ubuntu 20.04 LTS Desktop. Once we turn on the board, the OS selection interface pops up:

ODROID-M1S Select OS to install
That’s because the eMMC flash has been flashed with an installation assistant firmware at the factory so that users can simply connect the power supply to boot the board and select the OS they want to install during the first boot without having to prepare a micro SD card or flash the firmware via USB.

Hardkernel SBC install Ubuntu 20.04 desktop image
But it looks a bit different than Khadas OOWOW solution, as the images are inside the eMMC flash, so you don’t even need to connect the board to the Internet at all. It doesn’t take long to install, and the Ubuntu login prompt comes up after we reboot the system.

hardkernel ubuntu login screen

We can then just log in with the default username and password both of which are “odroid”.

Ubuntu 20.04 system information

We can check some system information in Ubuntu 20.04 which relies on the Linux kernel 5.10:

The system has 8GB RAM with about 600 MB used leaving plenty of memory for various programs or services:

As for the storage space, /dev/mmcblk0 is the device for the 64GB eMMC flash. Since we have installed an M.2 SSD NVMe, a /dev/nvme0n1 device with a capacity of 232.91 GB also shows up:

Hardkernel’s accessories testing with ODROID-M1S board

ODROID-Vu8S screen

ODROID-M1S SBC features a 30-pin MIPI DSI connector which we can use with the 8-inch ODROID-Vu8S touchscreen display provided for the review.  The /boot/config.ini file must be edited to select whether the video signal is outputted through HDMI or MIPI DSI. Here’s the configuration needed for the ODROID-Vu8S:

We can then save the file and reboot the system. The Ubuntu desktop will now shown on the ODROID-Vu8S touchscreen display and we can log in with the On-Screen Keyboard immediately, no need for a physical keyboard. However, portrait mode is enabled by default, so we changed that to landscape mode by copying the monitors.xml to the relevant directory:

Then we can go to Settings→Displays and change the orientation.

UPS module

This UPS for M1S module is designed to provide backup power to the ODROID-M1S board in case of power failure. An 18650 battery with a capacity of 3600mAh is good enough for four hours when calculating the average current consumption of the ODROID-M1S to be around 500mA. This UPS module can supply a maximum current of 3A and communicates with the ODROID-M1S board over UART on the J3 connector to report the battery level and a low-voltage alert that can be used to safely shutdown the board before power runs out. When the mains are up again, the board will automatically boot up.

UPS for M1S with 18650 battery, cable
The connection is straightforward, but make sure the 14-pin cable is oriented properly as shown in the photo below.

ODROID-M1S UPS kit demo
WiFi Module 5BK

The ODROID-M1S does not come with WiFi and Bluetooth likely to do away with the necessary FCC regulatory requirements, and instead, the company provides a WiFi 5 and Bluetooth USB dongle called the WiFi Module 5BK. Simply plug it into one of the USB ports of the ODROID-M1S SBC and you can use Wi-Fi right away since the required kernel module is already part of the Ubuntu image:

We can use the iwlist command to scan the various WiFi access points in the area.

WiFi Module 5BK scanning

Setting up the Wi-Fi connection can be done through nmtui command line utility or in Ubuntu settings. However, Bluetooth requires additional settings because the related kernel modules are not loaded, so we have to add them in /etc/modules-load.d/modules.conf as follows:

After saving the file /etc/modules-load.d/modules.conf, and rebooting the system, we can scan for BLE devices in the vicinity and it’s working pretty well:

We also tested Bluetooth audio with the ODROID-M1S board and a Bluetooth speaker, and there were no audio cuts during playback.

Preliminary conclusions

The ODROID-M1S board is powered by the Rockchip RK3566 SoC, which is similar to the RK3568 found in the ODROID-M1, but the new board adds an extra 14-pin GPIO header designed for Hardkernel accessories which is a nice touch. The single board computer comes with either 4GB or 8GB of DDR4 memory, a 64GB eMMC flash soldered on board (instead of the traditional eMMC flash connector), and can output video through either HDMI 2.0 or MIPI DSI interfaces.

Networking-wise, the board features a Gigabit Ethernet port RJ45, and WiFi/Bluetooth wireless connectivity can easily be added with a USB dongle connected to one of the four USB ports found in the board. Expansion options include the 40-pin and 14-pin GPIO headers and an M.2 socket for an NVMe SSD. But switching to the RK3566 means the M.2 socket only supports PCIe 2.1, and other cost-cutting means there’s no SPI flash, SATA port, or a MIPI CSI camera connector.

The power supply part has also changed from a 12V DC jack to a 5V USB-C port that many users may find more convenient to use. Our initial testing with Ubuntu 20.04 revealed web browsing was working well, and YouTube videos played smoothly without any audible audio cuts or distortion as shown in the video above. In the next part of the review, we’ll focus on performance testing of the ODROID-M1S board with the same Ubuntu 20.04 Desktop image.

We’d like to thank Hardkernel for sending the ODROID-M1S board and accessories for review. While the cheapest model with 4GB RAM goes for $49, The ODROID-M1S SBC reviewed here with 8GB RAM and 64GB eMMC flash sells for $59, and the ODROID-Vu8S display can be purchased for $39, the UPS for M1S module for $9, and the WiFi Module 5BK for $8.90. Note those prices do not include shipping, and depending on where you live, it may end up being cheaper on Ameridroid (which ships from the US).

Continue reading “ODROID-M1S review – Part 2: Ubuntu 20.04 benchmarks and features testing“.

CNXSoft: This article is a translation of the original review on CNX Software Thailand by Arnon Thongtem and edited by Suthinee Kerdkaew.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard
Notify of
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
7 months ago

Looks good. Only issue left: at home prices.

7 months ago

Any idea of why ubuntu 22.04 is not available?

7 months ago

Ubuntu 22.04 + Kernel 6.1 OS has been stably working well on my M1S with NVMe storage for a month. Wayland Gnome desktop runs fine too.
You can choose the OS when you firstly boot the system.

7 months ago

Weak performance. I bought 4gb ram version. Weak gpu fot gnime shell. Weak emmc module and weak cpu. Had better invest khadas rk3588 board

7 months ago

Should be weak gpu for gnome-shell

7 months ago

Once there is Rpi5 released and also Rpi4 is back on stock for cheap why would somebody go into something expensive what will be buried in few years.

Matt D
Matt D
6 months ago

Really? Hardkernel accept only orders over 190USD to UK and odroid UK will charge you for small order similarly.
If you are lucky and you are able to find reasonable UK dealer you will not be able to get under price Rpi4 + USB nvme enclosure which I bought for £33 + £6.49.
Also there is lot of used laptops for education starting at £22.99 where you getting CPU + 4GB ram + 64gb emmc + battery. So it is very hard to justify buy of this board.

Matt D
Matt D
6 months ago

You don’t need microSD for Rpi5 because it boots from USB or Nvme.
And soldered emmc is not benefit when you was thinking about using nvme SSD. Also you cannot replace it when it dies so it just adds extra money.

6 months ago

Well, it seems that you’re having your whole project in mind with your own expectations, so it will always be difficult for other participants to suggest a setup that suits you. It’s still unclear to me if you prefer a low-price (e.g. M1S) or a powerful and expensive board (e.g. RPi5). In any case, the microSD card mentioned there is there to provide some equivalent storage to compare the solutions, after all, you were the one suggesting laptops having 64GB eMMC, but now you seem to be ditching this option, that’s a bit confusing.

Matt D
Matt D
6 months ago

Forget that cheap laptop example and Rpi5.
If a SBC is equipped with SoC in this review it should be cheaper in my opinion. This is main thing. And hardkernel when sendink to UK and odroid UK due to volume policy killed it completely.

And what I am looking for is cheap board with good performance per value and watt and without active cooling needed.

Khadas VIM4 SBC