Archive

Posts Tagged ‘debian’

$60 MarsBoard Rockchip PX2 Development Board Runs Ubuntu, Debian, openSUSE, or Android 4.4

January 10th, 2015 No comments

Haoyu Electronics has made a new board similar to their MarsBoard RK3066, but instead of using a CPU module with Rockchip RK3066, they’ve used the industrial version of the chip called Rockchip PX2 dual core Cortex A9 processor.

MarsBoard PX2 Development Board (Click to Enlarge)

MarsBoard PX2 Development Board (Click to Enlarge)

The board is also comprised of a baseboard and CPU module (CM-PX2), and based on the name of the pictures it’s using the exact same PCB: CM-RK3066 SoM, and SOM-RK3066 baseboard, but they simply replaced RK3066 by PX2, and increased the NAND flash capacity to 8GB.

  • CM-PX2 Computer-on-Module:
    • SoC – Rockchip PX2 dual core ARM Cortex A9 @ 1.4 GHz + Mali-400MP4 GPU
    • System Memory – 1GB DDR3
    • Storage – 8 GB NAND
    • Power Management Unit – TPS659102
    • Misc – TX indicator LED use for debug, Power Indicator LED
    • 10/100M Ethernet PHY – LAN8720A
    • Connectors – 2x 100- pin for baseboard connection, 40-pin connector (unsoldered)
    • Dimensions – 70 x 58 mm
  • SOM-RK3066 Baseboard:
    • Storage – micro SD card socket up to 128 GB
    • Video Output – HDMI A Type socket, LCD + capacitive touch interface
    • Audio – Headphone and speaker output, microphone (not soldered), Audio Codec IC ALC5631Q
    • Connectivity – RJ45 10/100M Ethernet
    • USB – 4 x USB 2.0 Host port, Micro USB DEBUG port (via CP2102), Micro USB OTG port
    • Misc – IR Receiver (not soldered), CR1220 battery holder for RTC, VOL+ (Recovery Key), VOL-, ESC, and Power Keys
    • Expansion Port – 2x 20 pin headers
    • Power Supply – 5V/2A
    • Dimensions – 105 x 78 mm
SOM-RK3066 Baseboard (Click to Enlarge)

SOM-RK3066 Baseboard (Click to Enlarge)

The schematics in PDF are available for both the CoM and baseboard, but the latter is also claimed to be open source hardware, and you’ll find a license file, and a DSN file in the company’s server, but no PCB layout, BoM, and other required document. Images (Ubuntu 14.04, Debian 7.7, openSUSE, Android 4.4.2), source code (Linux kernel, and Android SDK), as well as tools and documentation can be found on the download page. There you’ll notice a single image is provided for both PX2 and RK3066, so both processor are not only pin-to-pin compatible, but also software compatible.

MarsBoard PX2 is sold with a USB Wi-Fi dongle based on RTL8188EU for $60 + shipping on hotmcu.com. MarsBoard PX2 is not the only Rockchip PX2 available, and Rayeager PX2 board is another option for $99 that includes a Wi-Fi + BT module on-board, and a SATA port (via a USB to SATA chip) among other things.

Thanks to Freire for the tip.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Orange Pi Development Boards Are Raspberry Pi “Clones” based on Allwinner A20 and A31s

December 22nd, 2014 30 comments

After Raspberry Pi, Waxberry Pi, and Banana Pi boards, here come another fruit-named board with Orange Pi. There are actually three models, with Orange Pi and Orange Pi mini based on Allwinner A20, and Orange Pi Plus powered by a quad core Allwinner A31s processor.

Orange_Pi_Board

Orange Pi Board Description

I’ve drawn a comparison table with the specifications for the three models. Please note that Orange Pi Plus full specifications have not been released yet, so I don’t have all details.

Orange Pi Mini Orange Pi Orange Pi Plus
SoC Allwinner A20 dual core Cortex A7 processor up to 1GHz with Mali-400 MP2 GPU Allwinner A31s quad core Cortex A7 processor with PowerVR SGX544MP2 GPU
System Memory 1 GB DDR3
Storage 2x micro SD slot + SATA NAND Flash + micro SD slot + SATA TBD
Video Output HDMI, AV, and DSI I/F HDMI, AV, VGA, and DSI I/F HDMI, AV, and DSI I/F
Audio I/O HDMI, AV, and MIC HDMI, AV, and MIC HDMI and AV
Connectivity Gigabit Ethernet (RTL8211E/D) + Wi-Fi 802.11 b/g/n + optional Bluetooth Ethernet + 802.11 b/g/n Wi-Fi
Camera Parallel 8-bit I/F CSI connector CSI connector
USB 2x USB 2.0 host ports, 1x micro USB OTG 4x USB 2.0 ports, 1x micro USB OTG
Expansion 40-pin header 26-pin “R-Pi” header
18-pin extended interface
Misc Rest, power, and u-boot buttons
Power, Ethernet, and user LEDS
IR receiver
Rest, power, and u-boot buttons
Power, Ethernet, and user LEDS
IR receiver, RTC battery interface
Rest, power, and u-boot buttons
Power, Ethernet, and user LEDS
IR receiver
Power * 5V/2A via DC jack* 5V via micro USB OTG port * 5V/2A via DC jack
* 5V via micro USB OTG port
* Li-Po Battery
* 5V/2A via DC jack
* 5V via micro USB OTG port
Dimensions 94 x 86 mm 112 x 60 mm N/A
Weight 45 grams 60 grams N/A
Price + Shipping $42.11 $51.31 $76.37
Orange Pi Plus Board

