Archive

Posts Tagged ‘sdk’

F&S armStoneA9 is a Pico-ITX Board Powered by Freescale i.MX 6 with up to 4GB RAM

June 19th, 2013 No comments

F&S Elektronik Systeme GmbH has announced the armstoneA9, a pico-ITX board featuring Freescale i.MX 6 Solo/Dual or Quad Cortex A9 processor with up to 4GB DDR3 SDRAM, and 128 MB flash (1GB+ flash optional) that available in both commercial and industrial temperature range.

armStoneA9Here are the specifications of the board:

  • SoC – Freescale i.MX 6 Cortex-A9 (Quad-/ Dual-/ Single-Core) @ 800 MHz to 1 GHz with Vivante GPU
  • System Memory – 1GB (standard version) to 4 GB DDR3 SDRAM
  • Storage – 128MB Flash (1GB+ optional), micro-SD Card Slot, and SATA interface
  • Display:
    • up to SVGA (800 x 600, 65536 colors) via RGB
    • up to WUXGA (1920 x 1200, 18Bit/ 24Bit) via 2x LVDS
    • up to FullHD (1920 x 1080, 24Bit) via HDMI
  • Touch Panel – 4-wire, analogue resistive and PCAP-Touch Interface via I2C
  • Interfaces:
    • 1x 10/100/1000MBit Ethernet
    • 3x Serial (2x RS232, 1x TTL 3.3V Level)
    • 1x USB 2.0 Host, 1x USB 2.0 Device
    • 1x CAN 2.0
    • 1x I2C, 1x SPI
    • 1x Audio-Line IN/OUT/MIC
    • 1x miniPCIe
    • Up to 66 digital I/O
  • Power Supply – 5V or 8-14V DC / ±5%, 4W typical power consumption
  • Temperature Range – 0°C – +70°C (commercial) or -25°C – +85°C (industrial)
  • Dimensions – 100mm x 72mm x 15mm
  • Weight – 40g

The company already supports Linux 3.0.35 for the board (uboot, BSP, interface drivers, Qt, Streamer) and Ubuntu, and Windows Embedded Compact 7 (WEC 7) should be available soon with the bootloader, kernel, SDK, and interface drivers. armStoneA9-SKIT is the starter kit for development which includes the board, cables, a micro SD card, and access to the download area of the site with software and documentation.

The standard versions of the board include 1GB RAM, 128MB flash, but the company can provides customized version, for example with 4GB RAM, for order of 100 units or more. I could not find pricing nor availability information for the board. Further details may be found on F&S armStoneA9 page.

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

Bluetooth Versions Walkthrough, and Bluetooth 4.0 Low Energy Development Resources

June 5th, 2013 9 comments

I’ve seen more and more Bluetooth 4.0 LE devices in the last few months including RFDuino, Wimoto Motes, TI SensorTag, and Scadanu Scout, so I thought it would be good to write a bit about Bluetooth. First, I’ll write about the different version of Bluetooth, since I was still confused with the practical implications between the versions, and then I’ll show some development kits and software resources to play around and/or develop Bluetooth 4.0 LE applications both on devices and hosts.

Bluetooth Smart

Bluetooth Versions

  • Bluetooth v1.0 and v1.0B

The Bluetooth 1.0 Specification was released in 1999, and according to an entry in Wikipedia, 1.0 and 1.0B devices had many issues, mainly interoperability issues. You won’t find any Bluetooth 1.0 device today.

  • Bluetooth v1.1

Bluetooth v1.1 was ratified as IEEE Standard 802.15.1-2002 in 2002. It fixed many issues found in the previous specifications, added the option to use non-encrypted channels, as well as Received Signal Strength Indicator (RSSI). This standard has been superseded by v1.3, and there are now very few devices that only support Bluetooth 1.1.

  • Bluetooth v1.2

Bluetooth v1.2 (IEEE Standard 802.15.1–2005) is backward compatible with 1.1, and according to Wikipedia, it brings the following main enhancements:

  • Faster Connection and Discovery
  • Adaptive frequency-hopping spread spectrum (AFH), which improves resistance to radio frequency interference by avoiding the use of crowded frequencies in the hopping sequence.
  • Higher transmission speeds in practice, up to 721 kbit/s, than in v1.1.
  • Extended Synchronous Connections (eSCO), which improve voice quality of audio links by allowing retransmissions of corrupted packets, and may optionally increase audio latency to provide better concurrent data transfer.
  • Host Controller Interface (HCI) operation with three-wire UART.
  • Introduced Flow Control and Retransmission Modes for L2CAP.

Although the standard is still active, I’m struggling to find many devices based on this version.

  • Bluetooth v2.0 + EDR

Bluetooth v2.0 + EDR specification was released in 2004. v2.0 is backward compatible with v1.2, and the main difference is the introduction of Enhanced Data Rate (EDR) for theoretical data rates of about 3 Mbit/s (around 2.1Mbit/s in practice). EDR can also provide a lower power consumption.

EDR is an optional feature, so some products may support “Bluetooth v2.0″, but not EDR. One example was HTC TyTN phone. There are still many Bluetooth v2.0 products sold today, usually with EDR, but you may prefer devices with Bluetooth v2.1 + EDR.

  • Bluetooth v2.1 + EDR

Bluetooth Core Specification Version 2.1 + EDR adopted on July 26, 20007, is fully backward compatible with 1.2, and the key improvement is the addition of Secure Simple Pairing (SSP). This improves pairing user-friendliness as no, or limited, user interaction is needed, and increases the use and strength of security. Other improvements include “Extended inquiry response” (EIR), which provides more information during the inquiry procedure, and sniff subrating, which reduces the power consumption in low-power mode.

The majority of low bandwidth Bluetooth devices, such as headsets, speakers, mouse and speakers, use this version of the standard.

  • Bluetooth v3.0 + HS

Version 3.0 + HS of the Bluetooth Core Specification adopted by the Bluetooth SIG on April 21, 2009. provides  theoretical data transfer speeds of up to 24 Mbit/s thanks to the HS (High Speed) in its name. This feat is not achieved over the Bluetooth link itself, but via an 802.11 link, usually Wi-Fi. Bluetooth is used for pairing. Like with EDR in the previous specifications, HS is optional, so you may find Bluetooth 3.0 devices without HS.

Other improvements include L2CAP enhanced modes, Unicast connectionless data, and enhanced power control. There are also many devices compliant with Bluetooth v3.0, not always with HS, including input devices such as keyboards and mice, and I fail to see why you’d ever need Bt 3.0 HID devices. Maybe it’s just a marketing trick, or I missed something. Bluetooth v3.0 + HS is the minimum version to select if you plan to transfer large files between your devices. I understand that although functionality and performance should be similar to Wi-Fi Direct, Bluetooth 3.0 +HS should consume less as the Wi-Fi link is only enabled during transfer.

  • Bluetooth v4.0

The latest Bluetooth Core Specification version 4.0 adopted on June 30, 2010, includes Classic Bluetooth, Bluetooth high speed and Bluetooth Low Energy protocols. Bluetooth high speed is based on Wi-Fi in a similar (same?) fashion as Bluetooth 3.0 + HS, and Classic Bluetooth consists of legacy Bluetooth protocols.

Bluetooth low energy (BLE), previously known as WiBree or Bluetooth ULP, is aimed at ultra low power applications running off a coin cell, just like the 4 devices I mentioned at the top of this post. Instead of BLE, you’re more likely to see “Bluetooth Smart Ready” and “Bluetooth Smart” logos, respectively for hosts (e.g. PC, tablets, smartphones…) and sensors.

Bluetooth 4.0 also adds support for the Generic Attribute Profile (GATT), and Security Manager (SM) services with AES Encryption, both of which are used for BLE.

