The development boards mentioned in the article

LinkIt 7697 vs ESP 32: Who will Win?

(The original Chinese version of this article is written by Hsiang-yang Lu and published on MakerPRO)

In 2014 COMPUTEX, MediaTek (MTK) released LinkIt ONE and LinkIt Connect (aka LinkIt Connect 7681) platform. LinkIt ONE has higher spec, integrates the communication chip, and is compatible with Arduino development environment. The release did make a hit.

LinkIt Connect 7681 Development Platform Released by MTK in 2014
LinkIt Connect 7681 Development Platform Released by MTK in 2014

Compared with LinkIt ONE, LinkIt Connect, equipped with single Wi-Fi communication chip, has lower spec. The development environment is so unique that developers have to use UNIX-like environment (Linux or installing Cygwin on Windows) and apply with specific SDK. So LinkIt Connect is less popular than LinkIt ONE. In overall review, this generation of LinkIt is not popular and acceptable among Makers.

 

The Key to ESP8266 Success: Development Environment

Comparatively, the Wi-Fi chip ESP8266 released by Espressif in Shanghai in 2014 is more economical. Cooperated with the board manufacturers (AI Thinker in Shenzheng), the chip with price between US$5 to 10 drew lots of attentions.

Developers used to develop ESP8266 with specific SDK as the chip was newly launched. However, due to people’s discussion and focus on the chip, some developers started to develop the development environment compatible with Arduino. As soon as the compatible environment was released, developing with ESP8266 became more easily. That made ESP8266 more popular. Later on, more and more developers started their projects and coded ESP8266 control program with various languages, such as Lua, Python, and JavaScript.

In term of hardware spec, LinkIt Connect almost equals to ESP8266 and even have more advantages, like more GPIO pins. But the differences of software support resulted in different attentions on the 2 chips. After ESP8266, Expressif released ESP32 in 2016, which extends the BLE function in addition to Wi-Fi.

The comparison of economical IoT board release timeline
The comparison of economical IoT board release timeline (source: Hsiang-yang Lu)

 

From what we have discussed, we can find that the support of software development environment is the key factor influencing how Makers accept the chip.

That’s why MediaTek released LinkIt 7697 in April 2017. Like LinkIt Connect, ESP8266, and ESP32, LinkIt 7697 is the single chip platform and features economical chip and multiple software support as ESP8266 and ESP32.

LinkIt 7697 Combo is launched.
LinkIt 7697 Combo is launched.

 

Is LinkIt 7697 competitive with ESP8266 and ESP32? We are going to compare the 2 chips by data in the following paragraphs.

Processor Core Comparison

Firstly, we can compare the processor cores.

The processor core ESP8266 and ESP32 use is the Xtensa series core developed by Cadence Tensilica. Xtensa features configurable processor and the processor design can be customized according to customers’ requirements. (note 1)

The processor LinkIt Connect uses is AndesCore N7 developed by Andes, a unique processor as well. The processor LinkIt 7697 uses is Cortex-M4F developed by ARM and is applied the most commonly.

There are lots of advantages of the chip being applied widely. Some existing software technologies could be the essential resources that could save developers’ time to re-code and verify. Also, there are some existing samples and libraries that could be directly called. If the processor you choose is not commonly used, it would be better to use a standard processor. N7 used by LinkIt Connect matches the condition.

The advantage of the configurable processor, like Tensilica or ARC, is to optimize the engineering characteristics by collaborating the chip production process and design, such as high integration, lower power dissipation, lower cost. However, it would be the disadvantage for software technology development. The configurable processor might cause software incompatibilities.

Using Tensilica or N7 as the core processor might achieve the goal of being economical, highly integrated, lower power dissipation. However, to make the chip as the de facto standard in the industry, the chip should be mass produced and sold widely to encourage more software developers to use it. But it would be hard to compete with Cortex-M series. Launched in 2008, Coretex-M has more sophisticated technologies than Tensilica, which has not been applied widely.

Core Comparison of 4 economical IoT platform (source: Hsiang-yang Lu)
Core Comparison of 4 economical IoT platform

 

Programming Language Comparison

ESP8266 is supported by multiple programming languages, including the C language provided by the official website, Lua language prompted by the Internet community (NodeMCU project), Processing language compatible with Arduino (C/C++ like), JavaScript, Python, and BASIC.

However, these programming languages are all texts and numbers. For junior developers, they may need more easily-to-use languages, such as graphical development tool, like Lego Mindstrom series (NXT/NXT2/EV3) or MIT Scratch. But ESP8266 still lacks these kinds of languages so fare (April 2017).

Comparatively, LinkIt 7697 adopts Google Blockly programming language, as known as BlocklyDuino, which enables junior developers to learn to develop LinkIt 7697 more easily and also allows professional developers to effectively make POC products for customers. What’s more important is that after using Blockly/BlocklyDuino to complete code, the development environment can translate the language into other programming languages, like Python and Arduino, to help advanced learning.

LinkIt 7697 supports JavaScript language; it’s quite convenient for the developers who are used to use JavaScript develop the front end (browser) and back end (server). The developers not necessarily learn other languages to develop LinkIt 7697 controller.

LinkIt 7697 also supports Arduino compatibility development. That is the key point to make LinkIt 7697 adopted by Makers.
Lastly, LinkIt 7697 also supports C language; that is the most official and professional way to develop. It is also the language professional developers use in the industry.

To sum up, LinkIt 7697 allows elementary school students and junior high school students to learn to develop controller with BlocklyDuino. High school students can use Arduino compatible environment to develop. College students and experts can use C language to develop. Also, JavaScript is supported as well. Comparatively, ESP8266 lacks graphical development so that it would be difficult to have junior developers to use it.

Programming Language Comparison
Programming Language Comparison (source: Hsiang-yang Lu)

 

Other Comparisons

The development boards mentioned in the article
The development boards mentioned in the article

In addition to processor and software support, LinkIt 7697 also can compete with ESP8266 and ESP32 in many ways, like Wi-Fi and BLE support, which is better than ESP 8266, and as good as ESP 32. LinkIt 7697 also supports Grove connector and IFTTT. That’s the feature ESP8266 used to be implemented with Wio-Link board.

Lastly, LinkIt 7697 is the single board design, while products of ESP8266 and ESP32 are produced by various manufacturers. The spec differences might cause the difficulties in program transferring, but LinkIt 7697 would not have this problem. LinkIt 7697 also has the encryption function that could make the wireless transmitting safer and more suitable to commercial mass production. That is what ESP8266 lacks.

So LinkIt 7697 is expected to be the economical wireless IoT platform applied widely. As soon as the software and hardware support is more comprehensive, LinkIt 7697 will be more acceptable among Makers.

Note 1: The other configurable core processer manufacturer is ARC, which was merged by Virage Logic in 2009. Virage Logic was merged by Synopsys in 2010.

 

More articles about LinkIt 7697: 5 Samples to Develop with LinkIt 7697 BLE Functions

Leave a Reply

Your email address will not be published.