Orange Pi Plus Board

Orange Pi boards appear to be software compatible with Banana Pi, and Banana Pi M2 boards, with support for Android 4.4, Debian, Ubuntu, Raspbian, and Scratch, and Orange Pi website is a close copy of lemaker.org, one of the companies promoting the Banana brand. They even have the same “Apply for Orange Pi“, where you can apply for a free board if you have a project, or want to help with Orange Pi “community”.

Orange Pi boards can be purchased for $42 to $76 including shipping on Shenzhen Xunlong Software Aliexpress store, which also includes cheap accessories such as a $5.90 camera.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

CubieTruck Metal Case Kit Getting Started Guide and Review

December 21st, 2014 4 comments

I’ve received CubieTruck Metal Case kit just over a month ago, but just like for Ubuntu on ODROID-XU3 Lite, the board could not get HDMI EDID info from my Panasonic TV, which led to a crash at boot time. CubieTech has now fixed the issue, so I’ve finally been able to complete the review with Cubieez (Cubie Easy) distribution, pre-installed on the board, and based on Debian 7.6. You can get the full hardware specs on my previous post, but the kits is comprised of four parts: CubieTruck development based on Allwinner A20 dual core processor, a rugged metallic enclosure, a 128GB SSD, and a 5,300 mAh battery acting as a UPS. I’ll start by showing how to setup the board, test SATA and Gigabit Ethernet performance,  check if the battery acts as expected, try to use the board as a desktop replacement with LibreOffice, Chromium, and so on, and run Phoronix Benchmark. I’ll also explain how to mvoe the rootfs from NAND flash to SSD to extract more performance from the kit.

Getting Started with CubieTruck Board

Even though the board is pre-loaded with Cubieez 2.1, it’s still good to know how to flash the image by yourself, and do the initial setup.

There are some tutorials for CuebiTruck, but the one dedicated to Cubieez is completely empty at the time of writing.

But the important part is to know that the firmware can be found @ http://dl.cubieboard.org/model/cubietruck/Image/Cubieez/ with images for HDMI or VGA output, and NAND flash or SD card boot.

So this is what I had to do to reflash Cubieez (Cubieez 2.2 has been released since then, probably with a fix with my HDMI issue):

wget http://dl.cubieboard.org/model/cubietruck/Image/Cubieez/cubieez-hdmi-v2.1/cubieez-ct-nand-hdmi-v2.1.img.7z
7z x cubieez-ct-nand-hdmi-v2.1.img.7z

You’ll need LiveSuit (Linux or Mac), or PhoenixSuit (Windows) to flash the firmware, which you can download here. I’ve already explained how to install LiveSuit to flash firmware on A80 OptimusBoard, and the procedure is the same for all Allwinner devices. Once the installation is complete simply run:

~/Bin/LiveSuit/LiveSuit.sh

And load the uncompressed image (cubieez-ct-nand-hdmi-v2.1.img) as shown below:

LiveSuit_CubieTruck

Now connect a micro USB to USB cable between your computer, and CubieTruck OTG port, press the FEL button on the right side, power on the kit, and flash should complete automatically.

Then you can just reboot the board, and it should boot into LXDE, unfortunately for me, it did not work that way, and all I could see was the boot log on my HDMI TV.  So I asked some help on CubieBoard Google group, and got some help one or two days later pointing me in the right direction. However, it may have been better to ask on Cubieforums.com, these forums are more active than on Google group.

Nevertheless, the issue was a segfault reported in /var/log/Xorg.0.log:

[    47.423] (II) FBTURBO(0): using /dev/fb0
[    47.423] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[    47.423] (**) FBTURBO(0): Depth 24, (–) framebuffer bpp 32
[    47.423] (==) FBTURBO(0): RGB weight 888
[    47.423] (==) FBTURBO(0): Default visual is TrueColor
[    47.423] (==) FBTURBO(0): Using gamma correction (1.0, 1.0, 1.0)
[    47.424] (II) FBTURBO(0): hardware:  (video memory: 16200kB)
[    47.424] (**) FBTURBO(0): Option “fbdev” “/dev/fb0″
[    47.424] (**) FBTURBO(0): Option “SwapbuffersWait” “true”
[    47.427] (II) FBTURBO(0): processor: ARM Cortex-A7
[    47.429] (EE) FBTURBO(0): Unknown EDID version 0
[    47.429]
[    47.430] Backtrace:
[    47.430]
[    47.431] Segmentation fault at address 0x8
[    47.432]
Fatal server error:
[    47.432] Caught signal 11 (Segmentation fault). Server aborting
[    47.432]

The bold line showed that my TV did not return EDID information, and fbturbo did not check for this case. So CubieTech sent me an updated fbturbo_drv.so, which I copied to  /usr/lib/xorg/modules/drivers/, and I was finally able to access the login prompt in LXDE. I believe this fix must be included in Cubieez 2.2 image.

