(The original Chinese article is written by Mr. Hsian-Yang Lu and published on MakerPRO )
In fact, the current Arduino project encourages makers to design and create Arduino systems (Both modification and commercial sales are permitted.) However, the systems need to follow two authorization provisions: name indication (BY) and adopting the same sharing methods (SA). In other words, the system development needs to be based on Arduino’s original design and extend from there. Additionally, if the system development involves changing Arduino’s design, the final product also needs to bear Arduino’s text and adopt the CC authorization provisions.
However, some people think the requirements still put a certain level of limitation to the development of Arduino systems. Freeduino is an exception. It is based on the Arduino Diecimilanove and completely compatible with Arduino. The two authorization provisions do not have the binding effect on Freeduino. As a result, any development board that is based on Freeduino can be randomly named. It is also not required to bear Arduino’s official text (BY) and its name does not need to begin with Arduino.
But there are prices that developers have to pay if they choose a totally unrelated name. The most direct impact is their systems won’t be able to benefit from the Arduino frenzy, so some developers will intentionally adopt names that can easily make people relate them to Arduino and Arduino UNO. These unofficial development boards are not allowed to reveal their circuit designs to the public. Of course, there are developers that completely ignore this benefit, and adopt names that are completely unrelated to Arduino.
Compatibility and structural differences
While the information above sums up the basics of unofficial Arduino boards, due to compatibility and structural differences, there are the following four categories for developers to choose from:
1. Development boards that are compatible with Arduino software and hardware
This type of development board is completely compatible with Arduino’s software and can also be perfectly matched onto the Arduino Shield. Naturally, this kind of board needs to have some unique values that do not exist on the official Arduino board. For example, they are usually sold at a much cheaper price than the official boards. Another example is Romeo 2012, which supports developing applications to control motors much easier. These values are meant to attract more users for unofficial boards, even if their goals are not making profits.
2. Development boards for unique development purposes
This type of development board is usually designed for developing certain applications. For example, Faraduino is suitable for developing small-scale electric cars, and Lo:duino is tailored towards developing applications related to automobile electronics. A shared feature of this type of development board is that they are fully compatible with Arduino’s software.
But, this kind of boards usually goes through more hardware modification. For example, the connectors that are originally used to connect the shield can be used for different purposes. Or let’s think about it this way: many of this type of development boards have already merged the Arduino system board with the shield and manufacture them based on this design. As a result, some of these boards are not compatible with normal Arduino Shield, or there may be risks that customers should avoid while choosing unofficial development boards.
3. Development boards for software compatibility
Most development boards for software compatibility, such as Femtoduino and Moteino, have gone through some major modification in the size and position of its Arduino connectors, so they can no longer be connected to Arduino Shield. However, they are fully compatible with Arduino software. Some certain development boards, like the TinyDuino, will come with shields that match their sizes. But one thing for sure is that these software-compatible development boards can’t be connected to the official Arduino Shield.
4. Development boards for hardware compatibility
And we should not leave out development boards for hardware compatibility, including Netduino and Chipino. Since Arduino adopts the AVR structure from Atmel, if a development board uses a microcontroller of a different structure, it is usually hard to be compatible with Arduino’s programming language and library. Even if they can usually be connected to the official Arduino Shield, users need to change the programs before they can properly launch and use the shield. In short, these boards are compatible with Arduino’s hardware, but not its software.
Arduino’s open source approach has definitely sent shock waves through the electronics industry. It not only helps to form the maker movement but also causes major electronic manufacturers to align themselves with the development of Arduino. Even though Atmel is acquired by other companies, the Arduino development continues to grow. As a result, we can expect more and more unofficial development boards emerge on the market in the coming years.