Tag: linux

Nuttx on Linux

Posted by April 2, 2014

If you are also working with Nuttx, you will love the “sim” configuration. It will allow running a minimal version of Nuttx as a regular program on a linux machine (assuming 86x_64).

Before getting the sources and building anything you will need the 32-bit version of the GCC and the following libraries that can be installed like this:

sudo apt-get install -y gcc-multilib libc6-dev-i386 lib32z1-dev

After installing there is a final thing you need to fix on your own (see this launchpad ticket)

sudo ln -s /usr/include/x86_64-linux-gnu/zconf.h /usr/include

Now get the Nuttx sources using git like this:

git clone http://git.code.sf.net/p/nuttx/git nuttx.git

First thing after getting the sources is to run the configure script (a bit different from the well known ./configure) to setup the build directory for the target hardware. In our case the target will be the native machine for which the “sim” configuration has been created (see nuttx/configs/sim).

To configure the build setup for target “sim” with “nsh” as the application to run on start, run:

cd nuttx.git/nuttx/tools
./configure.sh sim/nsh
cd ..

Last step before building is the configure the image. This is done by calling

make menuconfig

There is at least one setting that needs to be enabled:

– System Type —> [*] Build 32-bit simulation on 64-bit machine

You are now ready to build the image


If there was no problem during the build you will find a “nuttx” file in the same directory. Just run it and you will see the NSH prompt.


Inside the RT (Linux Kernel) Patch

Posted by April 19, 2013

A interactive map of the Linux Kernel

Posted by April 19, 2013

I just discovered that the image, I’d carelessly have taken from Google image search when looking for a depiction of the Linux kernel structure months ago,is actually “only” a bitmap of an interactive map that can be found at MakeLinux.net and has been created by Constatine Shulyupin.

Linux_kernel_mapNot only can you zoom in and out of the kernels structure but each entity is linked to a documentation page.

Write and Submit your first Linux kernel Patch

Posted by April 3, 2013

The End of Embedded Linux

The Embedded Linux Quick Start Guide

Ubuntu 12.04 Sucks!!1!

This has not happend in a long time. After about four months of using Ubuntu 12.04 I have decided to reinstall Ubuntu 11.04 on my Thinkpad. The reason is not system stability but the desktop expirience with Unity and the latest Gnome. Further more lots of packages are in unusable state like me-tv and binutils for AVR, the panel and its applets (like the always crashing weather indicator). Sadly I have to state that the general tendency of Ubuntu development has been going from good, to bad and then to worse … which is not what I have expirienced in the years before. I have been using Linux for the last 10 years and am not willing to change to anything else like BSD or Solaris. Even switching to Debian is not an option for me. So my conclusion of reinstalling Ubuntu 11.04 which is one of the most stable and complete Ubuntu releases so far is my only hope right now.

GNU Octave – a free and open replacement for Matlab

Posted by April 4, 2012

For those working on linux or similar systems (not windows) and don’t have the money (or want to use commercial software) I can highly recommend GNU Octave. As far as I can say (from my very beginner perspective) octave supports everything I have learned so far that can be done in Matlab (see this).



PPD file for Lexmark E330

During last week my new (refurbished) Lexmark E330 monochrome laser printer arrived (for 20€!!! – got it from some reseller at amazon). Before I chose the printer I took care of making sure it supports PCL (of which I thought will raise the chances of having proper support for CUPS and hence Linux). After printing a first test page with the “Generic PCL Laser Printer” driver I started looking for a “real” E330 PCL driver (no, CUPS does not come with a PPD for the E330). So I checked the Lexmark page and was surprised they also had other drivers than for Windows. Anyway I downloaded the Windows driver (since I was looking for the PPD which is usually included in some way or another in those setup.exe files those companies usually supply in order to set up their printers under Windows). I think I downloaded like five or more files but they where not very helpful. Day later, almost sure to be stuck with the default PCL driver I had another look at the CUPS page where I downloaded a PPD file for a E323 (which is supported) only to figure out if it might give me some clue for what strings to search for in order to find the correct file. I ended up looking for “PPD File for Lexmark E330” … and found exactly 1 match – this page. Looks just like a PPD file for the E330. Took me a run of “copy&past into new file, add new printer, select PPD file, print test page” to be very happy with my new laser. Now the test page looks just as you would expect it to be.