You can login with cubie / cubieboard, or root / cubieboard. I normally prefer running the system as a user, and run sudo when needed, so I logged in with cubie user.

Cubieez

Cubieez LXDE Desktop (Click for Original Size)

Cubieez features LXDE running on top of Debian 7.6 with Linux 3.4.79, and the default resolution is set to 1080p50, but you can click on Monitor Settings to change the resolution as needed.

The README recommends to run cubie-config in LXTerminal the first time, so let’s do that.

Cubie_configExpand Filesystem is only used for SD card images. Internationalisation Options lets you change the locale, timezone, and keyboard layout, and you can change the hostname, and enable/disable SSH in Advanced Options. Once you;’re done, select Finish, and you may have to reboot.

You’ll probably want to install some packages with apt-get or the Software Center, but the repositories are set to Spanish mirror, and changing the mirrors to one in your country may speed up download a lot. Changing from Spain to Thailand, increased the download speed with apt-get by 10 times in my case.

You can find the list of mirrors @ https://www.debian.org/mirror/list, once you have found the right mirror for your country, edit the source list:

sudo vi /etc/apt/sources.list

And replace

deb http://ftp.es.debian.org/debian stable main contrib non-free
deb http://ftp.debian.org/debian/ wheezy-updates main contrib non-free

by your country’s mirror. For example:

deb http://ftp.th.debian.org/debian stable main contrib non-free
deb http://ftp.th.debian.org/debian/ wheezy-updates main contrib non-free

Finally refresh the system with:

sudo apt-get update

You may want to install your favorite programs, for example:

sudo apt-get install libreoffice gimp nautilus

I found some XMBC binaries for an earlier version of Cubieez, that you need to extract to the root of the system. You have to install some dependencies, then run XBMC as shown below:

sudo apt-get install libssh-4 libmicrohttpd10 libtinyxml2.6.2 libyajl2 liblzo2-2 libpython2.7 libpcrecpp0 libhal1 libhal-storage1
/allwinner/xbmc-pvr-binhf/lib/xbmc/xbmc.bin

But unfortunately XBMC will crash, so this version is not suitable for Cubieez 2.1/2.2.

Finally, the SSD included in the kit is not partitioned nor formatted, so it’s also something you’ll want to do, but I’ll explain that in the next section.

SSD SATA Performance and Gigabit Ethernet

CubieTruck is certainly not one of the fastest ARM Linux system currently available, but its SATA interface and Gigabit Ethernet port could make it one of the best platform for storing and moving data around.

First let’s prepare the SSD for testing. Most people will make a single partition, but since the SSD may be use for Android SATA testing as well in the future, I’ve create two partitions, one formatted with NTFS and the other with EXT-4. To create the partitions, start a Terminal windows in CubieTruck, and type:

sudo fdisk /dev/sda

Now create primary partition(s) with by selecting ‘n’,  and type the start and end of the partition. If you want a single partition, that’s easy as fdisk will select the start and end for you, and you can just press enter to confirm the choice. Finally press ‘w’ to write the partition table and exit.

Format your partitions are needed, and in my case:

sudo mkfs.ntfs /dev/sda1
sudo mkfs.ext4 /dev/sda2

The SSD is now ready. Let’s mount the partitions:

sudo mkdir -p /mnt/sda1
sudo mkdir -p /mnt/sda2
sudo mount -t ntfs /dev/sda1 /mnt/sda1
sudo mount -t ext4 /dev/sda2 /mnt/sda2

In Linux, I’m normally using Bonnie / Bonnie++ to benchmark storage device:

sudo apt-get install bonnie++

By default, bonnie will write a file with double the size of your RAM to perform its testing, which is a way to reduce the influence of the cache, and provide more accurate results.

bonnie++ -d /mnt/sda1
Version  1.96       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
cubietruck       4G     3  13  8726  12  8640  14   424  99 50567  28 787.3  56
Latency              2352ms    1824ms    1807ms   21041us   17141us    2591ms
Version  1.96       ------Sequential Create------ --------Random Create--------
cubietruck          -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
16  1321  15  3549  19  1788  13  1344  16  3756  19  1769  14
Latency              5620us   10305us   49666us    8780us    8080us    5673us
1.96,1.96,cubietruck,1,1418961485,4G,,3,13,8726,12,8640,14,424,99,50567,28,787.3,56,16,,,,,1321,15,3549,19,1788,13,1344,16,3756,19,1769,14,2352ms,1824ms,1807ms,21041us,17141us,2591ms,5620us,10305us,49666us,8780us,8080us,5673us

bonnie++ -d /mnt/sda2
Version 1.96 ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
cubietruck 4G 85 99 36310 30 23916 26 464 98 179457 89 1199 115
Latency 164ms 1974ms 214ms 39690us 15721us 104ms
Version 1.96 ------Sequential Create------ --------Random Create--------
cubietruck -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 5738 56 +++++ +++ 10671 82 8671 84 +++++ +++ 10397 83
Latency 891us 2857us 3987us 4931us 125us 5187us
1.96,1.96,cubietruck,1,1418828957,4G,,85,99,36310,30,23916,26,464,98,179457,89,1199,115,16,,,,,5738,56,+++++,+++,10671,82,8671,84,+++++,+++,10397,83,164ms,1974ms,214ms,39690us,15721us,104ms,891us,2857us,3987us,4931us,125us,5187us

