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 4, 2016

Building Home or Very Small Office Electronic Circuit Prototypes, Part 3 6

Part 3 delves into critical equipment for testing today's electronics, and provides updates on circuit-board designs from Part 1....More
Nov 16, 2015

Building Home or Very Small Office Electronic-Circuit Prototypes, Part 2 6

Part 2 gives step-by-step instructions on how to turn a Black & Decker TO1675B convection countertop oven into a temperature-controlled reflow oven....More
Oct 7, 2015

Building Home or Very Small Office Electronic-Circuit Prototypes, Part 1 17

This first part in a series goes through the steps of creating a preliminary design for a small and inexpensive hobbyist/limited-technology-prototype build-and-test capability....More

Sponsored Introduction Continue on to (or wait seconds) ×