Archive for the Linux Category

UNISON - A POSIX compliant RTOS for the PIC32

Recently I get a lot of questions about Linux on the PIC32….

No, Linux is not available. The main problem is the lack of a true MMU (Memory Management Unit, the PIC32 has only an FMT, fixed mapping table), and most importantly there is not enough memory. Even the tiniest of the tiny (micro/nano…) Linux kernels is 600k bytes compressed. Decompress it first in a couple of megabytes of RAM, than add a couple more to give it room to work, and … game over!

The good news is that most of the requests are coming from developers that are really interested in re-using Open Source code more than running a true Linux system in miniature. Besides, most of them are looking for real time operation, something Linux was never meant to deliver.

As I mentioned in the previous posts, the open source code re-use is actually the easy part, using the MPLAB C32 compiler (a derivative of the GNU gcc) we have inherited a solid GNU compatible set of C libraries. If the project you want to use does not require calls to the OS kernel, and most embedded code would not,  then 90% of the problem is already solved. Just download the project, include all the source files in MPLAB and hit F10 (Make).

But sometimes we need a little more help. Sometimes it would be really nice to have a complete RTOS, and a POSIX compliant one, so that we can re-use code that does rely on “some” Linux kernel calls. In those cases they tell me, you might want to take a look at UNISON from the guys at ROWEBOTS.

UNISON

The Unison SoC RTOS is available for the PIC32 providing a feature set based on Linux and POSIX in a tiny tiny space… Check it out and let me know!

Tremor

Xiph.Org

The Xiph.Org Foundation offers an open source alternative to the omni-present MP3 audio compression: it is called Ogg Vorbis and promises same if not better performance but it is royalty-free and license free. From their web site, like in all open source project you can download the full C source code for all the tools you need to convert and play back Ogg Vorbis files/streams on most operating systems

Like most open source projects, the code is based on the assumption that you will use the classic GNU Toolchain: gcc compiler, linker, standard GNU libraries, to compile and link your application. Now as you might know the PIC32 toolchain happens to be GNU compatible … Read the rest of this entry »

LINUX catch-22

Linux penguin

For some reason I used to think that Linux was destined to be a hot topic among embedded control developers, so I have been disappointed last summer, at the MASTERs (the 11th), when a couple of enthusiastic colleagues decided to try and offer a short class on Linux tools for Microchip products. The class was great, I learned a lot in that single hour and I came out with a great desire to learn more about developing code in Linux, but the attendance (statistics) turned out pretty discouraging.

Read the rest of this entry »

|