Since bonnie output is not always easy to read, I’ve run the last line with bon_csv2html to have prettier results in HTML, also including the results for the NAND flash (bonnie++ -d /) as comparison.

Cubietruck_SSD_NAND_BonnieYou can check the full Bonnie++ results including sequential and random create results.

Sequential Output is write speed, and Sequential Input is write speed. Most of the time, Block speed is the important metric here. So first we see a large difference in performance between NTFS and EXT4 read and write speed on the SSD with respectively 8.7 MB/s and 50.5 MB/s for NTFS versus 36.31 MB.s, and 179.45 MB/s for EXT-4. That means CubieTruck can read data at 180MB/s from the SSD, or about 6 times faster than the typical performance of a USB 2.0 drive, and faster than the USB 3.0 drive connected to my Ubuntu computer (AMD FX8350) which achieves 115 MB/s read speed in the same test on its EXT-4 partition. As a side note, the maximum performance I’ve ever got from another ARM device via USB 3.0 was about 48 MB/s with ODROID-XU3 Lite, but this was in Android, and an NTFS partition, and with another tool (A1SD).

The NAND flash used in CubieTruck is also much slower than the SSD, writing at 6.4 MB/s and reading at 19.46 MB/s, and that’s why if you purchase this kit, you should probably move the rootfs to the SSD.

I’ve also tested raw Ethernet performance with the command line: iperf -t 60 -c 192.168.0.104 -d. Unfortunately Cubieboard Gigabit Ethernet performance (full duplex) is not that good, albeit still faster then Fast Ethernet.

CubieTruck_Gigabit_Ethernet_iPerf

Throughput in Mbps

Battery Life, Monitoring and UPS Function

This kit comes with a 5,300 mAh battery that’s mainly used as a UPS. So I’ve tried to disconnect the power while in used, and the system runs as expected. Once the battery is depleted, and the system off, as soon as the power comes back the system will boot again, so that part is also good in most cases, but not all…

I always wanted to check the battery life, to see how long the board could run on batteries. In my Ubuntu computer, I can run “last” to check the last power on./off event, bit with this firmware, it won’t work, complaining that /var/log/wtmp is missing. So instead I installed uptimed:

sudo apt-get install uptimed

Once I left the battery discharge over night, and after 3 hours, I assumed it was fully charged, and in idle mode, the battery lasted two hours. I had only connected the HDMI cable, an Ethernet cable, and connected to the board with SSH.

We can check the record uptimes with uprecords:

uprecords
     #               Uptime | System                                     Boot up
----------------------------+---------------------------------------------------
     1     0 days, 03:20:26 | Linux 3.4.79              Fri Dec 19 09:59:28 2014
     2     0 days, 02:00:40 | Linux 3.4.79              Fri Dec 19 13:20:32 2014
->   3     0 days, 00:08:11 | Linux 3.4.79              Fri Dec 19 15:31:12 2014

However, afterwards I had a doubt whether I had a full charge or not, so let it run all day, and tested it again, and this time, the battery lasted for over four hours and 20 minutes, meaning the first time, the battery was not fully charged, and it might take many hours to charge the battery:

uprecords
     #               Uptime | System                                     Boot up
----------------------------+---------------------------------------------------
     1     0 days, 07:43:48 | Linux 3.4.79              Fri Dec 19 14:31:12 2014
     2     0 days, 04:26:36 | Linux 3.4.79              Sat Dec 20 11:51:35 2014
     3     0 days, 04:12:17 | Linux 3.4.79              Sat Dec 20 16:20:07 2014

LXDE desktop will not run the system run on batteries (or I missed that), but you can monitor the battery status, health, voltage and more with sysfs:

cat /sys/class/power_supply/battery/health
Good
cat /sys/class/power_supply/battery/status
Discharging
cat /sys/class/power_supply/battery/voltage_now
3729000

So that means your program, or a script, could detect when the battery is charging or discharging, check the health status and/or voltage, and decide to run in lower power mode, and cleanly turn off the system when the voltage drops too low.

More options can be found on power_supply_class.txt kernel documentation.

Installing Debian rootfs to the SSD

Have we’ve seen above the read speed of the SSD is about 9 times faster than the NAND flash, and the write speed nearly 6 times faster, so you should really move the rootfs to the SSD, unless you have specific reasons not to do so. Another advantage will be the increased space for programs.

Let’s check the rootfs usage n the NAND flash first:

cubie@cubietruck:~$ df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 6.9G 2.8G 3.9G 42% /
/dev/root 6.9G 2.8G 3.9G 42% /

So we have a 6.9GB rootfs out of the 8GB flash, with 3.9GB free after I installed a few programs.

