Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
Hi everyone

I have been reading this group and see that it covers technical matters
well, The questions I have deal more with making an informed decision
whether the Linux kernel route is the way to go for us.

I run a small company called JAD Systems in South Africa. We have done
quite a lot of embedded work but have almost without exception used
microchip products ( coding in assembler, picbasic and C), Our needs
have grown a little and we need to do some Ethernet enabled embedded
solutions. I purchased a ST ARM9 dev board with a KIEL compiler and
J-Tag unit and was shocked to find out that the price of the full KIEL
compiler is about 10,000 $, we are therefore looking at other options.
There are some GNU tools available for the ARM controllers and of course
there is the Linux Kernel option, so here are my questions relating to
the Linux Kernel option. Please keep in mind that we would like to
minimize our development time and I am concerned that as relative
beginners it might just be more cost effective to purchase the KIEL
compiler. I do think that once we are up and running having an OS on the
chip will make it so much more scalable. O yes we have done some
development on Linux fox boards and really enjoyed the experience.

1)How big give or take is a standard Kernel footprint? would I have to
add external memory to the device?
2)Can I work in a windows environment or do I have to install or emulate
3)Is the development environments well documented?
4)What Kernel options are available? what's a good start?
5)Are there commercial versions available?
6)Is the KIEL J-Tag unit supported under Linux?
7)Any other options I should consider before making the decision?

I know this is a lot of questions but I would be thankful for any guidance.

Re: Decisions
Quoted text here. Click to load it

Can you list your requirements?
What IP protocols do you want to use?
What applications must be running on the target?

Quoted text here. Click to load it


Yes. GNU is a good compiler tool for the ARM.

Quoted text here. Click to load it

Advantages of Linux:
- Well documented. 3rd party documents/books.
- Millions of applications.
- Many people who can help you.

Quoted text here. Click to load it

Why? Is purchasing the compiler all you need?

Quoted text here. Click to load it

You should have a flash of 4-8 MByte and 8 MByte SDRAM. This is a good
starting point.

Quoted text here. Click to load it

Install a Linux PC! You can use some sort of windows box, but you won't get
the full power of a Linux development system.

Quoted text here. Click to load it

Hmmm... You need some experience. Get a good Board support package for an
easy start.

Quoted text here. Click to load it


Quoted text here. Click to load it

Montavista ...

For a standalone TCP/IP stack, check uIP and lwIP.
If you need a realtime OS, check eCOS.
for cheap ARM9 chips, check Atmel AT91SAM926x
for performance, check the Blackfin.



Re: Decisions
Quoted text here. Click to load it
Well, sort of documented. Once you get involved, you find that docs not
as good as someone who has worked with Embedded linux for years.
Quoted text here. Click to load it
Help is relative here. You would be better off hireing someone to hold
your hand.

Quoted text here. Click to load it

I have tried as a beginner to get Linux development working, but gave up
after two years.

Docs are poor, help is not up to par.

Quoted text here. Click to load it

The Kiel compiler works out of the box ( albeit on Windows ).
Unless you already have expirence with Linux development, you may never
get Linux development working on your own.

Quoted text here. Click to load it

As I stated above, unless you hire someone to hold your hand, you may
never get a development environment running.

Quoted text here. Click to load it

Kind of missed the FREE as in Beer part.

Quoted text here. Click to load it

Please, I know this is a Linux group. I am here to try to learn and get
my project running under Linux.

My experience of two years tells me that Linux is still NOT for the
faint of heart.

If the OP has a paid gig working. Stick to something that you know
works. Something that you understand without going to the net for

If you have someone available who uses Linux for development every day,
But do not try this at home. ( unless you have years )


Re: Decisions
I'm absolutely not up to speed right now but I definitely am getting
involved with embedded Linux.

In my _long_ research phase I found:
  - Linux is the way into the future of embedded design. As limitations
of memory and CPU power/price are fading and Linux is evolving IMHO
there is no doubt any more.
  - There are certain exceptions: e.g. cheap low resource systems. Hard
realtime systems often are done with Linux plus something additional for
the realtime part (e. g. RTAI or PIKE OS). A similar case is certified
security systems (e.g. doable with Linux plus PIKE OS).
  - If or if not using Linux depends on the application. From a certain
grade of complexity upwards, IMHO, Linux is the way to go. Small systems
don't need preemptive multitasking and you don't use any OS. But you can
use the GNU compiler/linker/debugger (with Eclipse if you prefer),
anyway. Commercial compilers make sense if you need to optimize/tune the
system especially, but here you need to do the design and tool selection
extremely carefully.
  - Linux as an embedded target system does not come for free. Either
you invest a lot of time or you need to buy a decent startup kit and/or
you hire professional help.
  - Nowadays there are several professional companies that provide
embedded Linux support. These can get you up to speed quite fast
(especially on common architectures like x86, ARM and Power PC.
  - Eclipse is more and more "standard" with those embedded SDKs, making
embedded software development a lot more comfortable for non-nerd Linux
developers. Depending on the provider, those SDK run on Linux PCs and/or
on Windows PCs. Working with that GUI the PC OS makes no real difference
(but on Linux the compiler runs a lot faster, as Cygwin is not used).
  - Getting Eclipse running for an embedded target system is a real
PITA. So you should try to find a decently done complete distribution.


Re: Decisions
Quoted text here. Click to load it

Thanks Yes I can list my requirements

 > Can you list your requirements?

Well our initial development will be quite simple actually
1) we need to establish a link to a fastish 200K samples per sec A2D
converter 8 channels, we need to implement self calibration and range
select 0-5V, 0-10V and 4-20mA with an option for differential signals
(but not immediately required).

2) We need to do some data manipulation, the first version will be
averaging and digital filtering only, future versions are to do FFT.

3) We need to stream this data over a network to logging software
written in LabVIEW, as well as do some local data logging to the device,
next we will need to establish a web server through which we can set up
the device and its environment.

 > What IP protocols do you want to use?

TCP/IP as these devices will form part of corporate environments.

 > What applications must be running on the target?

a web server and a data manipulation app.

What do you mean with "Get a good Board support package"?



Re: Decisions
Quoted text here. Click to load it

Ahhh... so you need a high throughput TCP/IP.
Quoted text here. Click to load it

OK. DSP instructions will be fine...

Quoted text here. Click to load it

I would suggest to use the Blackfin BF536/537. It has computing power, DSP
instructions, running uClinux, and a good development community.

Start with this board:,2877,BF537%252DSTAMP,00.html

The community portal is at:

If you found you have to use a realtime OS, eCOS is ported to this board:



Re: Decisions

Quoted text here. Click to load it
Indeed a good possibility, but you can also use RTAI which is also used on
this board.
RTAI has a good community of developers who are willing to help you with
problems related with rtai and applications running on the hardware by the
Taco Walstra

Site Timeline