Electronic – arduino – What makes a particular platform suitable or unsuitable for production use?


Let's assume that the cost of goods is an insignificant factor. If a company lacks a team to produce a custom board for a particular product, but has success with an off-the shelf development platform like Arduino / Netduino / mbed, what sorts of things should be considered before going forward?

If I'm not mistaken, Arduino was originally targeting university students because of its low price and ease of use. It naturally became a popular platform for artists and makers. I see the Netduino as a logical extension of Arduino — it allows people to use a robust and rich IDE (Visual Studio 2010) and get things done quickly via the .NET Micro Framework. mbed is another nice hobbyist platform because of its ease of use, free tools (online compiler), and hardware peripherals.

So my question is, why shouldn't companies adopt these development platforms for production usage? In other words, is it a bad idea to just buy several boards from Sparkfun, program each of them with the code, and then deploy the product to customers?

I'm specifically interested in Netduino, but arguments for / against Arduino and mbed are also welcome. On the flip side, would you, or have you done this before?

I personally look at the Netduino development as a "core module" that other processor manufacturers sell for product integrations, but maybe I'm missing something important here.

Best Answer

Some of the things you might look at when sourcing a controller module are issue such as security of supply over time, any licensing issues, any inefficiencies in firmware loading process for production, any code security issues, and any manufacturing quality or regulatory compliance concerns. Some of those are going to be more of a concern for a proprietary module than a relatively open one you could have someone else make an equivalent to or eventually merge with other functionality in your product.