Download Print this page

Advertisement

Quick Links

MA35H0 Buildroot Quick Start
| Photo by Jeffery Cheng
| Photo by Jeffery Cheng
NuDeveloper Ecosystem – Make the engineers' job easier.
NuDeveloper Ecosystem – Make the engineers' job easier.

Advertisement

loading
Need help?

Need help?

Do you have a question about the MA35H0 and is the answer not in the manual?

Questions and answers

Summary of Contents for Nuvoton MA35H0

  • Page 1 MA35H0 Buildroot Quick Start NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier. | Photo by Jeffery Cheng | Photo by Jeffery Cheng...
  • Page 2 Agenda  Overview  Environment Setup  Programming  System Boot NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 3 Overview NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 4 Operation System: Linux OS or Linux Virtual Machine (VMware provide by Nuvoton) 。 A MA35 series Docker container If you used VMware provide by Nuvoton, you have already created a MA35 series Docker container  Software Tool 。 Programming –...
  • Page 5 VMware Setting NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 6 Start up with VMware  This VMware Image offers a Linux development environment for MA35 series. If you utilize the VMware Image, you can bypass the Docker steps for building the Image  User Name: user Password: user  Buildroot: $ cd ~/buildroot/MA35D1_Buildroot ~/MA35D1_Buildroot$ git pull NuDeveloper Ecosystem –...
  • Page 7 Docker Environment Setup NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 8 Development Environment – Docker • Docker enables the packaging of code and its dependencies into containers. • Each container is independent and based on the host OS, ensuring they operate in isolation without impacting each other. Containers run more efficiently than virtual machines, resulting in faster performance Container1 Container2...
  • Page 9: Environment Setup

    Environment Setup (1/4)  The necessary packages must be installed before building  Ubuntu and Debian $ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \ build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \ xz-utils debianutils iputils-ping libsdl1.2-dev xterm curl NuDeveloper Ecosystem –...
  • Page 10 Environment Setup (2/4)  This demo is under Ubuntu distribution. If you use virtual machine, ensure your RAM at least 5GB  Update existing list of packages $ sudo apt-get update  Install a few prerequisite packages which let apt use packages over HTTPS $ sudo apt install apt-transport-https ca-certificates curl software-properties-common ...
  • Page 11 Environment Setup (3/4) Update the package database with the Docker packages from the newly added repo $ sudo apt-get update Install Docker $ sudo apt-get install docker-ce docker-ce-cli containerd.io Download the Docker Script for MA35D1 $ git clone https://github.com/OpenNuvoton/MA35D1_Docker_Script.git NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem –...
  • Page 12 Environment Setup (4/4) Enter docker-yocto folder, build docker image.It may take one hour to get about 710 files $ ./build.sh Enter docker image, and your command line head will be like nuvoton@a24d9e06abe3:~$ $ ./join.sh ma35d1_user nuvoton@a24d9e06abe3:~$ NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 13 Environment Setup NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 14  Enter Docker container $ ./join.sh  Download MA35D1 Buildroot (No need to clone with VMware provided by Nuvoton) $ git clone https://github.com/OpenNuvoton/MA35D1_Buildroot.git $ git pull NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 15: Set Default Configuration

    Set default Configuration  List all default configurations provide by Nuvoton and choose your target board configuration $ ls configs/n*  Set configuration to the target board $ make numaker_hmi_ma35h04f70_defconfig NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 16 Install Qt5 Package  Open Buildroot configuration $ make menuconfig Target packages ---> qt5multimedia Graphic libraries and applications ---> qt5script [*] Qt5 ---> qt5sensors -*- qt5base qt5serialbus Compile and install examples (with code) qt5serialport gui module widgets module linuxfb support fontconfig support GIF support JPEG support...
  • Page 17 Install Gstreamer Related Package Target packages ---> -*- gst1-plugins-base ---> -*- gst1-plugins-good ---> Audio and video applications ---> [*] audioconvert [*] audioparsers [*] gstreamer 1.x [*] playback [*] auparse -*- enable unit test libraries [*] audioresample [*] autodetect [*] enable command-line parser -*- typefind [*] avi (*.avi video) [*] enable tracing subsystem...
  • Page 18 Compile and Install Package into Image  If you do not need to install any additional packages to the MA35H0 image, you can start building it $ make NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 19 Building Finishing  Once the build is complete, you can find the resulting image at /output/image  The core-image-buildroot-ma35h0-hmi-128m.rootfs.sdcard can be used to directly program to an SD card  Alternatively, pack-core-image-buildroot-ma35h0-hmi-128-sd.bin can be used to program an SD card through NuWriter NuDeveloper Ecosystem –...
  • Page 20 Programming NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 21 Image Programming  Usually, you would use NuWriter for MA35 to program the image, but for debugging purposes, you can also program the image to SD card using a writing tool by PC  One open-source utility that can be used for writing image files is balenaEtcher, which you can use to program the image NuDeveloper Ecosystem –...
  • Page 22 Evaluation Board Introduction   Debug Port: Show the debug message Reset Button: Reset IC   USB Device: Used to program image by NuWriter RTC Button: Wake up RTC  Power-On Switch: Switch booting source Input Power Card Slot Card Slot Power-On Switch...
  • Page 23: Start Programming

    Click the RTC button, reset button, and you will see the debug message Noted: It indicates MA35D1 IBR 20211029 since MA35H0 utilizes the same bootloader code NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 24 NuWriter Programming  Choose DDR file ddrimg/MA35H04F764C.bin  Click Attach button, you will see the message below NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 25 NuWriter Programming  Switch to Download and choose SD/EMMC  Browse pack-core-image-buildroot-ma35h0-hmi-128m-sdcard.bin  Enable Pack mode  Click write button to start programming NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 26: System Boot

    System Boot NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 27 System Boot  Switch power on setting to enable SD 1 Boot, click reset Button,and you can see MA35h0 booting 。 [PG 0] [PG 2] High  Enter “root” to login NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.
  • Page 28 Change Compiling Image from D1 to H0  Change board configuration from D1 to H0 and start to compile 。 Update the Buildroot $ git pull 。 Remove the old source code from dl folder $ rm –rf dl/ 。 Clean all the file you have built for MA35D1 $ make clean 。...
  • Page 29 MA35H0 RAM Status  MA35 series available ram size table MA35H0 (128 MB) MA35D1 (256 MB) Yocto (Linux with systemd) 24 MB 92 MB Buildroot(Linux with busybox) 47 MB 116 MB  MA35 series reserved part of memory for video decoding and display buffer ...
  • Page 30 NuDeveloper Ecosystem – Make the engineers’ job easier. NuDeveloper Ecosystem – Make the engineers’ job easier.