The rootfs is located in /dev/nandb partition, and you’ll want to move it to /dev/sda1 (in my case /dev/sda2, but I’ll use sda1 in this section, as it’s what most people will do). I’ll assume here that you have already partitioned and formatted the SSD as specified in the SSD SATA performance section.

First we have to copy the rootfs in the NAND flash to the SSD partition:
sudo mkdir -p /mnt/nandb
sudo mount -t ext4 /dev/nandb /mnt/nandb
sudo mount -t ext4 /dev/sda1 /mnt/sda1
cd /mnt/nandb
sudo cp -a . /mnt/sda1

Then we have to tell the system the root filesystem is located in the SSD, by changing uEnv.txt located in nanda partition of the flash:

sudo mkdir -p /mnt/nanda
sudo mount /dev/nanda /mnt/nanda
cd /mnt/nanda

sudo vi /mnt/nanda/uEnv.txt

Where you’ll need to change:

nand_root=/dev/nandb

by

nand_root=/dev/sda1

Now unmount the partitions, sync, and reboot

umount /mnt/sda1
umount /mnt/nand*
sync
reboot

After login, you can check that the rootfs is now on the SSD with close a 120GB partition (in my case 60G since I have two partitions):

cubie@cubietruck:~$ df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 59G 2.9G 53G 6% /
/dev/root 59G 2.9G 53G 6% /

Using CubieTruck Metal Kit as a Desktop PC

Just like I did with ODROID-XU3 Lite and Ugoos UM3, I’ve tried to use this Linux computer as a desktop computer, and shot a video with:

  1. Boot time from SSD: 42 seconds. Note that the LED on the front panel take about 10 seconds to lit up.
  2. Checking UPS function by disconnecting the power
  3. cubie-config utility for setup
  4. List of installed applications
  5. LibreOffice (Writer)
  6. Chromium – Multi-tabs, YouTube (embedded / full screen; VP9 / H.264/AVC1), and Candy Crush Saga (Flash game) in Facebook
  7. Video Playback with GNOME Player
  8. Power off

CubieTruck (Cubieboard 3) can be used as a desktop computer for Office tasks, but web browsing may become an issue with high CPU usage in Chromium, and watching YouTube video amounts to torture. Video playback (software decode) appears to be relatively OK up to 720P using GNOME player, but 1080p/H.264 video are not watchable. There are now VPU driver for Allwinner A10/A20, but these do not seem to be in use in this image, same for Mali drivers for 2D/3D GPU acceleration.

Phoronix Benchmarks

I’ve also run some of Phoronix Test Suite benchmarks:

sudo apt-get install php5-cli php5-gd php5-gd libpcre3-dev
wget http://phoronix-test-suite.com/releases/repo/pts.debian/files/phoronix-test-suite_5.4.0_all.deb
sudo dpkg -i phoronix-test-suite_5.4.0_all.deb

After configuring batch test, I’ve run MP3 encode, 7-zip compression, and Apache server tests:

phoronix-test-suite batch-benchmark pts/encode-mp3 pts/compress-7zip pts/apache

Contraty to ODROID-XU3 Lite, where compress-7zip failed because of a lack of memory, all three tests could complete successfully. I find Openbenchmarking website very confusing to use, and I did not find a way to compare to old results. So I included CubieTruck NAND, CubieTruck SSD, and ODROID-XU3 Lite in the picture below.

Cubietruck (NAND / SSD) vs ODROID-XU3 Lite (Click to Enlarge)

Cubietruck (NAND / SSD) vs ODROID-XU3 Lite (Click to Enlarge)

You can also click on the pages on OpenBenchmarking for Cubietruck (NAND), CubieTruck (SSD), and ODROID-XU3 Lite (eMMC) for full details.

I was not expecting the SSD to make much difference with the MP3 encoding, and 7-zip compression benchmarks, but I though it would yield a significant increase in performance for the Apache test. I was wrong, as the Apache test only improved from 771.6 requests per second to 785.20 rps, so it must mean this benchmark is not a I/O bound test. As should be expected ODROID-XU3 Lite is much faster for both MP3 encoding (45 seconds vs 165 seconds), and Apache (2382 rps vs 785 rps).

CubieTruck Metal Case kit includes CubieTruck board, a 120GB SSD, a 5,300 mAh battery, a rugged metallic enclosure, a 5V/2.5A power, and relevant cables. It can be purchased for $169 on Seeedstudio, or 149 Euros exc. VAT on EmbeddedComputer.nl.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

MIPS Creator CI20 Development Board is Now Available for $65

December 5th, 2014 3 comments

When Imagination Technologies first announced their developer program for MIPS Creator CI20 board, they did not disclose the price, but based on the specifications I estimated that a decent price would be $70 o $80. The company has now announced broad availability of the board, which can be pre-ordered for just $65 or 50 GBP depending on the continent you live in, with shipping scheduled for the end of January 2015.

MIPS_CI20_Development_BoardThis development board is based on Ingenic JZ4780 dual core MIPS processor with 1GB DDR3, 8GB flash,  and features an HDMI output up to 1080p, Audio in and out, a Fast Ethernet RJ45 port, a Wireless module with Bluetooth 4.0 and Wi-Fi, an IR receiver, and expansion headers.

