

I wound up experimenting with two IDEs: Atom and Microsoft Visual Studio Code. I know not everyone appreciates emacs, so I decided to investigate some of the other options. Interestingly enough, it even supports emacs. However, it also has plugins for a lot of other IDEs. About PlatformIOĪlthough PlatformIO claims to be an IDE, it really is a plugin for the open source Atom editor. While there are plenty of makefile-based solutions, there’s also a tool called PlatformIO that purports to be a general-purpose solution for building on lots of embedded platforms, including Arduino. That means just copying your normal Arduino code (I hate to say sketch) doesn’t give you anything you can build with a normal compiler. The build process joins a lot of your files together, adds headers based on what it thinks you are doing, and generally compiles one big file, unless you’ve expressly included. It also manages a very convoluted build process. It turns out, the Arduino IDE does a lot more than providing a bare-bones editor and launching a few command line tools. After all, how hard can it be to build Arduino code? If you want to jump straight to the punch line, you can check out the video, below. There are ways, of course, to use other tools with the Arduino and other frameworks and I decided to start looking at them.

Even if you don’t like emacs, why learn another editor if there isn’t a clear benefit in doing so? The chances that your favorite IDE is going to have as much editing capability and customization as emacs are close to zero. But if it is just a text editor and launches a few commands, I can do that from emacs or another editor of my choice. Thinking about it, I suppose I really don’t mind an IDE if it has tools that actually help me. But when I’m not doing anything special, I tend to just write my code in emacs.

I’ve used plenty of them, especially when they are tightly tied to the tool I’m trying to use at the time. I’m not a big fan of integrated development environments (IDE), in general. I’m not a big fan of the Arduino IDE, but I will admit it is simple to use which makes it good for simple things. In a recent post, I talked about using the “Blue Pill” STM32 module with the Arduino IDE.
