Can i use arduino for production
I know that it's open source, but does that mean I can sell my product for profit, or only for use in prototyping?
Since legal questions sometimes need really specific answers, I found Arduino's exact position on this:. Physically embedding an Arduino board inside a commercial product does not require you to disclose or open-source any information about its design.
Deriving the design of a commercial product from the Eagle files for an Arduino board requires you to release the modified files under the same Creative Commons Attribution Share-Alike license. You may manufacture and sell the resulting product. Using the Arduino core and libraries for the firmware of a commercial product does not require you to release the source code for the firmware.
The LGPL does, however, require you to make available object files that allow for the relinking of the firmware against updated versions of the Arduino core and libraries. Any modifications to the core and libraries must be released under the LGPL. The source code for the Arduino environment is covered by the GPL, which requires any modifications to be open-sourced under the same license.
It does not prevent the sale of derivative software or its inclusion in commercial products. In all cases, the exact requirements are determined by the applicable license. Disclaimer: Arduino's position on this may change over time, I'm not a lawyer and this doesn't constitute legal advice, blaa, blaa, blaa The structure of the Arduino FAQ page has changed, but it looks like the main point remains the same.
The above text has been broken out across multiple sections of the "Compatible Products" section :. Sure you can. There's nothing in the usage license that prevents you from using it in a product you make. The open source license really has to do with the instructions for creating arduino clones or variants. If you're just using them in a product, that's A-OK. Often times the counter argument you'll hear from "advanced" people is something like "why would you?
For a product running from a small battery this can have a significant impact on battery life. Whether it is additional cost, size or power consumption, it rarely makes sense to include unneeded functions in your product. This is especially true with more simple microcontroller based kits like an Arduino.
Most products still require a custom PCB be developed for any functionality required outside of the development board. If you are already having to develop, prototype, and manufacture a custom board, then in most cases it makes sense to embed the microcontroller on this same board. There are a few exceptions, though, where an Arduino may be a viable production solution. Duplicating the functionality of the Raspberry Pi on your own custom PCB is a very complex process with significant development risk.
Rarely do I recommend designing a custom microprocessor board, at least initially. That should usually be done later once you reach significant production volumes. However, there are better microprocessor boards available to use in production. The RPi is simply not designed for large scale production so you may run into availability issues or unexpected changes to the RPi itself.
In that case the answer is no. The Arduino is open-source, so if you create a custom PCB based off of their schematic then that is your own custom design and is no longer considered an Arduino. Thanks for the great content.
Do you see any other issues with a startup using an arduino for commercial use other than the cost, size, power consumption? Is there any reliability issues of an arduino or Pi vs a custom board?
Thanks for the positive feedback. There should be no reliability issues with using an Arduino or Pi. Cost, size, and power are the issues. This requires some configuration, good instructions can be found in net.
Major advantage of Raspberry PI is that it has been so widely used and tested, that already for a few years it has been is one of most reliable, if not the most reliable, small Linux platform out there when used correctly. Could you tell some of the boards that are more appropriate for your own product development and high volume production than the RPi with similar functionality?
I agree that the minimum quantities of Broadcom chips make the RPi a questionable choice for a product development, if designing your own board in the future is desired. Thanks Jose for the comment. I like FriendlyARM boards. If your product can be served by a microcontroller it will be much easier and cheaper to develop than one requiring a GHz microprocessor.
Thanks for commenting. There are of course many modules that can be embedded in a production product. These modules are commonly used in production, especially for wireless functions or CPU modules. John, All good points.
Please let me know your thoughts on these points. Thanks again for a good article. Those are fantastic points that I completely agree with but forgot to mention, so thank you for sharing! In the end neither the Arduino or Raspberry Pi were developed for use in high volume production, so as you point out you are opening up all kinds of potential problems.
As you point out, an Arduino is pretty easy to duplicate and it just uses standard chips. Ok, then.
There is more to this rant. One of the standard arguments in favor of Arduino is that it is easier for an inexperienced developer. On the other hand, an experienced developer would much, much rather have a debugger that they can use to… I dunno… debug their code. I find the lack of debugging in Arduino to be an impediment to taking it seriously.
Using print as the sole means of debugging is a gigantic waste of time for someone who knows what they are doing. Speaking of time, those prints change the timing of the system so you can never take them out which means your system is easily hackable in case you illegally forgot to post all of your object files.
The file layout and directory dependence makes it tough to have multiple builds run and test builds. You could put your code in a library but then you end up reloading the Arduino IDE a bunch of times and having an extremely odd version control setup. Maybe there are easier ways to do this but I haven't figure them out; they aren't built into the Arduino system for novice or expert users. Or people who are distracted by basic syntax checking while you type, autocomplete, or built-in documentation.
And sure, you can change a setting to use a different editor but why are you wasting my time with the Arduino-is-great argument if you are just going to take away all the Arduino-ness?
0コメント