There seems to a lots of “Bluetooth 4.0″ devices on sites such as Amazon, but most of them don’t show the logos “Bluetooth Smart Ready” or “Bluetooth Smart”, and they may not support BLE, or HS, so you’ll have to be smart, and make sure they support what you need. AFAIK, currently only iOS, Mac, Windows and some HTC and Samsung devices support Bluetooth 4.0 LE, but it will come to Android 4.3 (API Level 18). Some devices such as Samsung Galaxy S4 are said to support BLE, but I understand only the hardware is capable, and you’ll have to wait for a firmware upgrade to actually connect to Bluetooth 4.0 LE sensors.

Bluetooth 4.0 Low Energy Development Resources

There are two types of Bluetooth 4.0 LE chipsets:

  • Single mode implementation where the low energy protocol stack is implemented solely. CSR1010, Nordic Semiconductor nRF8001, and Texas Instruments CC2540 are examples of such ICs. Those are to be used in “Bluetooth Smart” devices.
  • Dual-mode implementation where Bluetooth LE is combined with a Classic Bluetooth controller. I understand those are used in “Bluetooth Smart Ready” computers and mobile devices, and USB dongles.

You’ll need different type of hardware depending on whether your develop a Bluetooth device, or a Bluetooth applications.

If you’re developing a Bluetooth device, you can consider the kits below:

CC2540DK-MINI

Texas Instruments CC2540 MINI Development Kit

If you’re developing a Bluetooth application, you can currently use the following:

Using Texas Instruments Sensortag to test your application could also be a good development tool.

Bluetooth Stack Architecture

Bluetooth Stack Architecture

Once you’ve sorted out the hardware you need the easiest way to get started is probably to download the “Bluetooth Quick Start Kit v2” which is available after a free registration, and provides the following:

  • Bluetooth Low Energy Fundamental Concepts
  • Custom Profile – ‘Hello Bluetooth’ Example
  • “Hello World” Source Code for TI CC2540, Nordic nRF8001, iOS, Android , and Windows 8 custom profile.
  • Air Interface Traces captured for the ‘Hello Bluetooth’ profile using Ellisys Bluetooth Explorer 400 and Frontline FTS4BT Bluetooth Protocol Analyzer and Packet Sniffer.
  • GATT Schema Documentation & Tutorial

For Linux support, you may want to check “Bluetooth Smart Devices and Low Energy support on Linux” presentation at ELCE 2012, which explains the progress at the time (November 2012), and BLE support in BlueZ.

Comments pointing to errors, and/or providing interesting additions are more than welcome.

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

Bsquare Announces Qualcomm Snapdragon 800 Series Mobile Development Platforms

June 4th, 2013 No comments

BSQUARE has recently announced the availability of its Qualcomm Snapdragon 800 Mobile Development Platform (MDP), based on Qualcomm Snapdragon 8974 (LTE), which will be released both in tablet and smartphone form factor. This development platfom has been designed for application developers and device manufacturers so that they can develop, test, optimize and showcase apps in Android 4.2.2 powered by the latest Qualcomm SoCs.

Snapdragon 800 Tablet and Smartphone MDPs

Snapdragon 800 Tablet and Smartphone MDPs

Snapdragon 800 Tablet and Smartphone MDP specifications:

  • SoC – 8974 Quad Core Krait 400 Snapdragon Processor @ 2.3GHz with Adreno 330 embedded GPU and Hexagon v5 QDSP6
  • Memory and Storage – N/A, apparently you don’t need to know…
  • Display:
    • Tablet MDP – 11.6” 1080p HD Multitouch Display
    • Smartphone MDP – 4.3” 720p HD Multi-touch display
  • Video Playback – UltraHD/4K video support via HDMI output
  • Camera – 12MP rear camera w/ Flash (1080p HD @ 30fps) & 2MP front facing camera (1080p HD @ 30fps)
  • Audio – Surround sound playback, Surround sound record for camcorder, Handset ANC with Fluence echo cancellation and noise suppression, Headset with ANC support & beyond four Microphones for FluencePRO, Ultrasound Gestures and Active Pen support
  • Sensors – 3D accelerometer, 3-axis gyro, 3-axis compass, Ambient Light, Temperature, Pressure, & Humidity, Fingerprint reader
  • Haptics for tactile feedback
  • USB – USB 3.0 port(s). We don’t know how many…
  • Connectivity – Wi-Fi® 802.11 a/b/g/n/ac (2.5/5GHz), Bluetooth, GPS, NFC

