Archive

Posts Tagged ‘sdk’

Jolla Releases Sailfish OS Hardware Adaptation Development Kit for Android (CyanogenMod)

July 19th, 2014 1 comment

If you don’t quite have the spare cash to buy a Jolla Phone, or don’t own a Nexus 4, but still want to try Jolla’s Sailfish OS on your smartphone, here’s your chance, as Jolla has just released their “Sailfish OS Hardware Adaptation Development Kit”, which allows you to install Sailfish OS on any Android phone that supports CyanogenMod 10.1.

Sailfish_OS_CyanogenMod

The development kit is comprised of:

  • Mer core – The Linux userspace core
  • Android Hardware Adaptation (HA/HAL), consisting of:
    • Device-specific Android Kernel
    • Binary device drivers taken from an Android ROM (e.g. CyanogenMod)
    • The libhybris interface built against the binary drivers
    • Middleware packages depending on hardware-specific plugins
    • A Qt/Wayland QPA plugin utilizing the Android hwcomposer
    • Sailfish OS component

You’ll a smartphone and a build machine matching the following hardware and software pre-requisites:

Smartphone

  • ARMv7 Android device officially supported by CyanogenMod 10.1.x
  • Means to do backup and restore of the device contents (e.g. SD card or USB cable to host computer), as well as flash recovery images to the device
