Can Free Development Tools Be A Distraction?


Almost all shipping evaluation and development hardware kits come with at least some form of free software. Much is also open source. Most is very high quality and often the development tools are fully supported by the vendor. In addition, most come with demo versions of tools and operating systems. Lately some vendors are providing operating systems as part of the package.

Overall I think this is vast improvement for developers compared to a decade ago when evaluating the latest hardware was a challenge and costly. Vendors look to deliver a great out-of-box experience to new users even installing apps on the hardware so it operates when it is turned on.

Open source software made a significant impact in this arena. The Eclipse and NetBeans integrated development environments have been adopted by many tool vendors as well as chip vendors that often provide their own tools. This actually simplifies the situation because developers may already be familiar witht the tools that have been extended or refined. These platforms are also modular allowing significant extension and customization.

So far, so good.

Now consider what is also inside the box in addition to the hardware, the free IDE and possibly a free operating system. The contents often includes a couple of alternative IDEs and operating systems. They typically come with some limitation. This might be a time limited IDE or a C compiler that is memory limited.

The challenge for the bundled alternatives is getting noticed by the developers. Actually the challenge is getting developers to notice the differences and advantages of the alternatives. This not an easy task but the stakes are very high.

I want to highlight two examples that I am familiar with: Green Hills Software's MULTI IDE and Express Logic ThreadX. Green Hills makes some of the best C and C++ compilers. Their tools are used by vendors for benchmarks when they want to show off their hardware performance. It performs significant optimizations that the free GNU C compiler does not. For many applications this level of optimization is not an issue but in other cases it can be significant.

ThreadX is a compact RTOS that is based on a picokernel. It has features that a free RTOS may not have like priority inheritance. It also has very low interrupt latency.

Casual use of these tools will probably not expose these kinds of features. Of course, those that do a little research will be able to see if the tools provide the advantages necessary for a particular project.

Free software does not mean there is no cost associated with it. Support, especially long term support and updates is one reason to subscribe to services of open or closed source software vendors. While many of the tools provided with eval and dev kits is high quality, they may not always be the best option.

So what do you think. Is the plethora of choices provided with dev and eval kits good or confusing?

Please or Register to post comments.

What's alt.embedded?

Blogs focusing on embedded, software and systems


William Wong

Bill Wong covers Digital, Embedded, Systems and Software topics at Electronic Design. He writes a number of columns, including Lab Bench and alt.embedded, plus Bill's Workbench hands-on column....
Commentaries and Blogs
Guest Blogs
Jan 26, 2017

An Amateur’s View on the P2 (Part 2): Slew Rate and the Oscillator 3

Justin Mamaradlo takes a further look into the P2 op amp and how it functions, analyzing the oscillation and slew-rate characteristics of the venerable component....More
Jul 15, 2016

Simple Yet Effective ESD Testing Methods for Higher Reliability 11

There are multiple ways to test for electrostatic discharge, ranging from implementing a human-body or machine model to....using a balloon and a comb?...More
Apr 8, 2016

Confabbing on the Fabless Fad 5

High capital and maintenance costs, and EDA advances along with abstractions to deal with chip complexity, have been leading contributors to the fabless migration....More

Sponsored Introduction Continue on to (or wait seconds) ×