This is a page about Grinn’s Genio 700 (MT8390) based GenioBoard.
Availability
Kit:
- GGC0.700.4G.16G.E at DigiKey
Vendor Documentation
- Grinn GenioBoard: https://www.genioboard.com
- Grinn wiki: https://wiki.grinn-global.com/products/genio/index.html
- MediaTek Genio 700 (MT8390): https://genio.mediatek.com/genio-700
- Operating Systems: https://genio.mediatek.com/genio-700#operating-systems
- IoT Yocto v25.1.1 - 2026 Mar 16: https://mediatek.gitlab.io/aiot/doc/aiot-dev-guide/master/sw/yocto/release-notes/iot-yocto-v25.1.1-release-note.html
Basic Requirements
- Running a recent supported release of Debian, Fedora or Ubuntu on a x86 64bit based PC; without OS Virtualization Software.
- Many of the listed commands assume /bin/bash as the default shell.
- Kernel.org Cross Compilers – https://mirrors.edge.kernel.org/pub/tools/crosstool/
- Bootloader
- Das U-Boot – the Universal Boot Loader: http://www.denx.de/wiki/U-Boot
- Source: https://github.com/u-boot/u-boot/
- Linux Kernel
- Linus’s Mainline tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
- ARM based rootfs
- Debian: https://www.debian.org
Host System install (docker)
Install docker from your distributions, this will be used to build the yocto example images.
#user@localhost:~$
sudo apt update ; \
sudo apt-get install docker.io docker-compose
Add yourself as a docker user if you haven’t done before and reboot.
#user@localhost:~$
sudo usermod -aG docker ${USER}
Host System install (kas)
Install kas kas tool set, this tool is a wrapper around bitbake based projects:
#user@localhost:~$
sudo apt update ; \
sudo apt-get install kas
Host System install (fastboot)
Install Androids’s fastboot/adb tool set, these tools will be used over the USB connection to interface with the EVM.
#user@localhost:~$
sudo apt update ; \
sudo apt-get install android-tools-fastboot android-tools-adb
Host System install (genio-tools)
The Genio tools are a set of utilities to flash, control, and configure MediaTek boards, these build off Android’s fastboot.
#user@localhost:~$
sudo apt update ; \
sudo apt-get install pipx ; \
pipx install genio-tools
Test genio-config:
#user@localhost:~$
genio-config
#genio-config test Output:
fastboot: OK
udev rules: OK (md5: a3b2767b42ee01d7c62bf394400528ae)
Serial device write access: OK
If udev fails:
#user@localhost:~$
echo -n 'SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", ATTR{idProduct}=="201c", MODE="0660", TAG+="uaccess"
SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", ATTR{idProduct}=="0003", MODE="0660", TAG+="uaccess"
SUBSYSTEM=="usb", ATTR{idVendor}=="0403", MODE="0660", TAG+="uaccess"
SUBSYSTEM=="gpio", MODE="0660", TAG+="uaccess"
' | sudo tee /etc/udev/rules.d/72-aiot.rules
Reload udev:
#user@localhost:~$
sudo udevadm control --reload-rules
sudo udevadm trigger
Yocto Base Image:
Create a new directory and the clone the repository.
#user@localhost:~$
mkdir -p ./build/
cd ./build/
git clone https://github.com/grinn-global/meta-grinn-genio.git
Build the default image:
#user@localhost:~$
KAS_MACHINE=grinn-genio-700-sbc \
KAS_CONTAINER_IMAGE_DISTRO=debian-bookworm \
kas-container build meta-grinn-genio/kas/default.yml
Write image to board:
Optoins:
#user@localhost:~$
genio-flash --list-dtbo
List of available DTBO:
( * items are automatically loaded )
camera-imx214-csi0.dtbo
audio-sof.dtbo
display-dp.dtbo
camera-imx214-csi0-imx214-csi1.dtbo
* apusys.dtbo
camera-imx214-csi1.dtbo
display-hdmi.dtbo
* video.dtbo
wifi-bt-sdio-murata-1zm.dtbo
Load hdmi:
#user@localhost:~$
genio-flash --load-dtbo display-hdmi.dtbo
Serial Console:
#user@localhost:~$
tio -b 921600 /dev/ttyUSB0