Build Machine

  • A 64-bit X86 machine with a 64-bit Linux kernel
  • Mer Platform SDK
  • Sailfish OS Target
  • At least 16 GiB of free disk space (10 GiB source download + more for building) for a complete Android build; a minimal download and HADK build (only hardware adaptation-related components) requires slightly less space
  • At least 4 GiB of RAM (the more the better

If you’ve got all that, you’ll need to follow the build instructions found in a 57-page PDF explaining how to prepare the device, setup the SDK, setting up a scratchbox2 target, packaging the droid HAL, creating the sailfish OS rootfs, flashing the rootfs image, and more… So it’s not really an easy “three steps solution” at this stage, and you may want to do this on a “spare” phone…

This is all new, and things may not work as expected, hence the following warning can be found in the document:

Modifying or replacing your device’s software may void your device’s warranty, lead to data loss, hair loss, financial loss, privacy loss, security breaches, or other damage, and therefore must be done entirely at your own risk. No one affiliated with this project is responsible for your actions but yourself. Good luck.

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

$70 MicroNFCBoard Brings NFC Connectivity to Any Board or Device (Crowdfunding)

July 11th, 2014 No comments

AppNearMe MicroNFCBoard is a development platform for Near Field Communication (NFC) comprised of an NFC transceiver, an NXP MCU, and all software stack and tools you need for development. This board also exposes various I/Os that allows you to connect to external hardware or devices, and it can be used with an Arduino, Raspberry Pi, mbed or PC/Mac.

microNFCBoardLet’s go through the board specifications first:

  • MCU – NXP LPC11U34FHN33/421 Cortex M0 MCU @ 48MHz, with 10KB RAM, 48KB FLASH, 4KB EEPROM
  • NFC
    • Transceiver – NXP PN512. Reader/Writer and card operation modes supporting ISO14443A/Mifare and FeliCa schemes.  NFCIP-1 mode
    • Splittable antenna
  • USB – 1x micro USB port for power and programming
  • I/O – 20x through holes with access to serial (UART), I2C, SPI, 4x ADC inputs, IRQ, Boot and Reset, and power pins. (2x pin header that you can solder are provided)
  • Misc – Reset and bootloader enable push-buttons, 2x LEDs.
  • Power Supply – 5V USB, 3.6-6V or 3.3V supply
  • Dimensions – 35x100mm

The board can be programmed using mbed.org online compiler, high level C/C++ SDK, as well as libraries and projects. I’d like to point out that AppNearMe has been working on NFC and mbed for a while, as I wrote about an mbed platform using their uNFC stack back in 2012.

micronfcboard_smartphone

The three main NFC modes can be handled with the board using the provided API:

  • Tag reading/writing (types 1, 2, 3 and 4) – Used to communicate with passive NFC tags
  • Peer-to-peer (Android Beam/SNEP) – To send and receive messages over NFC.
  • Tag emulation (type 4) – Emulates a NFC tag that you can read with your NFC enabled smartphone for example.

The software also allows you to decode in NDEF (NFC Data Exchange Format) including URL/URI, text, Bluetooth pairing info, and MIME Type + data.

MicroNFCBoard can be used in standalone mode, or can be connected to Arduino via SPI, and other platforms (ARM development boards, PC/Mac) via USB using a Python library for programming. The board will be fully open source with the company releasing the board firmware, and hardware designed files.

Some practical examples include a robot piloted with NFC tags, a Youtube video transferred from an Android phone to a Raspberry Pi via NFC, a mood lamp demo, or light and temperature data in real-time with an Android phone. The video below shows how it’s possible to have different users login to the Raspberry Pi board with their own NFC tag, or their smartphone.

The company has launched a Kickstarter campaign to fund mass production of the board with 20,000 GBP. The early bird perk start at 30 GBP (~$51.5) to get MicroNFCBoard, after which it will be 40 GBP (~$68.5). Other perks with NFC tags, sensors, multiple MicroNFCBoards, the mood lamp, etc.. are also available. The boards are expected to ship on October 2014.

Via Intorobotics

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

Texas Instruments Announces Sitara AM437x Cortex A9 SoCs and Evaluation Modules

July 2nd, 2014 5 comments

Texas_Instruments_Sitara_AM437xThe first time I heard about Texas Instruments Sitara AM437x was via a TechNexion EDM-CT-AM437x system-on-module back in 2012, but Texas Instruments Sitara Cortex A9 processors development seems to have dragged a little longer than expected. Nevertheless, the company has now formally announced their Sitara AM437x ARM Cortex A9 SoC targeting automation, IoT gateways, and other industrial applications, and featuring four PRUs (Programmable Real-time Units), and support for dual camera for terminals with bar code scanning.

At launch there will be four AM437xprocessors: AM4376, AM4377, AM4378, and AM4379. The processors will all be based on a single Cortex A9 core  @ 800 to 1000 MHz with 64KB SRAM shared with 32KB data cache and 32KB programmable cache, 256 KB L2 and L3 caches, a 32-bit memory interface supporting LPDDR2, DDR3, and DDR3L, a 2-port Gigabit Ethernet switch , two USB 2.0 OTG + PHY and the following other interfaces:

  • Serial Ports – 6x UART, 5x SPI, 3x I2C, 2x McASP, 2x CAN, HDQ, QSPI
  • System – EDMA, Debug, Counter (SyncTimer32K), WDT, RTC, 3x eQEP, 3x eCAP, JTAG, 12x Timers, 6x PWM
  • Parallel – 3x MMC/SD/SDIO, GPIO, 2x Camera, 2×12-bit ADCs, NAND/NOR (16bit ECC)

Some interfaces (HDQ, McASP, eQEP..) seem specific to Texas Instruments, and if you’d like to get a short explanation of these, I’ve updated my technical glossary.

The main differences between the four SoCs are related to the presence of a PowerVR GPU and EtherCat support as shown in the table below.

AM4376 AM4377 AM4378 AM4379
Graphics N/A PowerVR SGX530
PRU-ICSS 4x 32-bit Programmable Real Time Unit (PRU) 4x 32-bit Programmable Real Time Unit (PRU) + EtherCAT slave support 4x 32-bit Programmable Real Time Unit (PRU) 4x 32-bit Programmable Real Time Unit (PRU) + EtherCAT slave support

Total power consumption will be less than one watt in active mode, about 5mW in deep sleep, and less than 0.03mW in RTC-only mode. AM437x processors are available in 17x17mm, 0.65mm VCA packages.
AM437x_Block_Diagram
Texas Instruments already have a software development kit based on Linux 3.x mainline and with a GUI launcher, as well as graphics and other demos. Adeneo Embedded also announced a Windows Embedded Compact 7 (WEC7) BSP for AM437x processors, SYS/BIOS RTOS with support for real-time industrial protocols will be available in Q3 2014, Android 4.3 or greater support will be released by a third-party in the fall of 2014. Other various RTOS solutions by Mentor Graphicsm, QNX, Wind River, Green Hills Software and Ittiam are also planned, but no timeline has been provided.

Texas Instrument AM437x Evaluation and Development Kits

The company has already readied an evaluation module based on AM4378 with a 7″ touch screen.

AM437x Evaluation Module (TMDXEVM437X)

AM437x Evaluation Module (TMDXEVM437X)

TMDXEVM437X Kit has the following key features:

  • Sitara AM4378 ARM Cortex-A9 Processor
  • System Memory – 2GB DDR3
  • Storage – On board 4GB NAND and 4GB eMMC memory, 1x Micro SD/MMC
  • Vido Output / Display – 7″ capacitive touch screen LCD, HDMI output
  • Audio – Audio in/out
  • Camera – 2 camera modules
  • Connectivity – 1x Gigabit Ethernet
  • USB – 1x USB2.0 OTG, 1x USB 2.0 host
  • Other I/O – 1x UART, 2x CAN, 1x JTAG
  • Misc – Connector for Wilink8 (Wi+Fi + Bluetooth module)
  • Power – TPS65218 Power management IC

The development kit currently supports the Linux SDK, and sells for $599. You can find more information on AM437x evaluation modules page. Two other evaluation modules are schedule for later this year: TMDXIDK437X Industrial Development Kit based on AM4379 with 1 GB RAM, and no display but with industrial protocols support thanks to SYS/BIOS RTOS (Q3 2014 – $329), and TMDXSK437X based on AM4378 with 1GB RAM, a 4.3″ capacitive touchscreen (Q4 2014 for less than $300). Eventually, I suspect there may also be a low cost platform for hobbyists… Beaglebone Green anyone?

You can watch the introduction video below for an overview about TI Sitara AM437x SoCs, evaluation modules, and software solutions.

LinuxGizmos reports Sitara AM437x processors will start sampling later this month, mass production is expected to begin Q4 2014, and pricing will be around $15 per unit for 1k orders. You can find more information on Texas Instruments’ Sitara AM437x page, as well as TI Wiki.

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

How to Try Android L Developer Preview in Ubuntu 14.04

June 27th, 2014 No comments

As mentioned yesterday, Android L Developer Preview was about to be released, and this is now done with images for Nexus 5 “Hammerhead” and Nexus 7 “razor” available right now. However, if you don’t have either of these devices, or you’d rather not install a beta version on the phone you use everyday, you can still give a try in the SDK emulator.

I’ve tried Android L myself in Ubuntu 14.04. Here’s what you have to do:

  1. Install Android Studio IDE in Ubuntu, and Create a new Project  or open an existing project (Android Studio Version is now 0.61)
  2. Click on Tools->Android->SDK Manager in the top menu, and select the Android L (API 20, L Preview) packages as shown below, and click on “Install xx Packages” button.
    Android_SDK_Manager_Android_L
    Accept the license as required, and click Install. This step can take countless hours…
  3. Now we’ll need to create a Virtual Device for the emulator. Go to Tools->Android->AVD Manager, select “Device Definitions” tab, and you’ll see some new types of devices like Android TV and Android Wear Round and Square.
    Android_L_Virtual_Device
    But I just scrolled down and selected “Nexus 7″ and clicked on “Create AVD” button…
    Nexus_7_Android_L_Intel_Atom_WXGA720
    …and configured the system to use “Android L (Preview) with the Intel Atom (x86) CPU/ABI, and WXGA720 skin, and clicked OK.
  4. Your Nexus 7 with an Intel Atom processor :), running Android L should now show in the list of devices. Make sure it is selected, click on the Start button, and then Launch.
    Nexus_7_AVD_Android_L
  5. After a little while, you should be able to access Android L!

    Android L Screenshots (Click to Enlarge)

    Android L Screenshots (Click to Enlarge)

