Quantcast
Channel: Boundary Devices
Viewing all articles
Browse latest Browse all 391

Ubuntu Trusty for i.MX6 boards – September 2014

$
0
0
We’ve just uploaded a new image of Ubuntu Trusty for our i.MX6 boards that contains some nice new features that deserve some explanation.

Since the the initial release contains proper packaging, you could upgrade using sudo apt-get update, sudo apt-get dist-upgrade, and sudo apt-get install of a couple of packages (chromium-webgl and nitrogen-firmware). This is a little inconvenient, though, and an updated image is easier.

For the impatient

This image contains 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 image from here:

This image contains support for all of our publicly available i.MX6 boards, though using it with the Nitrogen6 Lite requires a couple of tweaks (described below).

Programming the image

The image is a slightly-less-than-4GiB image file containing the partition table, so you can copy it to an SD card or SATA drive on /dev/sdc using zcat and dd like so:
~/Downloads$ sudo umount /dev/sdc*
~/Downloads$ zcat 20140925-nitrogen*.img.gz | sudo dd of=/dev/sdc bs=1M
~/Downloads$ sync
Or you can use Alex Page’s USB Image Tool under Windows.

If you’re using our latest U-Boot and a Nitrogen6 Max board, you can use the new USB Mass Storage Gadget to program the eMMC. If not, there were some notes in our first release that describe a more complicated way of programming eMMC.

Source code access

The kernel image is based on the boundary-imx_3.10.17_1.0.1_ga branch of our Github kernel repository using nitrogen6x_defconfig, tweaked slightly to include support for the Broadcom 4331 Wi-Fi/Bluetooth module on our Nitrogen6 Lite board.

Highlights of this release

Chromium Browser acceleration

Several Desktop shortcuts highlight support for various features of the Chromium Browser.


WebGL:




And HTML5:




And HTML5 video acceleration.



Note that H.264/MP4 video is not yet working.

Many thanks to Carlos Giani for all of his hard work integrating i.MX acceleration into the Chromium browser.

Bluetooth support on Nitrogen6x/6Max

On the Nitrogen6X and Nitrogen6_Max boards, the Bluetooth stack is fully integrated using the BlueMan package, as shown in the following screen-shot:



Using this image on Nitrogen6_Lite

There are a few quirks to the use of this image on Nitrogen6 Lite.

In particular:
  • The boot script requires variable dtbname in order to identify the board as a Nitrogen6_Lite,
  • The default settings of 128MiB of GPU memory are excessive, since the Nitrogen6_Lite board only has 512MiB, and
  • The Bluetooth stack is not fully integrated, and conflicts with the Nitrogen6X/6Max boards because a different chip is used.
We have a fairly easy work-around for the first two in the form of a text file named /uEnv-nit6xlite.txt. The boot script is configured as shown here to look for a file named uEnv.txt and read a set of environment variables from the file if found using the env import command of U-Boot.

If you re-name or copy the file uEnv-nit6xlite.txt to uEnv.txt on the SD card after you copy from the image downloaded, you’ll tell U-Boot to read these two variables:
gpumem=67108864
dtbname=imx6dl-nit6xlite.dtb
You can also set these at the U-Boot prompt by using the setenv command, but that’s just a tad harder, and requires access to a serial adapter:
U-Boot > setenv gpumem 67108864
U-Boot > setenv dtbname imx6dl-nit6xlite.dtb
U-Boot > saveenv
The Bluetooth conflict is overcome by manually installing a package named brcm-patchram-plus-boundary that has the tool needed to connect the Broadcom Bluetooth device to the Bluetooth subsystem:
root@nitrogen:~# apt-get install brcm-patchram-plus-boundary 
root@nitrogen:~# sync && reboot
...
The full Bluetooth stack is not (yet) functional, though, so we’ve limited testing to the use of the command-line tools:
root@nitrogen:~# hciconfig hci0
hci0:	Type: BR/EDR  Bus: UART
	BD Address: 00:00:00:00:00:00  ACL MTU: 1021:8  SCO MTU: 64:1
	DOWN 
	RX bytes:574 acl:0 sco:0 events:27 errors:0
	TX bytes:411 acl:0 sco:0 commands:27 errors:0

root@nitrogen:~# hciconfig hci0 up
root@nitrogen:~# hcitool -i hci0 scan
Scanning ...
	C4:85:08:01:FB:E3	devicename
This is effectively the same situation we were in with the TiWi Bluetooth module in our first release, so we’re making progress!

Keep in touch

We hope this helps you get started running on Ubuntu and our i.MX6 boards.

As always, please give us some feedback and let us know how things work for you.

Viewing all articles
Browse latest Browse all 391

Trending Articles