The only difference between the tablet and smartphone MDP is the display size and resolution. These are ones of the rare development platforms that come with 802.11ac, a new Wi-Fi standard allowing data transfer at up to 1.3 Gbps, as well as USB 3.0. Both MDPs ship pre-loaded with Android 4.2.2. Development can be performed with tools such as the Snapdragon SDKAllJoyn SDK for peer-to-peer connectivity , and/or the Vuforia SDK for augmented reality apps.

Bsquare MDP can be purchased now for $799 and $1099, for respectively the smartphone and tablet version, with 3 to 4 weeks lead time “due to high demand”, and the price includes 30 minutes of support. Further information is available on Bsquare’s Snapdragon MDP page.

Via Linuxgizmos and BSquare newsletter.

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

Sailfish OS SDK Adds Support for Windows and Mac OS X

April 6th, 2013 No comments

At the end of February, Sailfish OS SDK Alpha was released with support Linux 32- and 64-bit only. The latest version of Sailish OS SDK can also be installed in Windows and Mac OS X. If you’re developing in Linux, it’s just the same SDK as released in February.

Sailfish_OS

The SDK and quick start guide is available from Sailfishos.org, or you can click directly on the links before to download and install the SDK.

The SDK is still at the Alpha stage with several known issues, and probably a few more yet-to-be-known bugs.

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

Sierra Wireless Airprime WP & AR Series Modules Feature Tricore M2M SoC

February 28th, 2013 No comments

Sierra Wireless, a company providing machine-to-machine (M2M) solutions, has recently introduced a new (nameless) architecture for embedded wireless communications comprised of a multicore (again, nameless) “high speed application processor” + Cortex M0 MCU + Radio SoC, secure cloud services (AirVantage) to store the data, and an open application framework with M2M libraries and development tools. This new architecture will be available in the company’s AirPrime WP & AR Series wireless modules to provide 2G to 4G technologies for the Internet of things. WP Series are industrial grade modules to be embedded into applications such as smart metering, remote monitoring, transportation, security systems, networking, and healthcare, whereas AR series will be used for automotive applications.

Sierra Wireless AirPrime WP Series

The 2G versions will feature an M2M system-on-a-chip with a advanced tri-core architecture that includes a 2G EDGE modem, a Cortex A5 ARM application processor, and an ARM Cortex-M0 processor to enable ultra-low power operation. The 3G/4G LTE versions will be based on Qualcomm Gobi 9×15 chipset, a multi-mode modem solution powered by an ARM Cortex A5 processor and running Linux that integrates all the modes of 3G and 4G LTE.
Those wireless modules can then send data securely to AirVantage M2M Cloud which is comprised of 2 components:

  • AirVantage Enterprise Platform – Used to collect, transmit, and store machine data, and process and schedule events, from any number of devices, across any network operator around the world.
  • AirVantage Management Service – Used to centrally deploy and monitor AirPrime embedded modules, including configuring device settings, delivering firmware and embedded application updates, and administering airtime subscriptions.

Products can be developed with Sierra Wireless’ C/C++ Open AT Application Framework which includes:

  • An M2M operating system providing wireless services (voice call, data call, SMS) and TCP/IP connectivity, and gives access to hardware interfaces.
  • Libraries called Location (GPS), eCall (Modem), Security, Internet (TCP/IP Stack) and AirVantage agent (M2M Cloud client). There’s also a third party library “WirelessIDEA” that allows you to write your applications in Java.
  • Sierra Wireless Developer Studio – Eclipse based integrated development environment

Open_AT_Framework_Architecture

The framework is free to download from Sierra Wireless developer zone and requires a machine running Windows XP/7 with Java 1.6.

Sierra Wireless and ARM are demonstrating the new module architecture both at Mobile World Congress in Barcelona, Spain, and at Embedded World, in Nuremburg, Germany. The demo simulates a wearable healthcare device that could be carried by an elderly person or a patient, and if the person falls, the system detects it thanks to an accelerometer, places a call, and return to low power mode once the call completes. The Cortex M0 takes care of the accelerometer in low power mode (60 uA), an more powerful processor takes care of the call handling (60 to 90 mA). If the system always stay in low power mode, a cell battery should last over 2 years.

Watch the video below for an introduction of Sierra Wireless and their new architecture, and see the demo described above.

You can find more information on http://www.sierrawireless.com/NextGenModules.

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

Sailfish OS SDK Alpha Release Is Now Available for Linux

February 26th, 2013 No comments

Sailfish OS is a new mobile operating system based on the Qt platform that will soon end-up in mobile phone near you. Until now it was possible to build the SDK yourself, but it was pretty challenging since the documentation was lacking, as Jolla, the company behind Sailfish OS, focused on development. The good news is that you don’t need to build the SDK yourself anymore, since Jolla has just released Sailfish SDK Alpha for Linux 32-bit & 64-bit, and Windows & Mac OS versions will come later.

You’ll need a computer that meet the following requirements:

  • A host machine running a Linux operating system
  • Oracle’s VirtualBox version 4.1.18 or higher pre-installed on the host machine.
  • About 5GB of free disk space
  • 4GB of RAM or more is recommended
Sailfish OS UI Template

Sailfish OS UI Template

You can get started in two steps:

  1. Install the SDK – Download the 32 bit or 64 bit Linux installer. (~650 MB), change the permissions, and run it to complete the installation
  2. Run your first application – You can choose to start the IDE (Customized version of QtCreator) automatically right after the application, or launch it from a terminal window:
    ~/SailfishOS/bin/qtcreator

    Go to File-> New File or Project to start a new application based on a template that gives you a quick way to create your first Sailfish OS application. Detailed steps are available here.

Sailfish OS SDK is a collection of tools for developing Sailfish OS applications:

  • QtCreator integrated development environment (IDE)
  • Mer build engine for cross compilation
  • The Sailfish OS Emulator
  • Tutorial, Design and API Documentation
  • Repositories for additional libraries and open source code

If you’re used to develop Qt/QML applications for Symbian phones or other platforms (it seems most new mobile operating systems such as Ubuntu for Phone, Tizen,… are now using Qt/QML), you may feel comfortable developing apps for Sailfish because it makes use of familiar building blocks: Qt Quick, Qt Mobility 1.2, Qt Webkit 2.2. The SDK also adds “Sailfish Silica” QML module for Sailfish UI components.

For more information, check out sailfishos.org.

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

Wandboard Dual Unboxing and Quick Start Guide

February 21st, 2013 18 comments

I’ve just received Wanboard Dual development board together with an enclosure, and Wi-Fi antenna. This board is powered by Freescale i.MX6 Duallite Cortex A9 processor, and comes with 1GB RAM, HDMI output and Ethernet. There’s also a version based on Freescale i.MX6 Solo with 512 MB RAM. You can refer to my earlier post for more detailed specifications. I’ll start by showing some unboxing pictures of the board, and write a quick start guide (casing assembly, Ubuntu & Android boot, and development). I also planned to run some benchmarks and test videos, as according to a poll on Wandboard website many people want to use it as a media player, but I’ll do that a bit later since the current Android image is not up to the task yet.

Wandboard Dual Unboxing

The package I received contained 3 boxes: one for Wandboard Dual board, one for the enclosure, and one for the Antenna. The complete kit below should cost around $120, and Wandboard has distributors worldwide. Prices vary so make sure you shop around.

Wandboard_Dual_Casing_Wi-Fi_Antenna_Packages

Inside those packages, you’ll find the Wandboard Dual board, the casing and screws, and the Wi-Fi antenna with a cable to connect it to the Wandboard Dual SoM.
Wandboard_Dual_Casing_Wifi-Antenna

