Posts Tagged ‘ubuntu’

NanoPi NEO Board Gets Armbian Debian 8 & Ubuntu 16.04 with Linux 4.6 & 4.7 (Mainline), h3consumption Power Consumption Tool

August 23rd, 2016 10 comments

We’ve been blessed with a wide range of low cost Allwinner H3 boards thanks to Shenzhen Xunlong Orange Pi and FriendylARM NanoPi boards. Recently, armbian developers have been focusing on NanoPi NEO board, and they’ve now released Debian Jessie and Ubuntu Xenial with Linux 4.6.7 and Linux 4.7.2. The latter is mainline kernel with some patchsets for Ethernet.

FriendlyARM_NanoPi_NEO_BoardYou can download the Linux 4.6.7 based “beta” images from armbian NanoPi NEO page, and selected the “Vanilla” versions, then flash then one a micro SD card as you would normally do. Linux 4.7.2 based “experimental” images with USB OTG support and schedutil cpufreq governor can be found on the separate server in a temporary directory.

Thomas Kaiser explains further:

Ethernet and throttling are working (the latter not as efficient as with legacy kernel but at least it protects the SoC from overheating). Please note that all vanilla kernel images currently suffer from random MAC addresses on reboot so better choose a static IP address configuration. Also keep in mind that current cpufreq scaling settings in mainline kernel don’t know the 912 MHz operating point so with our default /etc/defaults/cpufrequtils contents you end up with 816 MHz max cpufreq (feel free to adjust, throttling works with these images).

You can test the schedutil cpufreq governor in Linux 4.7, by changing /etc/default/cpufrequtils to something like:

They have not released equivalent “Vanilla” images for Allwinner H3 Orange Pi boards, but I guess it will done once NanoPi NEO images are proven to be working reasonably. Eventually, you’ll be able to download the Linux kernel directly from for your Allwinner H3 boards. I’ve been told this won’t happen in Linux 4.8, but I’d assume Linux 4.9 or 4.10 are realistic targets.

Since NanoPi NEO board has been designed for IoT applications with low load too, armbian community has also investigated how to lower power consumption, and after finding that disabling Ethernet PHY saved 200 mW, and disabling HDMI and the GPU 210 mW, they created a new tool (bash script) called h3consumption, and working on all Allwinner H3 boards. You can find more power savings tips and h3consumption options in the forums.

Magic Device Tool Helps You Switch Between Android and Ubuntu on Supported Phones

August 19th, 2016 5 comments

There have only been a few phones released with or supporting Ubuntu so far, and those phones will normally be able to run Android too since Ubuntu Touch relies on Android drivers, and you may decide that Ubuntu is not for you and switch back to Android, or the contrary, if you’ve purchased an Android phone, you may want to install Ubuntu instead. In order to simplify the task of installing operating systems, Marius Quabeck has developed “Magic Device Tool“.

Magic_Device_ToolAs you can see from the screenshot above, 13 phones and tablets are currently supported. You’ll need a computer with Ubuntu 15.04 or greater to install the tool, and I’ve done so on Ubuntu 16.04:

The script will also install phablet-tools if it is not already installed,  so if you are not root, you’ll need your account to be member of sudoers. Once the initial setup is done, you’ll get to choose your phone as shown in the first screenshot. I don’t own any in that list, but I selected LG Nexus 5 to give it a try.

Nexus_5_Android_UbuntuYou’ll be asked whether you want to install Ubuntu, OpenStore alternative app store for hacks, developer tools and app previews, Cyanogenmod 13, the Android factory Image, TWRP recovery, or instead lock or unlock the bootloader. I selected [1] Install Ubuntu -> [1] Choose a channel to flash (Will remove existing apps/data) -> [1] stable, and the flash procedure was about to go ahead:

You’d need your Nexus 5 phone connected to your PC via a USB cable to complete the procedure, but I canceled since I don’t own the hardware required (yet).

The utility can also install PhoenixOS on some phones, and it will soon be improved to include an Android backup/restore option, so you can reflash Android will all your settings and apps.

Via and Ubuntu Australia on G+

Intel Unveils Joule Compute Module and Devkit for IoT based on Atom T5500 & T5700 Processors

August 17th, 2016 8 comments

As the Intel Developer Forum 2016 is now taking place in San Francisco, Intel has unveiled the Joule Compute Module and development kit targeting IoT applications. The module is not for low cost and low power sensor nodes however, as it features a powerful quad core Atom processor running at 1.5+ GHz, so it more suited to IoT gateways, or other application requiring lots of processing power to handle sensor data.