The screenshot on the right, is the blue and red rectangles animation that starts when you click 7 times on the Android version… There’s no Google Play in the emulator, so you’ll need to sideload the apps, or install a third party market such as Amazon Market to try out apps.

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

Google Formally Launches Android TV. Android TV Set-Top Boxes and TVs to be Available in H2 2014

June 26th, 2014 3 comments

After Android L for mobile devices, and Android Wear for wearables, Google also announced Android for your television at Google I/O 2014, and after definitely killing “Google TV”, renaming it to “Google Services for Smart TV”, the company went for the obvious and called it “Android TV”, which will get messy with all the Chinese “Android TV” boxes that do not run “Android TV” but simply “Android”…

Android TV User's Interface

Android TV User’s Interface

Google apparently used an Android TV reference platform (ADT-1) based on Nvidia Tegra 4 K1 at I/O to showcase their latest implementation of Android the the living room. I’ve embedded the video of the demo below, but the key part of the demo can be summarized as follows:

  • Android TV’s “TV Input Framework” can overlay notifications and other data on top of various video sources such as HDMI, TV tuners, and IP TV receivers
  • Voice control demo (with smartphone) with requests such as:
    • “Breaking Bad” to return the video, link to actors description, and their film / series history.
    • “Oscar nominated movie 2002″ will indeed return the relevant list of movies for you to play or download.
    • “Who plays xxx in yyy movie” will return the actor or actress who played a specific character in yyy movie.
  • Google Play Movie TV app adapted from tablet app
  • Android Wear smartatch can control an Android TV box
  • Quick game demo of Leo’s Fortune.
  • Multiplayer / device demo with one player using Android TV with a Gamepad, and another in an Android tablet playing NBA Jam
  • Android TV embeds the functionality of ChromeCast streaming stick which has been enhanced with WebAudio & WebGL support, enhanced Closed Caption support, improvements for the Media Player Library for easier integration with MPEG-DASH Smooth Streaming, and HLS.

