“The first Arduino Developer Summit was recently held halfway up Mont Blanc (Monte Bianco), the tallest mountain in Europe. The goal: bring Arduino community developers together with engineers from leading semiconductor companies to discuss the future of Arduino.
The hardware spotlight shined on advances from ST Microelectronics, Nordic Semiconductor, Microchip, EnOcean, Solbian, and of course Arduino Srl. The software spotlight shined on ecosystem advances from Snap, PlatformIO, Codebender, Antmicro, Mynewt, and other projects initiated by Arduino Srl developers, University researchers from Milano and Messina, and Messina Smart Cities initiatives.”, – Arduino.
We live in time when a wall between hobbyist and micro controller world has been completely broken. Just a few years ago nobody has imagined that MCUs could have become popular with people who are not familiar with electronics. Nowadays, you don’t need to have deep knowledge in PCB design, assembly language or become buried under MCU application notes to get your first experience with embedded world.
Also I’ve received valuable answers and wishes from the “LinkedIn Professionals” (here and here). Most of them like to work with an IDE and preferably Eclipse IDE. As PlatformIO is a console tool with rich commands interface it can work with different IDEs as the “builder, uploader & debugger”.
Today I want to explain how we can build and debug Atmel AVR (Arduino) based project using Eclipse IDE + PlatformIO.
“PlatformIO is a cross-platform code builder and the missing library manager”
Working on an embedded firmware for SmartAnthill Project I’ve been dealing with building code for different embedded platforms. Nowadays, each platform proposes standalone toolchain, driver-lib and even own IDE:
With each new embedded platform I had to adapt to its own IDE, code highlighter, code autocompletion, debugger and many more. Then I’ve decided to write code in my favourite editor (Vim) and build it only with these IDEs. But a structure of my project looked ugly because each IDE had created own project’s META files and folders. Therefore, I had different project locations for each IDE and “symlinked” source code folder to one location. But this wasn’t for long…