by Hardkernel co., Ltd.

Image of Board

We launched ODROID-M1 about 20 months ago and have supplied it to many B2B and B2C customers. Feedback from many customers requested a lower price, more GPIO ports, lower power consumption, a slimmer form factor, and a variety of practical peripherals.

We would like to introduce you to the ODROID-M1S which was developed over the past six months to respond to market demands. We made the board about 20% thinner, reduced power consumption by about 20%, added 14 header pins, and a built-in 64GB eMMC chip on the board. We have lowered the price to only $49 including a case, heatsink, and power adapter. We believe this will help significantly reduce the cost of building your own affordable and sustainable embedded systems. To ensure longevity, which is important to customers using it for industrial purposes, we will supply this product until at least 2036.

By utilizing 3D modeling from the early PCB design stage, we were able to complete case development relatively precisely and rapidly. It will be remembered for a long time as a novel development project in which collaboration between circuit design & mechanical design proceeded quite smoothly.

Let’s take a look at the main features and peripherals of ODROID-M1S.

  • Rockchip RK3566 CPU
  • 1 x Micro USB2.0 Device only
  • 1 x RJ45 Ethernet Port (10/100/1000)
  • 1 x HDMI 2.0
  • 1 x USB 2.0
  • 1 x USB 3.0
  • 1 x USB 2.0 Micro OTG
  • 1 x DC Power Jack
  • 1 x M.2 NVMe M-Key PCIe2.1 1-Lane
  • 40 x GPIO Pins
  • 1 x MIPI DSI 4Lane
  • 1 x Mono Speaker Output (1.3W at 8Ω load)
  • 1 x Built-In 64GB eMMC
  • 1 x RTC Backup Battery Connector
  • 1 x Micro SD Slot
  • 1 x UART for System Console
  • 2 x System LED Indicators



Have some info to add for this board? Edit the source for this page here.

Adafruit Blinka Installation

We use a special library called adafruit_blinka (named after Blinka, the CircuitPython mascot) to provide the layer that translates the CircuitPython hardware API to whatever library the Linux board provides.

For example, on Raspberry Pi we use the python RPi.GPIO library. For any I2C interfacing we'll use ioctl messages to the /dev/i2c device. For SPI we'll use the spidev python library, etc. These details don't matter so much because they all happen underneath the adafruit_blinka layer.