16 Arduino IDE alternative to start programming

Francesco Azzola
8 min readAug 26, 2018

--

A list of IDE to use for IoT development

Arduino IDE alternative
Photo by Riku Lu on Unsplash

This article provides a list of 16 Arduino IDE alternative that we can use if you aren’t satisfied with the classic Arduino IDE or we want more features respect to the Arduino editor.

When we start developing an Arduino project usually we tend to use the Arduino IDE. There are, anyway, several Arduino IDE alternatives we should consider if we are not satisfied with the standard IDE. As we know, Arduino is one of the most popular prototyping board (with several alternatives) when it comes the time to develop an IoT project or when we are building a DIY project. Usually, we tend to use Arduino editor not only with Arduino boars (such as Uno, MKR family, and so on) but adding extensions we use it with alternative boards such as ESP32, ESP8266, Wemos and so on..

Usually, the Arduino IDE is the first choice we use when we are approaching the first time to Arduino. This happens for several reasons:

  • it is easy to use
  • it supports all the Arduino boards
  • it has a built-in library manager easy to use

Moreover, the Arduino IDE is very user-friendly without too many options, menus and so on that could scare an inexperienced user. It is so easy that we do not have to worry about how it works, we can focus only on the development process. We write the Arduino code, and the Arduino IDE compiles it and upload the compiled code into the Arduino board.

Besides, it is open source and it runs on several OS such as Windows, Mac OS X, and Linux.

Anyway, if you do not feel comfortable with Arduino IDE there are several alternatives you can use when developing your Arduino project. There are some missing features in Arduino IDE that could bother you, especially if you are used to IDE like Eclipse, Visual Studio, or IntelliJ, just to name a few. One missing feature in Arduino IDE, that really bothers me, is the autocomplete. That is a way to predict the rest of the commands so that you do not have to write it all. There are some other features I like in an IDE such as showing function parameters, hints related to the syntax error, and so on.

Arduino IDE alternative list

This article wants to provide a list of Arduino IDE alternative you can use when creating your Arduino project if you do not like the standard Arduino IDE. The order is random.

PlatformIO

PlatformIO is one of the most known Arduino IDE alternatives. It is an integrated development environment for IoT. It supports not only Arduino boards but many other boards such as Raspberry, ESP32, ESP8266, and many others. The IDE supports all the features you would expect like code completion and so on. It is not only an IDE but it has a CLI (Command Line Interface) support too. Moreover, PlatformIO supports multi-projects, themes, library management. The interface is very attractive and easy to use and it is very different from the standard Arduino IDE. It is open-source and you can download the source code from Github. It requires Python and runs on several OS. This Arduino IDE has two different versions: one built on top of Atom and another one as Visual Studio code plugin. If you want to have more information and know how to use PlatfomIO you can refer to this article.

Website: https://platformio.org/

Visual Studio Code

Visual Studio Code is a very interesting tool made by Microsoft. It is completely free and there are several versions for Linux, Windows, and OSX. It offers a set of high-level code features very useful and easy to use. The interesting part is that VSCode has a marketplace where it is possible to download new extensions that add new features to this IDE Alternative. One of these extensions is PlatformIO that can be downloaded directly into the VSCode. You will have all the features of PlatformIO described above in a completely new IDE.

Website: https://code.visualstudio.com/

Eclipse Arduino IDE

This is a plugin for Eclipse. We all know Eclipse and the IDE. If you programmed in Java for sure you had the chance to test and appreciate the Eclipse IDE features. It is almost a standard in the IDE. Eclipse is a very versatile environment that supports several programming languages ranging from Jave to C/C++ and so on. This platform uses the plugins to extends its features and add new platform support.

This is a plugin for Eclipse IDE that helps to develop Arduino applications. You can download the plugin directly from the Eclipse Marketplace. Of course, it is required you install first the Eclipse C++ IDE. Once, this plugin is installed in Eclipse IDE, you have to select the platform or in other words the SDK that includes all the libraries necessary to build the application. Once the plugin is configured, you are ready to develop your Arduino sketch. The IDE is essentially the Eclipse IDE so if you are familiar with Eclipse you do not have problems using it. This IDE has all the features you have in the standard Arduino IDE such as Serial monitor to debug the Arduino sketch too.

Website: https://marketplace.eclipse.org/content/eclipse-c-ide-arduino

Programino IDE for Arduino

Programino Arduino IDE is an Arduino IDE alternative with several features. This Arduino IDE can be used with Arduino/Genuino boards or compatible microcontrollers. Programino supports C/C++ language, anyway it adds support for other languages too as HTML, Javascript and so on.

It is fully Arduino compatible and the main features are:

  • Syntax Highlighting
  • Function explorer
  • Code competition
  • Code folding
  • Hardware viewer

This last feature is very useful because you have always a view on the hardware you are using so that you do not have to remember pin number for example.

Sloeber

Sloeber is an open-source IDE for Arduino programming. It is based on Eclipse. It has several interesting features:

  • Context senstive coloring
  • Multiple projects support
  • Multiple configurations

Moreover, Sloeber supports several prototyping boards.

Website: http://eclipse.baeyens.it/

embedXcode

