`Blink.ino` does not compile for Nicla Sense ME, unless `#include "Nicla_System"`
aliphys opened this issue · 2 comments
Describe the problem
The Blink sketch does not run without modification on the Nicla Sense ME. It is required to add the #include "Nicla_System.h" directive, in order for the sketch to compile and successfully upload.
To reproduce
- Open Blink.ino from File -> Examples -> 01.Basics -> Blink.
- Connect the Nicla Sense ME board and select from the drop down menu
- Compile. A message informing the user to include the Nicla_System.h library is given in the bottom right corner

/tmp/.arduinoIDE-unsaved2023327-15341-54bj3y.wzmz7/Blink/Blink.ino: In function 'void setup()':
/tmp/.arduinoIDE-unsaved2023327-15341-54bj3y.wzmz7/Blink/Blink.ino:29:10: error: call to 'pinMode' declared with attribute error: Please include Nicla_System.h to use this pin
pinMode(LED_BUILTIN, OUTPUT);
~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/tmp/.arduinoIDE-unsaved2023327-15341-54bj3y.wzmz7/Blink/Blink.ino: In function 'void loop()':
/tmp/.arduinoIDE-unsaved2023327-15341-54bj3y.wzmz7/Blink/Blink.ino:34:15: error: call to 'digitalWrite' declared with attribute error: Please include Nicla_System.h to use this pin
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/tmp/.arduinoIDE-unsaved2023327-15341-54bj3y.wzmz7/Blink/Blink.ino:36:15: error: call to 'digitalWrite' declared with attribute error: Please include Nicla_System.h to use this pin
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
exit status 1
Compilation error: call to 'pinMode' declared with attribute error: Please include Nicla_System.h to use this pin
- Add
#include "Nicla_System.h"just above thesetup()function. - Compile again, which will be successful.
Sketch uses 55788 bytes (10%) of program storage space. Maximum is 527616 bytes.
Global variables use 12256 bytes (19%) of dynamic memory, leaving 52032 bytes for local variables. Maximum is 64288 bytes.
- After uploading, all three RGB LEDs will start blinking together (white light)
Expected behavior
It is NOT required to add `#include "Nicla_System.h" to the sketch. Based on the selected FQBN, the compiler should add the directive if required.
The examples version
Additional context
The Blink sketch is the de-facto Hello World example, and often the first sketch users upload to their board.
Replicated on IDE 1 and Web Editor also.

Issue checklist
- I searched for previous reports in the issue tracker
- I verified the problem still occurs when using the latest version
- My report contains all necessary details
While there is a dedicated Blink_Nicla.ino sketch, the Blink.ino sketch should work with all boards.
The error directive was added to target EXACTLY that case; I think it's more than enough to drive the user to add the include (which is enough to make everything work automatically)