We’re glad to release our first Debian Buster image for Nitrogen8M board. Since this board supports only Wayland graphical backend, the system is simpler than earlier systems with i.MX6.
We use Weston, the reference Wayland compositor in this system.
This image is a console developer image also, it boots to the command prompt. Weston compositor could be started manually or you can set autostart the service, as per your preference.
This system contains NXP/Freescale licensed content, so you will need to register on our web-site and log in before you can accept the license agreement and download the images from here:
- 20191028-nitrogen8mq-4.14.x_2.0.1_ga-buster-en_US-console-weston_aarch64_fastboot_8G.tgz (LABEL : sys-0Dh)
- debian@buster-dev64:~$ sha1sum -b *img
- 20191028-nitrogen8mq-4.14.x_2.0.1_ga-buster-en_US-console-weston_aarch64.img.gz (LABEL : sys-0Dh)
- ubuntu@bionic-dev64:~$ sha1sum -b 20191028*.img.gz
Before installing this image please check your U-Boot version as it requires U-Boot version 2018.07 to be used.
Make sure to visit our wiki if you need to upgrade:
You can find the bootscript in the
/boot subdirectory now, its named
boot.scr. The partition labels are set if you use the fastboot method.
If you use your own method please check the boot partition labels, because the fstab boots by label (LABEL=sys-0Dh for example) now. You can use e2label to modify partition label.
Programming the image
Since the Nitrogen8M board has no SD card slot, you need to program this image in the same way as an Android system: by using fastboot.
Please install the following packages on your desktop PC, Debian or Ubuntu :
$ sudo apt update $ sudo apt install fastboot android-tools-fastboot
To avoid using
sudo for each command, please download the following file and move it to the /lib/udev/rules.d directory, then reboot your PC:
Now connect your Nitrogen8M board’s J67 USB OTG port to your PC’s USB port.
Use regular USB2.0 OTG cable do not use USB3.0 cable (as it seems to be problematic with U-Boot).
Connect the Nitrogen board’s RS232 console to your PC so you can communicate with the board.
You can then power up the Nitrogen8M board, and stop the u-boot execution by pressing any key. Then type:
Hit any key to stop autoboot: 0 => fastboot 0
Now test the USB connection on the PC, please type on the PC:
$ fastboot devices -l <some MAC address> fastboot usb-x:y
If you get the above response, a MAC address , the word fastboot, then the USB device:id numbers, the communication is OK.
Now type on PC:
$ fastboot flash gpt gpt_8G.img $ fastboot flash rootfs rootfs_8G.simg
, then wait till its completed, until the PC side prints:
$ finished, total time: 584.109sec
When its done you can disconnect USB cable, and restart your Nitrogen8M board.
Note that you can also use fastboot from a Windows Host PC, see following blog post to learn how:
Usernames and passwords
Two users are defined for use on the system:
root. The password for each is
Boundary (capital B). The user debian has administrator rights, but doesn’t need to enter password at sudo command.
We wanted to make life easier at the cost of some security. If you want to change this please type:
debian@buster-dev64:~$ sudo visudo
, and comment out or delete the last line with “debian” and “NOPASSWD:”
An ssh server is configured on the system, though it does not allow password-based authentication for user root.
User debian has sudo privileges, so you can place your ssh public key (normally $HOME/.ssh/id_rsa.pub) to the system like so :
debian@buster-dev64:~$ sudo mkdir /root/.ssh debian@buster-dev64:~$ sudo nano /root/.ssh/authorized_keys ... paste content of $HOME/.ssh/id_rsa.pub here debian@buster-dev64:~$ sudo chmod 600 /root/.ssh/auth* debian@buster-dev64:~$ sudo chmod 600 /root/.ssh/
Since the images above include our stable 4.9.x kernel, essentially everything is supported including :
- Vivante GPU accelerations for Wayland
- The Hantro Video Processing Unit supports the following decoders:
- Wi-Fi and Bluetooth modules for the built-in Silex module
- All kind of storage devices , eMMC, SATA hdd (via USB3-SATA adapter), USB3.0/2.0 pen drives, mini PCIe devices, cell modems
- All of our supported touch panels
The packaging (inluding kernel) is done in the normal debian way, so apt-get update/dist-upgrade will keep your image up and running the latest as patches come out.
What’s new in this release
The Linux kernel was upgraded to 4.14.98 ( meta-package name: linux-boundary-17b )
GPU driver was upgraded to Vivante 6.2.4p4.0 ( meta-package name: imx-gpu-viv-b16-… ).
The module galcore (CONFIG_MXC_GPU_VIV) was removed from the kernel, and it’s an externally built module. This change makes the graphics system modular, and more upgradeable, at the price of longer kernel upgrading time. Upgrading kernel takes about 3-4 minutes now, instead of 30 seconds, because every kernel upgrade rebuilds the galcore driver from sources, because its a DKMS module.
The NXP/Vivante GPU SDK was added : imx-gpu-sdk 4.0.2 . You can get the source with the usual apt-get source command. The SDK has many new demos, for example OpenCL, OpenVG, and for OpenVX and Vulkan.
The distribution is Stretch 9.5 . Here are some main component versions :
- Xorg server 1.20.4-1.1
- gstreamer1.0 1.14.4
- bluez 5.50-1.1
- apt 1.8.2
- dpkg 1.19.7
- gcc/g++ 8.3.0-6
- libwayland 1.16.0-1.1
- weston 5.0.0-3debian4
- Silex WiFi / Bluetooth is supported in Bionic also, as well as in Stretch, Xenial and Jessie.
The system boots to the command prompt, as I mentioned before. You can start Weston compositor on any tty (not ssh, not RS232) terminal by typing:
debian@buster-dev64:~$ wl or debian@buster-dev64:~$ weston-launch
If you want to start Weston at boot automatically, you have to install and enable the service, you have to type the following:
debian@buster-dev64:~$ sudo apt install weston-systemd debian@buster-dev64:~$ sudo systemctl enable weston.service debian@buster-dev64:~$ sudo systemctl unmask weston.service
If you want to disable the autostart again you need to type:
debian@buster-dev64:~$ sudo systemctl disable weston.service debian@buster-dev64:~$ sudo systemctl mask weston.service
You can find the weston.ini file in the /usr/share/weston/examples directory. Please type:
debian@buster-dev64:~$ man weston.ini
,to check the options, and feel free to modify it to suit your needs.
As always, please give us some feedback and let us know how things work for you.