Android TV will find its way in Sharp, Sony TV, TP Vision and Philips HDTVs, and well as streaming boxes by companies such as Asus and Razer. Razer has already announced their Android TV micro-console (pictured below), but did not disclose any details, except it will be available in the fall.
Razer_Android_TV

Beside Nvidia, Qualcomm, MediaTek, Marvell, Intel, and other silicon vendors are also actively involved in Android TV.

More details about Android TV for developers will eventually show up at developer.android.com/tv

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

Google Releases Android Wear SDK, LG G Watch and Samsung Gear Live Smartwatches Are Now Available

June 26th, 2014 1 comment

I’ve just covered what’s new in Android L?, and I’m going to focus on Google I/O 2014′s announcements related by Android wear starting with hardware with LG G Watch ,and Samsung Gear smartwatches, followed by some details about the first official release of Android Wear SDK.

LG G Watch

LG_G_WatchSpecifications:

  • SoC – Qualcomm Snapdragon 400 @ 1.2 GHz
  • System Memory – 512MB RAM
  • Storage – 4GB eMMC
  • Display – 1.65” IPS display (280 x 280)
  • Connectivity – Bluetooth 4.0 LE
  • Sensors – 9-Axis (Gyro / Accelerometer / Compass)
  • IP Rating – IP67 dust and water resistant
  • Battery – Li-ion 400mAh
  • Dimensions – 37.9 x 46.5 x 9.95 mm
  • Weight – 62.5 grams

LG G watch will run Android Wear (as it’s the subject of this post), and it currently available on Google Play for $229 (US only?) with shipping scheduled for early July.

Samsung Gear Live

Samsung_Gear_LIveSpecifications:

  • Processor – Unnamed 1.2 GHz processor (Samsung Exynos?)
  • System Memory – 512MB RAM
  • Storage – 4GB Internal Memory
  • Display – 1.63” Super AMOLED (320 x 320)
  • Connectivity – Bluetooth 4.0 LE
  • Sensors – Accelerometer, Gyroscope, Compass, Heart rate monitor
  • IP Rating – IP67 dust and water resistant
  • Battery – Li-ion 300mAh
  • Dimensions – 37.9 x 56.4 x 8.9 mm
  • Weight – 59g

It looks similar to Samsung Gear 2 with Tizen, but this one runs Android Wear with Google Services, Google Now,  Google Voice, Google Maps & Navigation, Gmail, Hangouts, and you can recieve notification for SMS, E-mail, etc. It’s available for $199 on Google Play.