Several projects have already been ported by developers who got their free board a few months, ago including XBMC/Kodi, several games such as Spiral Episode 1, and beside Android 4.4 and Debian 7 officially supported by Imagination, operating systems have also been ported to MIPS Creator CI20 with NetBSD, Express Logic ThreadX RTOS, and Haiku inspired from the defunct BeOS.

XBMC 13.2 on MIPS Creator CI20

XBMC 13.2 on MIPS Creator CI20

XBMC 13.2 is not based on the Android version, but based on Debian, as the last blog update posted at the end of October, mentions the OpenGL ES user interface runs smoothly (30 fps @ 1080p resolution), but FFmpeg/Libav were crashing at the time, so video could not be played. Hopefully this is fixed. At least that means that 2D/3D graphics acceleration is working in Linux.

Hardware and software documentation, as well as Debian 7, Android 4.4, and other distributions images and source code are available on MIPS Creator CI20 Wiki. You can also go directly to MIPS github account to get the source code for Linux, U-Boot, mplayer, and others.

If you live in North America, you can pre-order the board for $65, and people living in the European Union or the United Kingdom can purchase it for 50 GBP on the UK store. If you feel lucky, three boards will be given away on a Rafflecopter draw embedded on Imagination Technologies blog post.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Linaro 14.11 Release with Kernel 3.18, Android 5.0, & Ubuntu Utopic. Debian 8.0 Gets ARM64 Port

November 28th, 2014 3 comments

Linaro 14.11 has been released with Linux kernel 3.18-rc5 (baseline), Linux 3.10.61 & 3.14.25 (LSK, same versions as last month), and Android 4.4.2, 4.4.4, and for the first time Android 5.0 Lollipop. There’s also been some news with regards to Linux desktop distributions, as Ubuntu baseline has been upgraded to Utopic (14.10), and Debian 8.0 (Jessie) will officially support ARM64 with 93% of packages built as of November 5th. Android Lollipop images are said to be built for TC2, Juno, Nexus 7, Nexus 10, and FVP models, but I could not find the images. Finally, it’s the first time I’ve noticed Hisilicon X5HD2 development board with a dual core Cortex A9 processor, but apparently it’s the same as Hi3716cv200.

Here are the highlights of this release:

  • Linux Linaro 3.18-rc5-2014.11
    • updated GATOR to version 5.20
    • updated topic from Qualcomm LT (include IFC6410 board support)
    • updated integration-linaro-vexpress64 topic by ARM LT (FVP Base and Foundation models, and Juno support)
    • updated integration-hilt-linux-linaro topic by HiSilicon LT (Hi36xx, HiP04, and X5HD2 families support)
    • updated LLVM topic (uses the community llvmlinux-latest branch) includes ILP32 patch set v3 rebased on 3.18-rc5. Build tested only.
  • Linaro builds of AOSP 14.11
    • built with Linaro GCC 4.9-2014.11
    • migrated to Android 5.0 (Lollipop) for all the targets on all CI loops. Here are the combinations: TC2-LSK-3.10, TC2-LSK-3.14, Juno-LSK, Nexus 7, Nexus 10, FVP-LSK-3.10 and FVP-LSK-3.14.
    • updated LSK pre-merge CI for 3.10 and 3.14
    • revamped to use overlay manifest with local_manifests
    • added AOSP master builds setup for Versatile Express TC2, Juno, Nexus 7 and Nexus 10
  • Linaro OpenEmbedded 2014.11
    • integrated Linaro GCC 4.9-2014.11
    • included perf tools in the rootfs
    • fixed gator FTBS
    • updated strace aarch64_be patch
    • fixed external toolchain support
    • upstreaming:
      • updated LTP to 20140828 release
      • updated PM QA to 0.4.14 release
      • updated ACPICA to 20140828 release
  • Linaro Ubuntu 14.11
    • Ubuntu baseline migrated from Trusty to Utopic
    • updated packages: Juno firmware 0.9.2, LSK 3.10.60/3.14.24 and linux-linaro 3.18-rc5 kernels
  • Debian release team announced ARM64 architecture has made enough progress to be a released architecture for Debian 8.0 (Jessie)
  • SELinux support is enabled in linux-linaro kernel
  • Test usage of Linaro toolchain binary to build OE rootfs has been added
  • CI bring up: coresight enabled build for TC2

You can visit https://wiki.linaro.org/Cycles/1411/Release for a list of known issues, and further release details about the LEB, LMB (Linaro Member Builds), and community builds, as well as Android, Kernel, Graphics, Multimedia, Landing Team, Platform, Power management and Toolchain components.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Technologic TS-7250-V2 Industrial Grade Embedded Computer Features Marvell PXA166/PXA168 Processor

November 24th, 2014 1 comment

Technologic Systems, as US based embedded systems solutions company, has announced availability of their TS-7250-V2 industrial grade PC/104 single board computer powered by Marvell PXA166 or PXA168 ARMv5 processor, with 512 MB RAM, 2GB eMMC SLC flash, single or dual Ethernet, and an optional Lattice FPGA with up to 17k LUT (Look-up Tables) among other features. They also have two enclosures namely TS-ENC720 (1x RJ45 port), and TS-ENC720-2ETH (2x RJ45 ports) for the boards.

