Notepad++ is my favourite editor for Arduino sketches, but it lacks the facility to compile and upload sketches directly to the Arduino boards. The usual procedure would be to save the sketch in Notepad++, switch to the Arduino IDE then compile/upload.
However, there is a plug-in for Notepad++ which enables you to run external commands – this post describes how to set it up for the Arduino IDE.
Install the plugin
First ensure you have the latest version of Notepad++ (currently version 7.6.6) and select the menu item under ‘Plugins Admin…’.
Then select the ‘NppExec’ plugin and click install.
Set up the commands to execute
After it installs, you’ll be able to select ‘Execute…’ from the new sub-menu (or simply press ‘f6’), which will display the ‘Execute…’ dialog box.
The empty ‘Execute…’ dialog box will display.
Enter the following text into the command(s) window, ensuring the path points to your ‘arduino_debug.exe’.
set arduino_path = "C:\Program Files (x86)\Arduino\arduino_debug"
inputbox "Enter the COM port of your Arduino (e.g., COM1):"
cmd /c $(arduino_path) --port $(input) --upload $(full_current_path)
Pressing ‘OK’ will allow you to enter the COM port (this is shown in the Arduino IDE ‘Tools’ menu).
Press ‘OK’ and the process of compiliation and uploading will begin.
To VERIFY without uploading, the commands in the Execute window will be simpler with only 3 lines –
set arduino_path = "E:\Arduino\arduino-1.8.9-PORTABLE\arduino_debug.exe"
cmd /c $(arduino_path) --verify $(full_current_path) --verbose-build
You can store the commands in the Execute window by using the Save… button. I named my stored command scripts ‘Upload’ and ‘Verify’. Stored commands will then be available in the drop-down box.
SUMMARY OF HOW TO USE IT
- Press f6
- If you have stored commands, select one from the dropdown box
- Click OK
- Keep the Arduino IDE open with your sketch (not required, but helpful).
- Ensure the Board type, COM port, etc. are correctly set in the Arduino IDE.
- In Arduino IDE select external editor (File -> Preferences -> Settings Use External editor
- Ensure the serial port monitor is not open.