Let’s have a closer look at the board. The top of the board features all the ports (further described below). A SATA connector is included but none of the Freescale SoM (Solo and Duallite) provided with the Wandboard can support it.

Wandboard Top (Click to Enlarge)

Wandboard Top (Click to Enlarge)

At the bottom of the board, there’s an EDM compatible SoM with the Freescale Processor, the RAM chipsets, an internal microSD slot (for the OS), a camera connector, as well as the Wi-Fi module (Dual version only). There’s also a reset button and 4 expansion pin headers at the bottom of the baseboard.

Wandboard Dual Bottom (Click to Enlarge)

Wandboard Dual Bottom (Click to Enlarge)

I’ve take some pictures on the side of the board to have a close look at the ports accessible on the Wandboard.
Wandboard_Ports

From left to right, top to bottom we’ve got:

  • Serial connector (DB9), digital line OUT, digital line IN, microphone, and S/PDIF
  • HDMI, Gigabit Ethernet, and 5VDC Jack
  • USB OTG, microSD slot (for applications/data) and USB Host (USB 3.0 Connector, but only USB 2.0 is supported by Freescale SoM)

One of the advantage of the Wandboard is that it’s comprised of a baseboard and a system-on-module (SoM) which are based on the EDM standard. This means, at least in theory, that you could remove the SoM, and replace it by another EDM Compact SoM (85x60mm). I’ve seen some people interested in upgrading their board to “Wandboard Quad” by replacing the provided SoM with Technexion EDM1-CF-iMX6 Quad SoM.

Wandboard Baseboard with EDM Connector

Wandboard Baseboard with EDM Connector

I’ve removed the 4 screws to remove the EDM-IMX6 SoM.

Wandboard EDM-IMX6 SoM (Click to Enlarge)

Wandboard EDM-IMX6 SoM (Click to Enlarge)

On the back of the module, you’ve got 2 more RAM Chips, Atheros AR8031 (Gb Ethernet), and lots of markings. If you want to connect the Wi-Fi antenna, the (golden) connector is just on top of the Wi-Fi module, and right of the microSD slot in the picture above.

Wandboard Quick Start Guides

Casing Assembly

Putting the enclosure and the board together, is extremely easy. Align the board with the top of the case, cover it with the bottom, insert and tighten the 4 screws and you’re done.

Wandboard_Casing2
You’ve got yourself a nice looking box. There are 2 issues however. The first and most important is that the connector for the Wi-Fi antenna faced the bottom of the enclosure, so it’s impossible to connect the Wi-Fi antenna and use the enclosure at the same time (Wi-Fi should still work without antenna though), unless you drill a small hole at the bottom of the casing. [Update: Wandboard posted the instructions to assemble the enclosure with the Wi-Fi antenna. This involves using a cutter, but it still looks neat]. The second, which is less a problem, is that the OS is stored in the internal microSD, so each time you need to update the OS, you’ll have to open the casing. It would have been a bit more convenient to be able to use the external microSD as well.
Wandboard_Dual_Casing

Installing and Running Android in Wandboard

I’ll provide the instructions for a Linux PC, but it’s also possible to do with Windows, and Win32DiskImager (Included in the images). First Download and unzip Android Jelly Bean (Early Preview) for the Wandboard Dual in your PC:

wget http://www.wandboard.org/images/downloads/android-4.1.2-wand-dual-20130207.zip
unzip android-4.1.2-wand-dual-20130207.zip

You’ll get three files:

  • android-4.1.2-wand-dual-20130207.img – Android Jelly Bean Image for Wanboard Dual
  • android-4.1.2-wand-dual-20130207.txt – Release notes
  • win32diskimager.zip – Disk imager utility for Windows.

Now insert a 4GB (or more) microSD card into your PC, and copy the image with dd or dd.sh:

sudo dd.sh if=android-4.1.2-wand-dual-20130207.img of=/dev/sdc

You’ll have to replace “/dev/sdc” by your microSD card device. You can check by running  sudo blkid.