Technologic_Systems_TS-7250-V2TS-7250-V2 technical specifications:

  • Processor (one of the two)
    • Marvell PXA166 Sheeva ARMv5 processor up to 800 MHz
    • Marvell PXA168 Sheeva ARMv5 processor up to 1066 MHz
  • FPGA – 17 KLut Lattice LFXP2-8E FPGA
  • System Memory –  512 MB RAM
  • Storage – micro SD card socket + optional 2GB eMMC flash + optional full size SD card socket
  • Connectivity – 1x or 2x 10/100 Ethernet ports,
  • USB – 2x USB HS host ports, 1x micro USB device connector (console port)
  • Serial – 3x RS-232 serial ports, 3x TTL serial ports, RS-485 port, optional RS-422 port, and optional CAN port if Lattice FPGA selected.
  • Expansion Headers
    • PC/104 connector + optional 40-pin PC/104 connector
    • LCD and DIO Headers
    • 75 TTL DIO (including PC/104 conn)
  • Other I/Os – A/D converter, 5 channels (with 4-20 mA current loop)
  • Misc – RTC with battery and temp compensation, temperature Sensor
  • Power Supply –  5VDC or 8-28VDC power input
  • Temperature Range –  Industrial temperature range (-40°C to 85°C)

 

TS-ENC720-7200-2ETH_Rear_View

TS-ENC720-7200-2ETH Kit

TS-7250-V2 can boot from either the onboard eMMC SLC flash or microSD card to an embedded Linux distributions based on Linux kernel 3.14, or Debian 7 “Wheezy” distribution. The board can boot in 0.87 seconds to a busyBox terminal shell, but the company also provided an older Linux 2.6.34 kernel that can boot in 0.52 seconds to the command line. The company claims there’s no proprietary source code in the kernel as hardware specific functionalities are handled by user-space utilities such as spictl, sdctl, xuartctl, etc…, and the company also provides drivers for all on board peripherals. The company will also provide Opencore source core for the FPGA. More details about software support can be found on TS-7520-V2 Wiki. Schematics (PDF) and mechanical drawings (PDF) can also be downloaded from the documentation page.

The TS-7250-V2 single board computer can be purchased now starting at $165 for 100-unit orders. Models include TS-7250-V2-512-8S-I industrial temperature baord with PXA166 and 512 MB DDR2 ($199), and TS-7250-V2-512-4096F-10S-I-DEV, the version recommended for development, is also an industrial temperature grade board, but instead featuring  Marvell PXA168 processor, 512MB DDR2 RAM, 2GB Flash (4GB eMMC configured as 2GB SLC Flash), 2x 10/100 Ethernet ports, and 1x RS-422 port ($251). More information may be found on Technologic Systems TS-7250-V2 product page, and more pricing options are listed in the press release.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

TI Sitara based GOEMBED Systems-on-Module and Single Board Computers with BeagleBone Capes Support

November 5th, 2014 No comments

GOEMBED is a startup funded by engineers previously working for Embest Shenzhen, based in Longhua district in Shenzhen, and specialized in embedded boards and modules. They currently have board and modules based on Freescale i.MX6 and Texas Instruments Sitara processors, but I’ll focus on the TI products in this post, including one of their single board computers that supports BeagleBone capes.

CM3352 and CM3358 Systems-on-Module

GOEMBED_AM3358_ModuleCM335x Series modules specifications:

  • SoC – Texas Instruments Sitara Cortex A8 AM3352 @ 800 Mhz or AM3358 @ 1.0 GHz
  • System Memory – 512 MB Micron DDR3 chip
  • Storage – 2 to 4 GB eMMC depending on model
  • PMU – TI TPS65910A3
  • Dimensions – 67.5 x 36.5 mm
  • Temperature Range – Commercial: 0° to 70° C or Industrial: -40° to 85° C

The modules are said to support Linux 3.x, Android 4.x, Ubuntu, Angstrom, Debian, WinCE 6.0/7.0, and uCOS operating systems.

SBC335x Single Board Computers

SBC3358_ACW-B1A

SBC355x ACW-B1A

GOEMBED currently has four SBCs based on TI Sitara processor with a combination of AM3352 and AM3358 processor, and two baseboard ACW-B1A and ACW-B2A with the following specs:

  • SoC/Memory/Storage – See CM335x SoM
  • External Storage – micro SD slot up to 32GB
  • Display – LVDS interface up for 16-bit RGB TFT @ 1366×768 resolution. 4.3″ and 7″ displays are available. B1A only: VGA port up to 1366×768
  • Audio – B1A only: 2x 4-pin header for stereo, Line In/Out, and MIC In
  • Connectivity – 1x Gigabit Ethernet
  • USB
    • B1A – 4x USB 2.0 host ports, 1x micro USB 2.0 OTG port, 2x 4-pin header for USB
    • B2A – 2x USB 2.0 host ports, 1x micro USB 2.0 OTG port, 2x 4-pin header for USB
  • Expansion
    • B1A – 2x RS232 header, 1x CAN & IO header, 2x 20-pin header with access to UART1/2, SPI0, ADC, PWM, GPIOs, etc..
    • B2A – Headers compatible with Beaglebone (Black), mini PCIe connector for 3G/Wi-Fi/Bluetooth/GPS modules
  • Debugging – UART0 for serial console
  • Misc – Reset button, RTC with CR1220 battery slot
  • Power Supply – 9 to 14V input. Optimal 12V/1.5A.
  • Dimensions – B1A – 146 x 102 mm; B2A: 130 x 103.5 mm
