LinuxCon 2011 Presentation: Embedded Systems

The fourth presentation entitled  “Embedded Systems” was presented by Tim Harder, developer at OSUOSL (Oregon State University Open Source Lab) on the 16th of August 2011 at LinuxCon 2011. Abstract: This presentation deals with software development for Embedded Systems especially focusing on Linux and open source.  It describes current software development challenges such as fast software life cycle and memory footprint issues, lists several open hardware projects (Beagleboard, Pandaboard, Bug Labs, Gumstix),  microcontrollers (Arduino and TI MSP430), different operating systems (Android, Meego) and toolchain build tools (Buildroot, Yocto) for embedded systems. It also explains specific challenges to embedded software development such a the numerous number of hardware platforms and software & hardware  tools. Finally, it deals with the cross-compilers, emulators (e.g. qemu) and debugging tools (gdb, jtag, serial console, etc…). If you want to download the presentation slides, please go to Embedded Systems and use the download button on top of […]

LinuxCon 2011 Presentation: Introduction to Python Programming Language

The third LinuxCon 2011 presentation is “Intro to Python” by Peter Krenesky, Lead Software Engineer at OSU Open Source Lab. Abstract: This presentation is a Python programming language tutorial with basics of Python including none, strings, formatting, data structures (tuple, list, dict, slices, etc…), classes (methods, inheritance, initializers, etc…), if statements, iterations and more. If you want to download the presentation slides, please go to Intro to Python and use the download button on top of the Slideshare presentation. If it does not work, you may also download a copy here or here. 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. www.cnx-software.com

How to Write and Submit a Linux Kernel Patch

Greg Kroah-Hartman has a very good tutorial about writing and submitting a patch to the Linux kernel. The video is over 1 year old but this is still relevant. The materials for this tutorial are available via git: git clone git://github.com/gregkh/kernel-tutorial.git Alternatively, you can also download a copy of the presentation slides. The actual presentation is divided into 6 parts: git basics (git branch, git clone…) Kernel coding style (Details can be found in Documentation/CodingStyle) Fixing a file (with scripts/checkpatch.pl scripts) Generating a patch (with git -diff) Email the patch (with scripts/get_maintainer.pl and git send-email) Q&A If you want to skip the git basics and kernel coding style parts (although I don’t recommend it), fast forward to 13:33. All patches by in the linux kernel are checked by at least 2 persons. Before submitting a patch, you’ll have to make sure of the following (Checklist): Kernel builds with patch applied […]

ARM TechCon 2011: Software & System Design Schedule

ARM Technology Conference (TechCon) 2011 will be hosted in Santa Clara on the 25-27 October 2011. There will be many events and classes related to Chip Design and Software & System Design. The Software & System Design events will take place on the 26th and 27th October 2011. Here’s the schedule for Software & System Design events for the 26th of October: Time Class Track 11 am The 2012 Compute Subsystem Creating Smarter Systems 11 am Practical Cortex Debugging: Serial Wire Viewer and ETM Tracing Developing/Debugging 11 am Integrating a CMOS Imaging Sensor into an ARM-Based Embedded Application Human Interface Design 11 am Embedded IPv6 – Now is the time Networking & Connectivity 11 am RSA & AES Libraries protected against side-channel attacks Safety & Security 11 am Introduction to the ARM Architecture The Fundamentals of ARM 12 pm Optimizing SoC development through a common design foundation Creating Smarter Systems […]

New Revision of C++ Programming Language: C++11

The Final International Draft standard (FCD) was unanimously approved on August 12th, 2011. The standard should be published this year. The draft name of the standard is C++0x, but since it will be published this year, it should probably renamed C++11, and if there are delays in its publication it could well be renamed to C++12. You can download the 1334 pages “Working Draft, Standard for Programming Language C++” to get the full details. If you don’t feel like going thru that massive document, but still want to learn about C++0x, I recommend you check the C++0x FAQ on Bjarne Stroustrup (The creator of C++) homepage. Here are some the new features and improvements: initializer-lists – Initializer lists are not just for arrays any more uniform initialization syntax and semantics template aliases (previously know as template typedef) rvalue references defaulted and deleted functions variadic templates auto – deduction of a type from […]

HTC Releases OpenSense SDK

HTC recently released OpenSense SDK, a framework encompassing all available HTC SDKs as well as features that will be offered in the future for HTC Sense user interface. Supported features include: Common Controls API: UI widgets and components that will provide developers with the ability to provide the Sense UI look and feel to their applications. Stereoscopic 3D (S3D) API: API documentation and sample code that illustrates how to programmatically enable the 3D display mode of the parallel barrier based screen for various types of applications. This API is provided as part of the phone add-on extension to the Android SDK. Tablet Pen API: API documentation and sample code for providing a framework for fully fledged drawing and painting applications as well as full access to the pen events at a low level. This API is provided as part of the tablet add-on extension to the Android SDK. API documentation […]

Fix “Static Random Posts Widget” WordPress Plugin Page Not Found (404) Error

If you are using the latest version of Static Random Posts Widget (Version 1.1) an HTTP Error 404 (Page not found) will be generated although the plugin works fine. The 404 error may slightly delay your page load, you can check if you have the issue with PageSpeed Online. If you have such issue “Avoid bad requests” should appear in the results with the faulty link to http://yourblog.com/wp-content/plugins/static-random-posts/js/static-random-posts.js?ver=1 The reason for the error is the plugin is actually installed in plugins/static-random-posts-widget. To fix the issue, edit  ./wp-content/plugins/static-random-posts-widget/static-random-posts.php and look for path declarations with static-random-posts and change it to static-random-posts-widget. Alternatively, you can download static-random-posts.php.bz2 I modified and uncompress it to replace static-random-posts.php. Please backup your file first. 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 […]

Yocto Project: Build Your Own Custom Embedded Kernel Image

The Yocto Project is an open source collaboration project that provides templates, tools and methods to help you create custom Linux-based systems for embedded products regardless of the hardware architecture. The first official release (Yocto Project 1.0) has been made available on the 6th of April 2011. Yocto Project Overview See this short video presentation of the Yocto Project which explains its goals. It’s a complete embedded Linux development environment with tools, metadata, and documentation – everything you need such as emulation environments, debuggers, an Application Toolkit Generator, etc… It is not a new build system however such as buildroot, instead it relies on the Poky build tools that provide an open source development environment targeting the ARM, MIPS, PowerPC and x86 architectures. Here’s what the Yocto Project provides: A recent Linux kernel along with a set of system commands and libraries suitable for the embedded environment. System components such […]