LG G Watch has a larger battery (33% more), a barely larger screen (1.65″ vs 1.63″0 but at lower resolution (280×280 vs 320×320), but the Samsung Gear Live features an Heart rate monitor which at first glance makes it a better deal.

If you’re wondering about Motorola’s Moto 360 rounded smartwatch, it will be available later. In the meantime, Android Community wrote an hands-on post.

Android Wear SDK and Apps.

Back in March, Google released Android Wear Developer Preview, and the company will release the first official release of the Android Wear SDK later today possibly via the Android L developer preview page, so developers can actually develop for Android (Wear) based wearables with a stable API to build user interfaces, control sensors, handle voice actions, and exchange data between phones and wearables.

Google also showcased a few apps optimized for Android Wear such as Eat24 that let’s you order food with your watch using a few swipes, and Lyft an leverages Google Now so that you can use a voice command to call a (ride-sharing) car, and rate the driver.

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

Google Releases Android L (Lollipop?) Developer Preview

June 26th, 2014 2 comments

Google I/O is taking place right now in San Francisco, and the company made several announcements. Although they have not announced the full codename of Android 5.0, referring to the next version as “Android L” (Lollipop would be nice though), but they’ve already documented the key changes made to Android L, and a developer preview will be released later today (26 June), together with binary images for Google Nexus 5 and Nexus 7.

Android_Lollipop

Beside the smartphone and tablet developer preview, there will be 3 other SDKs for Android L:

  • Android Wear SDK – Android for wearables with sync notifications, wearable apps, data transfer APIs, and voice actions, e.g. “Ok Google, call mum”.
  • Android TV Preview SDK – Android for TVs with pre-built fragments for browsing and interacting with media catalogs, in-app search, and recommendations.
  • Android Auto SDK – Android for the car with apps featuring consistent user experience between vehicles, and minimizing distractions.

I’ll go through various software and hardware announcements for Android Wear and TV in separate blog posts, and probably skip Android Auto for now.

So what’s new in Android L Developer Preview?

Material Design

Material Design is is a new design language that will let developer create app which look similar to Google Now. Google chose the name “Material” as it is apparently inspired from real materials such as paper and ink. Android L user interface will be entirely designed with Material Design. The best is to look at an example.

Gmail Now vs Gmail "L"

Gmail Now vs Gmail “L”

On the left, we’ve got the current Gmail app, and on the right the newly designed app for Android L. Lots of it looks like cosmetic changes, but you’ll have noticed the three dot and new mail icons are gone, and all menu will be accessible via the top left icon. There are also some light and shadow effects that will make users feel like they’re touching real elements.

More details can be found in this Material Design presentation (PDF).

Improved Notifications

Notifications have also changed with a new design based on Material, and the ability to display notifications on the lock screen.

Android_L_Notifications

I understand lockscreen notifications are optional, and if you don’t like to show them in the lock screen using visibility controls. As you can see from the screenshot above it works very similar to Google Now which cards that you can discard once you’re done. Notifications will also be able to pop-up in games or other full screen apps, and you’ll be able o take action within the notification, for example by declining or accepting a video call request.

Recents

The list of recent apps will become the list of recent everything, simply called “Recents”, as it will include both apps, web pages, and documents.

Better Tools for Improving Battery Life

As devices become more powerful, they also become more power hungry despite efforts by SoC designers to reduce energy usage. Badly programmed apps are however the main culprit of short battery life, so Google has introduced Project Volta to help user and developers optimize power consumption. Developers can use “Battery Historian” tool to monitor power consumption of different processes, and which hardware block (e.g. Cellular radio) is currently being used.

Battery_HistorianUsers will also have their own app / feature dubbed “Battery Saver” to improve battery life, and Google claims their Nexus 5 should be able to last an extra 90 minutes on a charge with Battery Saver enabled. This is achieved by reducing the performance of the device once the battery has dropped below 20% charge. At that time, a notification would pop-up to let the user select he wants to enable Battery Saver mode.

Under the hood improvements

As as been widely reported, Google recently killed Dalvik in a recent commit in AOSP, and ART will become the default JAVA runtime using ahead-of-time compilation for speedier application loading time, and memory usage improvements. Google also claims it provides true cross platform support for ARM, MIPS and x86.

Android L will support 64-bit instructions including ARMv8, x86-64 and MIPS64. This will provide a larger number of registers, and increased addressable memory space. Java developers won’t needto change their apps for 64-bit support. One the first Android64 devices is likely to be the Nexus 9 tablet powered by Nvidia Tegra K1 Denver as previously reported.

On the graphics side, Android L adds support for OpenGL ES 3.1, and includes Android Extension Pack for developers with tesselation and geometry shaders and other features that should bring PC and console class graphics to Android games according to Google.

Via Anandtech and Liliputing

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