User Tools

Site Tools


arduino:configuring_netbeans_for_arduino_development

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
arduino:configuring_netbeans_for_arduino_development [2018/08/24 16:05] mithatarduino:configuring_netbeans_for_arduino_development [2024/02/05 19:06] (current) mithat
Line 1: Line 1:
 ====== Configuring Netbeans for Arduino Development ====== ====== Configuring Netbeans for Arduino Development ======
  
-My current favorite tool for developing non-trivial Arduino projects is Netbeans with C++ support. This documents my setup. It has been vetted with NetBeans 8.2.+My current favorite tool for developing non-trivial Arduino projects is [[https://netbeans.apache.org/|Netbeans]] with C++ support. Netbeans is a great candidate for Arduino programming because it allows you to define specific tool collections for projects and it uses standard Makefiles to manage the build. So all you really need to do once you have Netbeans working for writing C++ projects is add a tool collection for Arduino and create an appropriate Makefile. This documents my setup and has been vetted with NetBeans 8.2.
  
 ===== The tool collection ===== ===== The tool collection =====
- +NetBeans will be happiest if you let it know where the build tools for your project liveSet up a new tool collection for Arduino along the lines of the figure below:
-I use either [[https://github.com/sudar/Arduino-Makefile|Arduino-Makefile]] or my own [[https://github.com/mithat/arduino-build | Arduino-Build]] to do the actual buildingI won't cover using either of those here as they are their own things. Assuming you have Arduino-Makefile or Arduino-Build working on the command line, the next thing you'll want to do is set up a new tool collection in Netbeans for Arduino along the lines of the figure below:+
  
 {{:arduino:arduino-avr-tool-collection.png?direct&300|}} {{:arduino:arduino-avr-tool-collection.png?direct&300|}}
  
 +If you are using an Arduino that uses something other than an AVR microcontroller, the paths will need to be adjusted.
  
 ===== The Makefile and config ===== ===== The Makefile and config =====
  
-==== Arduino-Makefile ==== +I use my own [[https://github.com/mithat/arduino-build | Arduino-Build]] to do the actual building. I used to use [[https://github.com/sudar/Arduino-Makefile|Arduino-Makefile]]so you may prefer this if it works for your project. I won't cover either of those in any depth here as they are each their own thing. However, you can use the following as a cheatsheet for setting things up.
- +
-When creating a new project with Arduino-Makefile, use a local project Makefile that looks something like the following:+
  
-<file make Makefile> +==== Arduino-Build ====
-# Project config +
-ARDUINO_LIBS SoftwareWire AsyncTimer +
-BOARD_TAG pro +
-BOARD_SUB 16MHzatmega328 +
-MONITOR_PORT /dev/ttyUSB0 +
-MONITOR_CMD = screen-wrap +
- +
-# "Platform" config +
-ARDUINO_QUIET true +
-ARDUINO_SKETCHBOOK $(HOME)/Arduino +
-ARDUINO_DIR $(HOME)/opt/arduino +
-ARDMK_DIR $(HOME)/Build/Arduino-Makefile +
- +
-# Include parent Makefile from <https://github.com/sudar/Arduino-Makefile> +
-include $(HOME)/Build/Arduino-Makefile/Arduino.mk +
-</file>+
  
-==== Arduino-Build ==== 
 If you're using Arduino-Build, then your project's Makefile should resemble the following: If you're using Arduino-Build, then your project's Makefile should resemble the following:
  
 <file make Makefile> <file make Makefile>
-# Point BB at the arduino-build.sh script +# Point BB at the arduino-build script 
-BB=<your-path-to>/arduino-build.sh+BB=/your/path/to/arduino-build
  
 # You shouldn't have to change any of these. # You shouldn't have to change any of these.
Line 59: Line 40:
 </file> </file>
  
-You will also need an ''arduino.conf'' file in the root of your project that looks like:+You will also need an ''arduino.conf'' file in the root of your project that's similar to:
  
-<file conf arduino.conf>+<file bash arduino.conf>
 # === Arduino path === # === Arduino path ===
 ARDUINO_PATH=/home/mithat/opt/arduino ARDUINO_PATH=/home/mithat/opt/arduino
Line 76: Line 57:
 </file> </file>
  
-See the Arduino-Build readme for information on figuring out the board parameters and other fiddly bits.+Consult the Arduino-Build readme for information on figuring out the board parameters and other fiddly bits. 
 + 
 +==== Arduino-Makefile ==== 
 + 
 +When creating a new project with Arduino-Makefile, your local project Makefile should look something like the following: 
 + 
 +<file make Makefile> 
 +# Project config 
 +ARDUINO_LIBS = SoftwareWire AsyncTimer 
 +BOARD_TAG = pro 
 +BOARD_SUB = 16MHzatmega328 
 +MONITOR_PORT = /dev/ttyUSB0 
 +MONITOR_CMD = screen-wrap 
 + 
 +# "Platform" config 
 +ARDUINO_QUIET = true 
 +ARDUINO_SKETCHBOOK = $(HOME)/Arduino 
 +ARDUINO_DIR = $(HOME)/opt/arduino 
 +ARDMK_DIR = $(HOME)/Build/Arduino-Makefile 
 + 
 +# Include parent Makefile from <https://github.com/sudar/Arduino-Makefile> 
 +include $(HOME)/Build/Arduino-Makefile/Arduino.mk 
 +</file>
  
 ===== Code completion ===== ===== Code completion =====
  
-While your setup should be working now, NB will be shouting at you a lot about things not being defined, etc. That's because you need to add [[arduino:code_completion|code completion directories]] to the tool collection. Do this on the //Code Completion > C++// tab of the tool collection dialog.+While your setup should be working now, NetBeans will be shouting at you a lot about things not being defined, etc. That's because you need to add [[arduino:code_completion|code completion directories]] to the tool collection. Do this on the //Code Completion > C++// tab of the tool collection dialog.
  
arduino/configuring_netbeans_for_arduino_development.1535126758.txt.gz · Last modified: 2018/08/24 16:05 by mithat

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki