Collabora and Fluendo have recently announced the availability of GStreamer’s Software Development Kit for Android, which allows developers to create multimedia playback applications for Android smartphones and tablets using Gstreamer and the Android NDK.. The GStreamer SDK for Android targets Android 2.3.1 Gingerbread or higher (API Level 9 or greater). However, due to some of the restrictions of previous versions of Android, some features such as hardware acceleration are only available on Android 4.1 Jelly Bean (API Level 16 up). Normally, you’d need the GStreamer SDK which can be installed on Linux (Ubuntu, Fedora and Debian), Windows (XP/Vista/7/8) and Mac OS X (10.6 to 10.8). But for developing Android applications using Gstreamer, you don’t. What you do need first is a typical Android development environment with the latest Android SDK, the latest Android NDK, and optionally, but recommended, the Eclipse IDE with Android ADT and NDK plugins. Once everything is […]
2012 Embedded Market Study – Software Development & Processors
I’ve just come across an Embedded System Study by UBM published in April 2012. The company surveyed over 1,700 professionals working on embedded systems who are mainly based in the US (56%), but also in Europe (21%) and Asia (12%). The report is 87 long, but I found some of the slides are particularly interesting in regards to programming languages, operating systems and software life cycle, as well as processor/micro-controller choices. Unsurprisingly C (65%), C++ (20%) and assembler (5%) are still the main languages used for embedded software development. In this report, we also learn that the average team is composed of 14.5 members including 5.6 software engineers, 5.6 hardware engineers and 3.3 firmware engineers. 2012 was the first year they included QA Engineers and system integrators both with 2.6 members on average working on projects lasting from less than 6 months to over 25 months. UBM survey also provides a […]
AMLogic Releases U-Boot and Updated Linux Kernel Source Code
AMLogic released kernel 3.0.8 source code for AML8726-MX a few months ago, and yesterday they provided an updated tarballs with the kernel, and for the first time, AFAIK, released the source code for U-Boot. There are 4 new files apparently generated from the (internal) git repository in AMLogic: common-2012-11-20-git-b687495906.tar.gz (108M) – This is the same kernel 3.0.8 release has last time, but with updated code. m1-kernel-android-2012-11-20-git-5d0f6b8e93.tar.gz (103M) – This looks like an older kernel 2.6 for AML8726-M1 only. uboot-master-2012-11-20-git-9b50e9a295.tar.gz (16M) – U-Boot 2010.06 possibly to use with the older 2.6 kernel. Only for M1 & M3 platforms. uboot-next-2012-11-20-git-b0e532795a.tar.gz (40M) – U-Boot 2011.03 for use with M3 and M6 platforms. I’ve already explained how to build the kernel in the previous post, so I’ll focus on U-Boot this time. Ubuntu 12.04 arm-linux-gnueabi- toolchain fails to build U-Boot (uboot-next), so you’ll have to install Sourcery toolchain instead: wget http://openlinux.amlogic.com/download/linux/ARM/gnutools/arm-2010q1-188-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 tar xjvf arm-2010q1-188-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 […]
Freescale i.MX6 Resources: Development Boards, Documentation, Source Code and Tools
Reader “Mark” recently left a comment saying the NDA on Freescale i.MX6 resources was lifted and documentation and source code were now available for the platform. So it’s time for me to look into it, and provide an overview of Freescale i.MX6 features, list available development platforms, and have a closer look at the documentation, source code and tools for the platform. Freescale i.MX6 Processors In 2011, Freescale initially announced 3 processors in the i.MX6 series for consumer, industrial and automotive markets, but added 2 lite SoC in 2012, and there are now 5 members in the family: Freescale i.MX6SoloLite – Single Cortex A9 processor up to 1 GHz with 256KB L2 Cache, 32-bit DDR3 and LPDDR2 memory support, and 2D graphics accelerator (Vivante GC355 + GC320) Freescale i.MX6Solo – Single Cortex A9 core up to 1 GHz with 512KB L2 Cache, 32-bit DDR3 and LPDDR2 memory support, and 2D & […]
Learn How to Write a Driver for Linux 3.x With The Linux Driver Template
A Linux Driver Template (LDT) has been published to help new Linux kernel developers writing hardware device drivers. Constantine Shulyupin posted the Linux Driver Template (LDT) on the Linux mailing list in order to merge it into the mainline Linux kernel. The code can be used as as a starting point for new drivers, and shows how to use several Linux facilities such as module, platform driver, file operations (read/write, mmap, ioctl, blocking and nonblocking mode, polling), kfifo, completion, interrupt, tasklet, work, kthread, timer, simple misc device, multiple char devices, Device Model, configfs, UART, hardware loopback, software loopback and ftracer. This sample has been added to other device drivers samples in eLinux.org. And if you want to learn further there’s always the Linux driver bible: “Linux Device Drivers, Third Edition” which can be downloaded for free as PDF, although it’s for 2.6.10 kernel and many parts may not be up-to […]
Samsung Exynos 4412 (Origen 4 Quad Board) Open Source Development Schedule
If you’ve got an Exynos 4412 development board such as Hardkernel ODroid-X or Insignal Origen Quad, or even other devices based on Exynos 4412 such as the Samsung Galaxy S3, you may be interested to know the open source development schedule for the platform as show below (Source: Origenboard.org). Samsung already released the source code for Samsung Galaxy S3 in June, but this should add more recent drivers and support for more peripherals. The stable release should be available on the 21st of December 2012, but in the meantime, you could always pickup features earlier as they are being implemented. The code is available in http://git.insignal.co.kr/ (Git repository) and is maintained by both Insignal and Samsung. Jean-Luc Aufranc (CNXSoft)Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011. […]
Qt Creator 2.6 Release and Qt for Android (Necessitas) Merged to The Qt Project
Qt Creator Version 2.6.0 has been released yesterday. The most notable change is the introduction of “Kits” to replace “Targets” that were used in previous versions of Qt Creator. Previously, “Targets” such as Desktop or Remtoe Linux were added to a project’s configuration in order to use predefined configurations. “Kits” extend the use of “Targets” and contain settings for which device type to develop for, the sysroot, the compiler, the debugger and the Qt version to use, and possibly even more settings. Users can define their own “Kits”, which should facilitate control of build and run environment and projects sharing. Other changes include full screen support on Mac OS Lion and later, numerous fixes and additions to the qrc file editor, direct rebuilding and cleaning of .pro file based subprojects, more C++11 fixes, and more. On the platform side, QNX/Projects support was added, but Symbian (no maintainer) and Meego (due to […]
Getting Started with 64-bit ARM Development: Hello World and Linux on ARMv8 Fast Models
At the end of last year, ARM announced ARMv8, the first ARM 64-bit ARM archtecture, and last week at ARM Techcon 2012, ARM announced the first ARMv8 cores: Cortex A53 and A57. But since there’s no silicon at the moment, what if you wanted to develop code running on ARMv8 before the hardware is available? The answer is: Fast Models, a Virtual Platform (VP) to accelerate software development. This is especially important for ARMv8 since hardware is not expected to be available for another year. In this post, I’ll first show how to run “Hello World!” in ARMv8 fast models, then we’ll run ARM Linux 64-Bit (Aarch64) in the virtual platform. ARMv8 Foundation Model In order allow the developer’s community to program for ARMv8 (Cortex A53/A57 cores), ARM has made ARMv8 Foundation Model, a virtual platform, available free of charge. This v8 Foundation model provides a basic ARMv8 platform environment […]