A JetBrains CLion plugin to integrate Arduino CMake into the IDE.
Install and create Arduino CMake projects in one click with new project wizard types and view communications with the integrated serial monitor tool window.
Arduino Sketch
and Arduino Library
project types to new project wizard, with Options to
select board type, cpu, programmer and port.
Arduino Sketch
new file action.
Serial port monitor tool window with options to disconnect on build start and reconnect on build complete.
Change current build parameters Tools
> Arduino Support
> Change build settings
.
Customize template files used for creating new projects.
Use bundled boards.txt
and programmers.txt
or your own versions.
Serial Port Monitor
plugin may conflict with Arduino Support
This plugin uses Simple Serial Connector Service plugin, which uses
jscc - Java Simple Serial Connector serial library, as does Serial Port Monitor
plugin. Only
one plugin can load the native libraries. If you encounter conflicts please uninstall or disable
Serial Port Monitor
plugin, or this plugin.
Select the upload configuration from the dropdown. The type (debug/release) does not matter.
Use the build action to upload your sketch. Do not use the run action.
Some settings can also be changed in settings under Languages & Frameworks > Arduino, for convenience.
Additionally, you can point the plugin to your own versions of boards.txt
and
programmers.txt
.
The Show Difference
button is only displayed when a valid file is selected to let you quickly
see if there are differences from the bundled version.
The Create From Bundled
button is only displayed when a non-existent directory is given and it
can be created. Pressing it will create the directory and populate it with the bundled
templates. For layout and caveats of this directory please refer to the
README.md file in that
directory.
On Disconnect Delay
, 50ms default. Introduces a short (0-100ms) delay before a build when
disconnecting a port to allow the port to become available. On some projects with very short
build times, disconnecting a port does not allow enough time for the port to become available,
causing the upload to fail with "Resource busy" error. Adding a short delay after disconnect
solves the problem. On some project it is not needed on others 20ms was sufficient.
Updated to work with CLion 2020.3 to 2023.1, with fixes in the ArduinoToolchain.cmake.
Added an option not to use bundled toolchain file. This opens the possibility of using another toolchain.
Updated all native serial port code to jscc - Java Simple Serial Connector and moved code to Simple Serial Connector Service plugin to allow multiple plugins to provide serial port monitoring without conflicts on native libraries.
keywords.txt
when identifiers in source or headers are renamed.CMakeLists.txt
when library includes are added.Generate keywords.txt
action to generate keywords.txt based on contained project
classes and functions.This plugin is a fork of Original CLionArduinoPlugin written by Francois Campbell.
For serial port list and functionality the plugin uses jscc - Java Simple Serial Connector, Licensed under GNU Lesser GPL