This is a free Arduino IDE developed for Mac OS X. This IDE supports syntax highlighting, line numbering, and so on. It is a template for XCode 5 and XCode 6. This IDE simplifies the Arduino sketch development using a smart environment that assists you during the development. This IDE can be used with several prototyping boards such as Arduino, ESP32, ESP8266, Adafruit, and board based on Atmel and Cortex. You can referer to its website to have more information. embedXcode has different versions and licenses. There is a free version that supports the basic features while if you want to unlock all its features you should consider embedXcode+ that requires a license.

Website: http://playground.arduino.cc/Main/EmbedXcode

Ktechlab

KTechLab is an IDE for microcontrollers. This more than a simple IDE because it supports circuit simulation and it can simulate the microcontroller and its circuit. It is capable to simulate linear and non-linear devices, moreover, this IDE can visualize the voltage and current flowing in the circuit. This platform is open source and you can download the source code from Github. It runs on Linux and Window.

Website: https://sourceforge.net/projects/ktechlab/

Codebender

Codebender is a cloud Arduino IDE. It works online and you do not need to install the application locally. It is a Web-based Arduino IDE that provides all the features you would expect from an IDE. It uses a cloud-compiler to convert the source code and upload it in Arduino. It is an open source platform and its code is available at Github. The Arduino IDE supports code highlighting and many other features. Moreover, your Arduino code is in the cloud so you can use and access it everywhere. It supports several boards and if you do not find your board you can upload your board definition. This feature makes this platform very versatile. Moreover, it has an important feature: the capability to use Arduino code written by others on your board. This helps you to improve your knowledge.

Website: https://codebender.cc/

Visual studio + Visual micro

This is a plugin for Microsoft Visual Studio. This Arduino IDE is fully compatible with Arduino. This IDE helps you to write Arduino code easily and fast with syntax highlighting, code error hints and so on. It supports several Arduino boards so you are free to select your board to write the code. It is very easy to use because it exploits the Visual Studio features so you have an integrated environment where you can write the Arduino code. It supports Serial debug and it is possible to create charts. Another interesting feature is the capability to use Arduino libraries. Visual Micro IDE fully supports the Arduino library format and you can add it to your code easily using the Library manager.

Website: https://www.visualmicro.com/

Zeus IDE

Zeus IDE is an editor that supports several programming languages: C#, Lua, Go and so on. This IDE supports several features:

  • C/C++ code completion
  • Syntax highlighting
  • Smart indenting code

and so on. Even if it is not made specifically for Arduino you can use it to develop Arduino applications.

Website: http://www.zeusedit.com/

Atmel Studio

This is a professional platform. This Integrated platform support SAM and AVR microcontrollers. Using Atmel studio you can code, debug and upload your application. It is a complete solution that is not limited to Arduino and provides all the features to easily develop your application.

Website: http://www.microchip.com/mplab/avr-support/atmel-studio-7

ArduinoDroid

This a different Arduino IDE. It runs on Android devices and using it you can program your Arduino. This is the first IDE that runs on Android OS. It is worth mentioning because it helps you to write code using an Android device. Using this app, you can write and upload your sketch. It supports several Arduino boards. You can use Google driver

It is a fully featured IDE. You can download it from Google play.

Netbeans Arduino plugin

This is another interesting plugin. This plugin works with Netbeans, so you have all the feature of Netbeans while developing an Arduino sketch. It works with Arduino Uno R3, Arduino Mega 2560 and Arduino Duemilanove. If you want to try it, you can download the plugin.

Website: http://plugins.netbeans.org/plugin/46054/arduino

Kate

Kate is multi-document editor that can be used to develop Arduino application. It is not a compiler but it is just an editor you can use to write your code. Therefore, you need to compile it using other tools.

Website: https://kate-editor.org/

CLion + plugin

CLion is an IDE to develop C/C++ application. It is a powerful tool that offers interesting features such as code navigation, code editing support such as method generations, and so on. It is integrated debug to help to find errors and on-the-fly code analysis. It supports plugin extension. One of these plugins helps us to develop an application for Arduino. It is a very interesting tool.

Website: https://www.jetbrains.com/clion/

Arduino Pro IDE

Arduino Pro IDE is the next Arduino IDE. It is an enhanced version of the standard IDE that offers many more features making it much better than the “standard” version. It supports a plugin extension mechanism. It is a modern development IDE for Arduino with debugging support. Moreover, this Arduino IDE alternative is designed to manage large projects. The interesting feature is the support of C, Python, and Javascript. This IDE is still in the beta version and you can download and use it if you want to try.

Website: https://www.arduino.cc/pro/arduino-pro-ide

Recommended:
Arduino-cli: compile, upload and manage libraries, cores, and boards

Summary

This article listed several Arduino IDE alternative you can use if you do not feel satisfied with the standard Arduino IDE. It is up to you to choose the right one that fits your needs and your way of coding. All these platforms help you to write Arduino applications easily and fast.

If you liked this article, visit SwA for more tutorials and articles about IoT or follow me on Twitter.

Originally published at https://www.survivingwithandroid.com on August 26, 2018.

--

--

Francesco Azzola

I’m an electronic engineer with a passion for IoT and Machine Learning. I’m one of the top 100 most important influencers in IIoT in 2020 (Onalytica).