Embedded Linux on Raspberry Pi

Developers usually have two common models of development for Embedded Linux. One of them is the cross-platform development, where the aim is to develop programs that will eventually run on platforms different from the one being used by the developer. The other is self-hosted development to generate programs to run on similar platforms as the one being used for the development. The tiny single board computer, the RBPi or Raspberry Pi, lends itself beautifully to self-hosted developments when used as a target system. Although self-hosted developments are preferably done on fast machines running Virtual Mode installations, the major difference in using the RBPi as a target system is the challenge of its limited memory and a relatively slow processor.

The RBPi is an inexpensive and complete single board computer that runs on a 700MHz Broadcom ARM processor. Sporting 512MB of RAM, the SBC displays over high definition video output, supported by a GPU. You can connect a keyboard and a mouse to the on-board USB connectors and use the SD memory card for the OS and file system. Along with an Ethernet port, the SBC has significant expansion ability.

There are several other similar single board computers in the market with some of them being better suited for specific applications. However, the RBPi was specifically designed for educational use, which makes it eminently suitable to the specific purpose of self-hosted development. If your development is targeted at commercial applications, you may look at other SBCs tailored to the specific rigorous environment required by your application.

With a tremendous support base, the RBPi has its own dedicated website, how-to guides, online blogs, magazines and even videos. Follow the Quick Start Guide on the RBPi website and its recommendations of using the NOOBs SD card to install the Raspbian distribution.

The NOOBs SD card displays all the distributions available on it when the RBPi boots up from the SD card. Select the Raspbian and be prepared for the installation since it takes a while. Select only the locale where you live, as that cuts the installation time. After the installation, you can log in with the username as “pi” and the password as “raspberry.” RBPi needs some configuration to allow it to operate without confusion.

The primary configuration required may be that for the keyboard, since RBPi may not be displaying the symbols for the keyboard connected to it. You can use the nano editor to edit the file ‘keyboard’ at /etc/default and change to the proper country code suitable for the keyboard.

The next configuration parameter required may be for the Ethernet port, which by default, is assigned an IP address using DHCP. If your DHCP server is configured to assign the RBPi a different address at each restart of the RBPi, you must change its properties to serve the same IP address to the RBPi each time it submits a request. To do that, follow the tutorial here.

Once you log in to the RBPi, you will see that the distribution is nearly complete, with most of the development tools already installed. Although normally booting up into the command line mode, you can enter the GUI with a “startx” command. For instructions for the development work, follow this.