Intel-JouleTwo models of the Joule module have been introduced:

  • Intel Joule 570x platform
    • SoC – Intel Atom T5700 64-bit quad-core processor @ 1.7 GHz / 2.4 GHz (Burst frequency) with Intel HD Graphics with 4K video capture and display
    • System Memory – 4GB LPDDR4 RAM
    • Storage – 16GB eMMC memory
    • Connectivity – 802.11ac Wi-Fi with MIMO and Bluetooth 4.1
    • Other interfaces –  USB 3.0, MPI CSI and DSI interfaces, and multiple GPIO, I2C, UART interfaces
  • Intel Joule 550x platform
    • SoC – Intel Atom T5500 64-bit quad-core processor @ 1.5 GHz with Intel HD Graphics with 4K video capture and display
    • System Memory – 3GB LPDDR4 RAM
    • Storage – 8GB eMMC memory
    • Connectivity – 802.11ac Wi-Fi with MIMO and Bluetooth 4.1
    • Other interfaces –  USB 3.0, MPI CSI and DSI interfaces, and multiple GPIO, I2C, UART interfaces

Both modules run Ostro Linux-based OS – built with the Yocto Project – tailored for IoT and smart devices, and support Intel RealSense cameras and libraries. Intel also mentions that “Developers can choose to develop on Ubuntu/Ubuntu Core (Snappy) or Microsoft Windows 10 IoT Core”.

The modules are already used to develop several products and demos including PivotHead smart glasses used by Airbus for quality control, Vstone bartending robot featuring a RealSense camera to track a person’s face, Eyelights highway patrol motorcycle helmet display used to read license plates, Microsoft Bamboo robotic companion to help parents of children with diabetes, Canonical robots to demonstrate Ubuntu Core and the Robot Operating System (ROS), as well as Gumstix custom carrier boards for Joule Compute Module.


Intel will offer a developer kit for each version of the Joule module, but currently on Joule 570x developer kit can be purchased through partners such as Mouser and Newegg for $370, and Joule 550x devkit will be launched on Q4 2016.

Joule 570x devkit specifications:

  • Joule module based on Intel Atom T5700 processor with 4GB RAM (PoP), 16GB storage, 2x 100-pin connectors
  • Storage – micro SD slot
  • Video Output – micro HDMI port
  • USB – 1 x USB 3.0 port, 1x USB 3.0 type C OTG port
  • Camera – 2x 4-Lane MIPI CSI Connectors
  • Expansion – 2x 40 pin females header with 3.3V (5V tolerant) signals for I2S, digital microphone, PCIe, I2C, RTC, SPI, SDIO, UART, PWM, GPIOs, MIPI DSI…
  • Debugging – 1x micro USB port for serial console
  • Power – 12V via Power barrel
  • Dimensions – Joule module: 48 x 24mm

Beside the board and module, the kit includes a micro-SD card, a type-A to type-C micro USB cable, two Wi-Fi antennas, and a heatsink and fastener. The board will run Ostro OS with Linux 4.4 and application framework for Node.js, Python, and C/C++ applications. The “BIOS” will be an open source UEFI implementation. Software development tools include Intel XDK IoT Edition and Intel System Studio IoT Edition, Intel RealSense API support, and Intel IoT Developer Kit.

While you can get the devkit right now, Intel Joule 570x and 550x platforms will only become broadly available in Q4 2016 at an undisclosed price. They will be available is over 100 countries by the end of Q4 including the United States, Canada, Japan and most of Europe. More details can be found on Intel Joule IDF page.

SZTomato TVI Amlogic S905X Development Board to Support Android 6.0, OpenELEC 7.0, and Ubuntu 16.04

August 16th, 2016 11 comments

Shenzhen Tomato has been selling Android TV boxes for a few years now, but one of their next product will be a development board based on Amlogic S905X processor with 8GB flash, 2GB RAM, and the usual 40-pin Raspberry Pi header.

Click to Enlarge

“VIM3316” Board – Click to Enlarge

SZTomato TVI development board specifications:

  • SoC –  Amlogic S905X quad core ARM Cortex-A53 @ up to 2.0GHz with penta-core Mali-450MP GPU @ 750 MHz
  • System Memory – 2GB DDR3 (1GB or less as option)
  • Storage – 8GB Samsung eMMC flash (other capacities as option)  + micro SD slot
  • Video & Audio  Output – HDMI 2.0a up to 4K @ 60 Hz
  • Connectivity – Fast Ethernet port, 802.11 b/g/n WiFi and Bluetooth 4.0 (Ampak AP6212) with IPEX connector
  • USB – 2x USB 2.0 host ports with 500mA fuses, 1x USB type C port for power and USB devices (no video)
  • Expansion header – 40-pin Raspberry Pi compatible header with USB, UART, I2C, ADC, PWM, JTAG, I2S, and GPIOs
  • Misc -Blue & red LED, dual channel IR, power/function/reset keys, header for RTC battery
  • Power Supply –  5V via USB type C or extra header with 2.5A fuse
  • Dimensions – 82.0 x 57.5 x 11.5 mm