SBC335x ACW-B2A

SBC335x ACW-B2A

Modules are available now, and can be purchased until 2022. Prices start at $49 for CM3352 SoM, up to $99 for the industrial version of CM3358 SoM, and single board computers start at $89 (B2A + CM3352), and up to $149. I’ve also noticed the single board computers can be purchased on Aliexpress: both SBC335x-B1A ($139) and SCB335X-B2A ($59 baseboard + $59-$69 CPU module). Further details can be found on GOEMBED’s products page.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Linaro 14.10 Release with Kernel 3.17 and Android 4.4.4, Debian ARM64 Port Almost Complete

October 31st, 2014 No comments

Linaro 14.10 has just been released with Linux kernel 3.17 (baseline), Linux 3.10.54 & 3.14.19 (LSK, same versions as last month), and Android 4.4.2 & 4.4.4.

Most of the work is a continuation of previous months working member hardware, and ARM64, but one particularly interesting point is that 90% of Debian packages have been built for ARM64, and the next version of Debian should have an official ARM64 port.

Here are the highlights of this release:

  • Linux Linaro 3.17-2014.10
    • updated linaro-android topic. In particular, CONFIG_IPV6=y is no longer the requirement for linux-linaro tree builds
    • GATOR version 5.19 (same version as in 2014.08 release). gatord is fixed to build for ARMv8.
    • dropped multi_pmu_v2 topic by ARM LT (no longer used)
    • updated topic from Qualcomm LT (include IFC6410 board support)
    • replaced integration-linaro-vexpress topic by integration-linaro-vexpress64. Starting from 2014.10 release, linux-linaro kernel tree will use the mainline support for 32-bit vexpress boards. integration-linaro-vexpress64 carried over FVP Base and Foundation models, and Juno support from the integration-linaro-vexpress.
    • updated LLVM topic (uses llvmlinux-2014.10.01 branch – the most recent v3.17-based version of llvmlinux-latest)
    • dropped ARMv7 big endian topic(obsoleted; most of the patches are upstream)
    • added ILP32 patch set v3 with one minor build fix. (ILP32 vs LP64 data models)
    • config fragments changes – distribution.conf: CONFIG_IPV6=y replaced with CONFIG_IPV6=m
  • Linux Linaro LSK 2014.10:
    • The v3.14 based LSK based on kernel.org 3.14.19 stable tree
    • Updates to:
      • kernel.org 3.10.55 stable tree
      • Android support (from Google and Linaro)
      • ARMv8 fixes and performance enhancements
      • UEFI support
      • Mailbox framework
  • Linaro Toolchain Binaries 2014.10
    • based on GCC 4.9 and updated to latest Linaro TCWG releases (Linaro GCC 4.9-2014.10)
    • first release built with cbuild2, adding more maintainable code base and automatic testing
    • binary tarballs have been splitted into 3 parts. As a result, you can install only the parts needed:
      • gcc-linaro-*.tar.xz – the compiler and tools
      • runtime-linaro-*.tar.xz – runtime libraries needed on the target
      • sysroot-linaro-*.tar.xz – sysroot (a set of libraries and headers to develop against)
  • Linaro builds of AOSP 14.10
    • built with Linaro GCC 4.9-2014.10
    • AOSP master build for Juno is cleaned up. It now builds without any patches on AOSP projects. It builds by adding 9 projects to AOSP manifest related to device, kernel, toolchain and helper tools.
    • LSK Android testing issues are fixed for ARMv8 Fast Models
    • bc tool is added to ARMv8 Android Juno build
  • Linaro OpenEmbedded 2014.10
    • integrated Linaro GCC 4.9-2014.10
    • fixed shadow securetty for SBSA compatible UART
    • switched OpenJDK to upstream aarch64 hg repos
    • dropped mongodb from LAMP images
    • upstreaming:
      • updated acpica 20140828 release
      • updated acpitests 20140828 release
      • updated pm-qa to 0.4.14 release
      • added aarch64 support to libunwind
      • fixed PHP build warnings
  • Linaro Ubuntu 14.10 – Updated packages: Juno firmware 0.8.2, LSK 3.10.58/3.14.22 and linux-linaro 3.17 kernels, xf86-video-freedreno 1.3.0
  • Debian arm64 support is going very well. More than 90% of the packages are built. The effort is on track to get next Debian release with an officially supported arm64 architecture.
  • KVM CI loop on Juno is completed. The remaining work is happening on Xen CI loop.

You can visit https://wiki.linaro.org/Cycles/1410/Release for a list of known issues, and further release details about the LEB, LMB (Linaro Member Builds), and community builds, as well as Android, Kernel, Graphics, Multimedia, Landing Team, Platform, Power management and Toolchain components.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter