OpenEmbedded Source Mirrors

Posted by Cliff Brake on 2013-01-07 | Comments are off for this article

When using OpenEmbedded for product development, there are several reasons you may want to consider setting up a source mirror for your OpenEmbedded build: over time, sources disappear from download locations various servers for source packages may be off-line at the time a build is run some servers may be very slow, which slows down […]

Perisistent device names for USB serial ports

Posted by Cliff Brake on 2012-12-19 | Comments are off for this article

Currently, my workstation has two 8-port USB<->RS232 devices, one dual port USB<->RS422/RS485 adapter, and several single port adapters such as the very useful BUBII.  So with around 20 USB->serial devices, figuring out which /dev/ttyUSBx entry corresponds to which port is not really practical.  However, with udev in Linux, you can easily give static names to […]

A quick way to set up an OpenEmbedded feed server

Posted by Cliff Brake on 2012-12-08 | Comments are off for this article

During development with OpenEmbedded (oe-core, meta-oe, meta-angstrom), I often find it useful to set up a feed server so that packages can quickly be installed on the target system without manually copying them over or building a new image.  One way to do this is copy your deploy/ipk directory to an existing web server (perhaps […]

OpenEmbedded: configuring openssh to allow a blank password

Posted by Cliff Brake on 2012-12-05 | Comments are off for this article

Noticed the following when browsing around in the OpenEmbedded sources the other day: ROOTFS_POSTPROCESS_COMMAND += “openssh_allow_empty_password ;” This allows a blank password for development, which is conveient for running ssh/scp commands to the device.  The above can be placed in an image recipe. The command modifies the PermitEmptyPasswords config option in /etc/ssh/sshd_config or /etc/default/dropbear.

Setting the root password in an OpenEmbedded image

Posted by Cliff Brake on | Comments are off for this article

During development, often a blank root password is used for the embedded Linux target system.  However, when deploying an embedded Linux system, often there is a requirement to set the root password to something non-obvious.  One way to do this is boot the system, and change the password using the passwd command.  Then copy the […]

Running a reboot cycle test shell script with systemd

Posted by Cliff Brake on 2012-08-29 | Comments are off for this article

One of the easiest ways to stress test an embedded Linux system is to continuously reboot the system. Booting is a difficult activity for a Linux system (similar to waking up in the morning). The CPU is maxed out. There are a lot of things happening in parallel. Software is initializing. There is a lot […]

Bitbake has a new way of displaying build status

Posted by Cliff Brake on | Read the First Comment

Now instead of displaying a scrolling log, bitbake will display a simple output that lists which tasks it is working on at the moment: Currently 4 running tasks (185 of 3093): 0: gmp-native-5.0.5-r0 do_configure (pid 22919) 1: lzo-native-2.06-r1 do_configure (pid 27103) 2: expat-native-2.1.0-r0 do_compile (pid 7463) 3: ncurses-native-5.9-r10.1 do_compile (pid 9820) This really allows for […]

Mounting a UBIFS partition using systemd

Posted by Cliff Brake on 2012-08-16 | Comments are off for this article

Systemd is becoming the defacto system and service manager for Linux, replacing the SysV init scripts.  The Angstrom distribution has supported systemd for some time now. Recently, I needed to mount a UBIFS filesystem in one of my projects.  The main application is being started with systemd, so it seemed like a good fit to […]

A Review of Graphical Application Solutions for Embedded Linux Systems

Posted by Cliff Brake on 2012-08-07 | Comments are off for this article

One of the decisions we face when building Embedded Linux systems is what components to use. With Open Source software, there is often more than one good option. Graphical libraries are no exception. In this article, we’ll examine GTK+, Qt, EFL, Android, and HTML/Javascript. There are many factors that go into a choice like this, […]

A Linux Kernel Tracing Tutorial

Posted by Cliff Brake on 2012-01-31 | Comments are off for this article

The Linux kernel has a fairly extensive tracing infrastructure that is quite useful for debugging.  There are a number of things you can do with tracing, but the focus of this article will be the traditional printk type debugging we often end up doing to trace initialization issues with a driver.  The following links provide […]

The easy way to get serial terminal in Linux

Posted by Cliff Brake on 2012-01-26 | Read the First Comment

When doing embedded Linux development, most of us spend out time tethered to a target system with a serial cable, which is used for a serial console.  Minicom is the defacto serial terminal software for Linux.  However, Minicom is a little fussy in that you typically have to set it up for each port you […]

Verizon UML290 and Sprint U600 USB Modems in Embedded Systems

Posted by Cliff Brake on 2011-03-31 | 2 Comments to Read

Recently I tested support for the Verizon UML290 and Sprint U600 USB Cellular modems in an embedded Linux system.  Both modems support 3G and 4G networks, but only the 3G modes were tested due to lack of 4G coverage at the testing location. Fortunately, both modems function very similar to previous modems, so with the […]

Yocto and OpenEmbedded

Posted by Cliff Brake on 2010-12-10 | Read the First Comment

Recently, I attended an Embedded Linux summit hosted by the Linux Foundation to discuss the Yocto project. Overall, I thought the meeting was very positive and constructive. Having met and discussed at length the methods and goals of the Linux Foundation with some of their people, I’m impressed with their approach. They are there to […]

OpenEmbedded srctree and gitver

Posted by Cliff Brake on 2010-10-11 | 5 Comments to Read

Recently an OpenEmbedded class name srctree became usable.  The srctree.bbclass enables operation inside of an existing source tree for a project, rather than using the fetch/unpack/patch idiom.  The srctree.bbclass in combination with the OpenEmbedded gitver.bbclass and git submodules provides a very interesting way to build custom software with OpenEmbedded. One of the classic problems with […]

Qt Creator for C/C++ development

Posted by Cliff Brake on 2010-08-07 | Comments are off for this article

Recently, I’ve been evaluating Qt Creator for general C/C++ development.  I’m currently involved in the development of a rather large C++ application that is approaching 200,000 lines of code and 1000 source modules.  In the past, I’ve typically used Vim for editing, and Eclipse as a gdb front-end when needed.  Qt Creator is a rather […]