Click to Enlarge

Click to Enlarge

The company will provide support for Android 6.0, OpenELEC 7.0 and Ubuntu 16.04, and source code will be provided to customers.

The bad news is that the board will only be sold to companies purchasing in volume, not to hobbyists. The company told me they already have engineering samples, and accept order from OEM/ODM customers. Price has not been disclosed publicly, but I’m guessing it should probably be around $40 or less. [Update 24/08/2016: More info can now be found on TVi product page. They have four versions: TVi, TVi Lite, TVim and TGVim with different memory, storage, and wireless configurations]

How-to Setup a DLNA/UPnP Server in Linux for Smoother Video Streaming with Kodi and Other Media Players

August 16th, 2016 8 comments

I’m normally playing videos from a SAMBA share installed in a Ubuntu PC to play files from Kodi in Android TV box reviews, but sometimes when I use 10/100 Ethernet, or worse WiFi local “streaming” may not be as smooth as possible. SAMBA is convenient because of access control and read write operations, but if you want to get a bit more performance, you may switch to NFS instead, or like I’ve going to show you here to a DLNA / UPnP server to stream videos locally from Kodi 16.1.

There are several options, but MiniDLNA is lightweight compared to MediaTomb, so it will also run on lower end hardware like cheap ARM Linux development boards like Raspberry Pi, Orange Pi, or NanoPi NEO without taking too many resources.

Installation is very easy in Debian / Ubuntu distributions, and I supposed this should also work with Windows Subsystem for Linux in Windows 10:

MiniDLNA can be configured with the same settings for all users, or different settings for specific users. In both case you’ll need to edit /etc/minidlna.conf configuration file. In my case, I only changed or uncommented the following lines for global settings:

You can add as many media_dir lines as you want, and also add A, V or P letter to separate Audio, Video, and Photo media type. For example:

Please note that minidlna daemon (minidlnad) will automatically scan subdirectories, so they don’t need to be specified.

Now that we have modifed the configuration, let’s restart it:

The Wiki on Ubuntu linked in the introduction also mentions to run the following command to rebuild the database:

However, while I could find my new UPnP server in Kodi, there were no files at all, and the log shows the same error message over and over:

eventually the command:

fixed the issue. But that’s not exactly the right way to fix it as it assumes root is running the daemon.

A better way if you’re going to have a decidated server is probably to set the ownership of media files to minidlna with a command like:

So how do you play videos from your DLNA/UPnP server in Kodi 16.1? Go to Videos->Files, and select Add videos…

Kodi_UPnP_devicesNow select UPnP devices

Kodi_miniDLNA_serverKodi should like your UPnP / DLNA servers. In my case FX8350:root, which correspond to the hostname or friendly_name in the hostname, and to the user, normally minidlna. Select the server, than Browser Folder, or Videos, and click OK.

I’ve shot a short video showing how to setup UPnP devices in Kodi, and compare SAMBA and DLNA performance by playing the same video file in Kodi 16.1 Android through SAMBA and UPnP/DLNA.

You’ll notice the video played from the SAMBA server starts much faster, but buffers several time during playback, while the video played from MiniDLNA server on the same PC will buffer data longer at start, and always fill the buffer fast enough to avoid bufferring.

I took Conky screenshots for another video showing the traffic shape for both SAMBA with relatively constant speed (6600 KB/s to 7400 KB/s) and DLNA which shows very high bitrate (>10000 KB/s) to fill the buffer the first time, and then play consistently around 6400 to 6800 KB/s.


Of course switching from SAMBA to DLNA won’t do miracles, but if you notice a few buffering while playing videos in SAMBA, switching to DLNA/UPnP may resolve the issue. You can also keep the best of both world, for example using SAMBA to download/copy files, and DLNA to play them back.

How to Resolve Slow Boot Times in Ubuntu 16.04

August 9th, 2016 9 comments

I’ve recently upgraded my machine from Ubuntu 14.04.4 to Ubuntu 16.04.1, but while my computer used to boot in about 40 seconds, after the upgrade boot times increased considerably to 2 to 3 minutes.
Ubuntu_16.04_Boot_timesThe first easy check was to look at dmesg:

There’s a bit 87 seconds gap between checking for the floppy, and VirtualBox drivers loading. So there’s definitely an issue here, but the log does not exactly give a clear queue.

I’ve read you could use systemd-analyze to find which process(es) may be slowing down your computer at boot time:

Two processes are taking close to 8 seconds, but those 16 seconds still do not explain why it takes 2 minutes more to boot…Eventually, I realized systemd-analyze has a few more tricks up its sleeves:

The first command shows there’s no problem with the kernel itself, and something is slow in user space. The second command draws a huge boot chart (SVG), whose shape looks like the picture below.

ubuntu_16.04_BootchartSo we have something to look at, namely the area just before the large gap… I’ve zoomed in on it:

Ubuntu_16.04_Bootchart_ProlificThere are a few things there including the DVDROM drive, and “Prolific Technology Serial Controller” connected to /dev/ttyUSB0. The latter is a USB to TTL debug board based on PL2303, so I removed it and rebooted my machine, and miracle! Boot time was reduced to just 17 seconds:

Ubuntu_16.04_Fast_Boot_TimeThe SVG chart shape, shown on the right, also changed completely as it booted most of the same services in much less time. So since I don’t use the debug board everyday, I’ll make sure I only connect it when needed.  Ideally, I suppose a bug should be filled, but I’m not sure which package cause the issue.

On a rather unrelated note, yesterday I also decided to look into Firefox performance issues (switching or closing tabs would take 2 to 3 seconds), and I discovered recent versions of Firefox browser (47+ and greater) include support for “about:performance” tab showing which add-on(s), plugin(s), or page(s) may be problematic. Just let it run for a while, and go about your business browsing the web, and then come back to the tab to check if any has many alerts. It helped me find an add-on slowing down browsing considerably, so I disabled it, and performance is now much better.

Minimal Ubuntu 16.04 Image for ODROID-C2, and C1/C1+ Boards, Ubuntu Core Image for Bubblegum-96 Board

August 5th, 2016 1 comment

If you’ve been wanting minimal Ubuntu distributions for your server, IoT, or other headless projects, there are some good news from Hardkernel with the release of a minimal Ubuntu 16.04 image for ODROID-C2 and ODROID-C1+ boards, and Canonical has recently announced Actions Semi S900 based BubbleGum-96 board was getting support for Ubuntu Core distribution.


If you’re using an ODROID board you can download ubuntu64-16.04-minimal-odroid-c2-20160803.img.xz (196MB) firmware, which become 1.7 GB once uncompressed and flash it 2GB or greater micro SD card.

After Raspberry Pi 2 and Samsung Artik 5/10, Bubblegum-96 is the third officially supported board that can run Ubuntu Core. You can download the 3.63GB beta image and instructions to flash it from an Ubuntu 16.04 machine on Mega. Bugglegum-96 is a 96boards compliant development board based on an quad core Cortex A53 processor with 2GB RAM and 8GB flash manufactured and sold by ucRobotics for $89.

ucRobotics Bubblegum-96 Boards

ucRobotics Bubblegum-96 Boards

Ubuntu 16.04.1 ISO Images Released for Intel Atom Bay Trail & Cherry Trail Compute Sticks

August 4th, 2016 10 comments

Canonical has recently released Ubuntu 16.04.1, which is now considered stable enough to update from Ubuntu 14.04.04 LTS, and while I could do that easily on my main machine using update-manager, upgrading to Ubuntu 16.04 on Intel Atom “Bay Trail” and “Cherry Trail” devices is a bit more complicated if you need audio & wireless networking (WiFi/Bluetooth) support since the kernel needs to be patched, and on top of that recent Linux kernels are not stable on such platforms without some extra hacks.

Ubuntu_16.04.1_Compute_StickLinuxium has done all the hard work, and created Ubuntu 16.04.1 ISO images for Intel Atom Compute Sticks with working audio, WiFi, Bluetooth, and “C-state” patchsets to avoid freezes. The images may also work on other devices, but this has not been tested so far.

If you want to give it a try, you can download ubuntu-16.04.1-desktop-linuxium-ics.iso, and flash it to a USB drive with Rufus (Windows) or dd (Linux) just like any other Ubuntu ISO images.

If you prefer different or more lightweight distributions, you’ll find Lubuntu 16.04.1, Xubuntu 16.04.1, Kubuntu 16.04.1, Ubuntu Gnome 16.04.1, and Ubuntu MATE 16.04.1 on Linuxium website.