Over a million developers have joined DZone.

Proposal: C/C++ with AVR Microcontroller Plugin AVRDUDE

· Java Zone

Discover how AppDynamics steps in to upgrade your performance game and prevent your enterprise from these top 10 Java performance problems, brought to you in partnership with AppDynamics.

For several years now I've noticed a lack of support in NetBeans IDE for the embedded systems world. I want to address this problem.

In Eclipse and Microsoft Visual Studio, there are plugins/alternative versions to allow developers to program C/C++ code for embedded devices. So far NetBeans IDE only supports the development of microchip microcontrollers (MCU) via the MPLAB X IDE, which is an extended version of NetBeans IDE.

However, most enthusiasts use Atmel MCU's and Arduino platforms (based on Atmel). Although there are workarounds available to use NetBeans IDE as an Atmel MCU IDE, it is still not an optimal solution.

See:
Developing for AVR with NetBeans
AVRFreaks AVR with NetBeans

Proposal

I propose to create a new plugin for NetBeans IDE that allows an embedded engineer to compile and upload their code to an MCU by utilizing AVRDUDE.

To create this functionality, we have to extend the existing C/C++ plugin with new features. After compiling a hex file, with the avr-gcc toolchain, the program AVRDUDE needs to be executed. The actual uploading of the compiled program is then handled by AVRDUDE, which is open source (see AVRDUDE).

To make the whole picture complete, the plugin also needs an AVR simulator to debug en test the written code. For this we could use http://www.nongnu.org/simulavr/. And, because embedded devices often use UART (RS232) to communicate with a computer, an RS232 implementation is also needed (see RXTX lib).

Summary

The proposed features are as follows:

  • Uploading compiled program by calling AVRDUDE after compilation
  • Configuring AVRDUDE for the selected MCU target (Settings)
  • Code completion for Atmel AVR
  • Integration of Arduino development plugin (Arduino Development using Netbeans)
  • Integration of Arduino libraries / processing
  • An AVR simulator to debug en test code
  • A RS232 monitoring tool/window

I am committed to make this work! However, before I begin, I would like to hear your thoughts and ideas. Or maybe there are other NetBeans Platform developers willing to contribute to the development of this plugin?

Development of this plugin has started!! See http://java.net/projects/nbplugin-avr

The Java Zone is brought to you in partnership with AppDynamics. AppDynamics helps you gain the fundamentals behind application performance, and implement best practices so you can proactively analyze and act on performance problems as they arise, and more specifically with your Java applications. Start a Free Trial.

Topics:

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}