Is Arduino Suitable for Product Development?

【Click the above“Blue Text” to follow Chip Home and become a technology enthusiast】

Arduino has long been a topic of controversy among non-Arduino users. This week, let’s take a look at some common viewpoints shared by friends in the Arduino community.

Everyone can also express their opinions in thecomment section at the end of the article!

Is Arduino Suitable for Product Development?

1. Arduino has low performance, not as good as Raspberry Pi and other development boards, so don’t use Arduino for development.

A: Why use a sledgehammer to crack a nut? The Chinese Academy of Sciences wouldn’t use a galaxy to play World of Warcraft, and you wouldn’t want to use a calculator to play LOL. Different platforms have different purposes.

B: Arduino is more used for data collection and control, being simple and lightweight. Raspberry Pi and other OS-based development boards can achieve more complex functions, such as graphics and image processing.

C: Smart developers choose the platform that suits themselves and their projects, rather than the most powerful platform.

Is Arduino Suitable for Product Development?

2. The efficiency of Arduino programs is very low, so don’t use Arduino for development.

A: The core library of Arduino is a secondary encapsulation of AVRGCC, which does reduce some running efficiency, but what does it matter? Is your program really that demanding on real-time performance? At least I haven’t seen many projects with extremely strict efficiency requirements in forums or domestically.

B: The relationship between Arduino and traditional microcontroller development is similar to various programming languages and their corresponding SDKs. A normal program must choose a suitable language + corresponding SDK for rapid development, and using Arduino for development is no different.

Of course, you can choose to use traditional methods or even assembly to develop microcontrollers to maximize efficiency, but you will definitely incur a greater learning cost, and later modifications to the program will become extremely difficult.

C: If your project truly requires high real-time performance, I suggest usingArduino + avrgcc, or even a mixed assembly approach. If this still does not meet your requirements, you can also use chipkit, maple, and other 32-bit Arduino-like development platforms.

3. Arduino can only develop toys, not products.

A: Whether or not you can develop a product has nothing to do with Arduino itself; it only relates to your own abilities.

Is Arduino Suitable for Product Development?

B: Many companies at home and abroad are using Arduino to develop products, and there are also many successful commercial products (I know someone will come and argue about what constitutes “success”). The claim that it cannot develop products and can only be toys is completely unfounded. If you are truly engaged in hardware development, you will find that major IC manufacturers are now launching their own libraries or SDKs, which are essentially the same as Arduino libraries, and this is the trend in the hardware industry. This is the same nature as everyone using someone else’s SDK for software development.

4. The cost of Arduino development boards is too high and not suitable for product development.

A: When I introduce Arduino, I always tell others that Arduino is a development platform.

When I say using Arduino for development, I mean using the Arduino core library for development. Developing a product does not necessarily require integrating an Arduino development board; a core control chip is sufficient.

As for how much the chips cost, developers can check it themselves. If you have no size requirements for the product and the production volume is very small, you can also directly use the Arduino controller.

B: In small batches, using Arduino for development can greatly reduce your development costs; there is nothing more to say about that. If your project has a super large production volume, you should definitely choose cheaper chips, such as a 1 yuan STC or a 50 cent HT.

To summarize

The advantages of Arduino lie in its strong community and numerous library resources. Its resources and influence have even led GitHub to categorize Arduino as a language.

There is a cold joke: if you say “PHP is the best web language” in any programming group, it will definitely spark a debate.

If you discuss which hardware development platform is better, you will fall into this meaningless logic.

There is no best development platform, only the one that is most suitable for the project and for yourself.

Personal Insights

The following situations are based on personal experience and may not be correct; everyone is welcome to discuss in the comment section.

When Arduino might be suitable for you:

  • You have never been involved in hardware development;

  • You want to develop quickly and reduce development costs;

  • Your project’s future production volume is small, or it will not be mass-produced (you need to calculate the relationship between development costs and production costs yourself);

When Arduino might not be suitable for you:

  • If you have high requirements for processing power and system real-time performance, then Arduino is not suitable for you;

  • If your project’s future production volume is huge, then Arduino is also not suitable for you (again, you need to calculate the relationship between development costs and production costs yourself);

  • If you are extremely familiar with another microcontroller or hardware development platform;

  • If the libraries you will use in your project are available on other platforms, and those platforms have low hardware and development costs;

Why use Arduino for development?

Here are some advantages of using Arduino as a development platform for creating projects or product development:

1. Cross-platform

Arduino IDE can run on Windows, Macintosh OSX, and Linux, while most other controllers can only be developed on Windows.

2. Simple and clear development

Arduino IDE is developed based on the processing IDE. It is very easy for beginners to master while providing enough flexibility. The Arduino language is developed based on the wiring language, which is a secondary encapsulation of the AVRGCC library, requiring little microcontroller or programming foundation, allowing for quick development after simple learning.

3. Openness

The hardware schematics, circuit diagrams, IDE software, and core library files of Arduino are all open source, allowing for any modifications to the original designs and corresponding codes within the scope of the open-source agreement.

4. Community and third-party support

Arduino has a large number of developers and users, and you can find many open-source sample codes and hardware designs they provide. For example, you can find third-party hardware, peripherals, libraries, and other support for Arduino on websites like GitHub.com, Arduino.cc, Openjumper.com, which makes it faster and easier to expand your Arduino projects.

5. Trends in hardware development

Arduino is not only the world’s most popular open-source hardware but also an excellent hardware development platform and a trend in hardware development. The simple development method of Arduino allows developers to focus more on creativity and implementation, completing their project development faster, greatly saving learning costs and shortening development cycles.

Due to the various advantages of Arduino, more and more professional hardware developers have started using Arduino for their projects and products; increasingly, software developers are entering the fields of hardware and IoT using Arduino; universities are also launching Arduino-related courses in automation, software, and even art majors.

The content of this article is sourced from the Arduino Chinese community and DF Maker community, organized by strongerHuang.

Is Arduino Suitable for Product Development?

Old Yu will take you to play with ESP32, 12 basic tutorials have been updated, and next are advanced tutorials.

Is Arduino Suitable for Product Development?

Old Yu will take you to play with ESP32: 14 hands-on making a bidirectional wireless remote control (1).

Is Arduino Suitable for Product Development?

Based on ESP32 + LVGL8.0 small TV.

Is Arduino Suitable for Product Development?

Classic in-depth analysis! How the ESP8266/ESP32 automatic download circuit is cleverly implemented.

Leave a Comment

Your email address will not be published. Required fields are marked *