Insert the microSD card in the internal microSD slot, connect the HDMI connector to your TV, connect Ethernet, a keyboard and mouse via a USB hub, and power the board with a 5V/2A power adapter. After about 2 minutes the boot should be complete, and you should get to the lock screen.

Wandboard_Android

According to the release notes files, wifi, bluetooth, adb, usb gadget and uvc cam are not working in Android yet. HDMI might fail to setup audio rate, and there’s no Setup menu for Ethernet (only dhcp will work). Ethernet works, but there’s no Google Play or file manager, and copying apks into /system/app did not install them automatically. I’ll do more testing once another Android image is available.

Installing and Running Ubuntu 11.10 in Wandboard

Thep rocedure for Ubuntu is very much similar to the one for Android. Get the image, uncompress it, and copy it to a 4GB (or greater) microSD card.

wget http://www.wandboard.org/images/downloads/ubuntu-11.10-wand-dual-20130208.zip
 unzip ubuntu-11.10-wand-dual-20130208.zip
 sudo dd.sh if=ubuntu-11.10-wand-dual-20130208.img of=/dev/sdc

Insert the microSD in the Wandboard, make sure everything is connected, and power on the board. The boot will take a while, and the screen will stay black for about 1m20, then you’ll see a gray background and the mouse pointer, but it will only become usable after 3 minutes (From power on to Unity desktop).

Ubuntu 11.10 in Wandboard (Click to Enlarge)

Ubuntu 11.10 in Wandboard (Click to Enlarge)

As with most other ARM systems, Ubuntu feels really slow to use, mostly because of the I/O on the microSD card, and I suppose Unity is also part of the sluggishness, so using another desktop environment (e..g LXDE) should help with performance. I’ve also tried es2gears just in case GPU acceleration would magically work, but it’s still using software rendering, which is the same issue as with other Freescale i.MX6 devices at the moment. VPU should work, but since there appears to be a lot of fancy things to do with gstreamer, I’ll write a separate post about video playback on Freescale i.MX6 platforms. If you’re planning to use the board as an embedded platform (e.g. for automation), a Yocto Project build is in the work.

Wandboard SDK and Kernel Build

Wandboard developers eventually intend to release the source code in a public repository, but in the meantime, u-boot and linux source code is available as a tar file, which also contains binaries (precompiled kernel, kernel modules, u-boots and patchram util), firmware (for VPU, Bluetooth and WiFi), tools and documentation like SD card layout.

Download and extract the SDK:

wget http://www.wandboard.org/images/downloads/wandboard-sdk-20130208.tar.xz
tar xvf wandboard-sdk-20130208.tar.xz

You can build the kernel and modules (for Linux/Ubuntu) by following the steps below, assuming the toolchain is already installed:

cd wandboard-sdk-20130208/linux-3.0.35-imx6-wand
cp wandboard_ubuntu_defconfig arch/arm/configs/
make ARCH=arm wandboard_ubuntu_defconfig
make -j8 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- uImage
make -j8 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules
make -j8 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules_install INSTALL_MOD_PATH=../modules

Now that the build is complete, copy uImage and the modules to the microSD card with

Ubuntu, and umount it: sudo dd if=arch/arm/boot/uImage of=/dev/sdc bs=1M seek=1
cp ../modules/lib/modules/3.0.35/ /media/<rootfs_mount_point>/lib/modules -rf
sudo umount /dev/sdc1

Insert the microSD card in the Wandboard, it should boot Ubuntu, and can verify the kernel is the one just you built by displaying the build date with uname:

linaro@wandboard:~$ uname -a
Linux wandboard 3.0.35 #3 SMP PREEMPT Thu Feb 21 18:41:10 ICT 2013 armv7l armv7l armv7l GNU/Linux

Ideally you should connect a null modem cable or DB9 serial to USB cable to access the serial console for bootloader and kernel debugging, but since I don’t have one of those, I haven’t tried.

If you have any questions or technical issues with the Wandboard, you can get support on Wandboard Google Group. Header pins description and schematics are available in Wandboard User’s Manual.

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