What advantages could Arduino have vs MPLAB Harmony?


I work in a medium-sized company that offers firmware and hardware development services.

For several years, we have developed products with PIC32MX and PIC32MZ devices.

We're currently starting to drop version 2 of Harmony and start with version 3.

I have never worked with Arduino but I see that it is very popular.

My questions are:

What does Arduino offer me to start using it as a commercial product development aid instead of using Harmony?

What is special about Arduino boards compared to other development kits or modules from any microcontroller manufacturer?

Any comments or suggestions are welcome.

Arduino is primarily a learning and hobby product, not a commercial product.

I use both MPLABX with various PICs, and Arduino, both for hobby projects. The Arduino environment I find very useful for the wide range of libraries available, for example I would not know where to start to get a PIC connected to WiFi, but using the Arduino environment and ESP8266 boards and libraries it's easy.

They are different tools for different jobs, your question seems to suggest that you want a sales pitch, I don't think you are going to get one on a support forum run by hobiests. In any case, only you know your applications and requirements, you have to decide which products meet your needs, no one can do that for you.

What could happen if I try to make a commercial product based on Arduino?

There are rules around software licensing to consider. I think @pert might be able to advise better as he is an Arduino employee, I am not. I am out of my depth trying to offer any more details.

What I mean to create a commercial product, is for example to take the schematic of an Arduino board as a base, and create a your own PCB for your product with the same MCU, adding necessary components and removing those that I do not need.

It is something that is usually done with the starter kits of a microcontroller.

What I have seen, and I think it is something absurd is to put an Arduino board in a plastic box and sell it as a commercial equipment.

I think that the Arduino boards are for development reference, not as a basis for creating a product on them. Am I right?

The software licensing restrictions come from the various firmware libraries you might chose to use. The author of each library chooses which license to apply and these vary from public domain do whatever you like, to "viral" GPL licenses that can sometimes provide difficulties for use in commercial applications, to people who have not bothered to document a license, in which case the code is "all rights reserved" and can't legally be used for anything at all until you have come to a legal agreement with the owner.

Although unusual, it is also possible to use Arduino boards and the Arduino IDE exclusively with your own firmware stack, in which case there would be no concerns with licensing.

So I can only advise that you determine which firmware code provided by others you will need and then check the license documentation it provides. This can be difficult to interpret, but fortunately there is a huge amount of good information available on the Internet on this subject written by knowledgeable people. So with enough research, you'll understand it.

1 Like

I don't think you are right or wrong, it depends what you are doing. A Uno is very clearly a development and learning tool only. A Nano can easily be used as the core of something as it can easily be mounted on a PCB. You might reasonably say that to do so is not appropriate for a commercial product but that might depend how many you are making. For 25 or 50 units it might be a good solution, for 10000 units it would be daft.

1 Like