Arduino NANO Every board has been designed to offer a practical and cost effective solution for all those projects that need a small and robust board, fully compatible with the iconic Arduino NANO form factor and pinout. Learn how to set up the programming environment and get the hardware up and running, ready for your projects, in minutes.
The Arduino NANO Every is programmed using the Arduino Software (IDE), our Integrated Development Environment common to all our boards and running both online and offline. For more information on how to get started with the Arduino Software visit the Getting Started page.
On this page... (hide)
All Arduino boards, including this one, work out-of-the-box on the Arduino Web Editor, no need to install anything.
The Arduino Web Editor is hosted online, therefore it will always be up-to-date with the latest features and support for all boards. Follow this simple guide to start coding on the browser and upload your sketches onto your board.
If you want to program your Arduino NANO Every while offline you need to install the Arduino Desktop IDE and add the Arduino megaAVR Core to it. This simple procedure is done selecting Tools menu, then Boards and last Boards Manager, as documented in the Arduino Boards Manager page.
With the megaAVR core installed, you now proceed with the driver installation.
No driver installation is necessary on OSX. Depending on the version of the OS you're running, you may get a dialog box asking you if you wish to open the “Network Preferences”. Click the "Network Preferences..." button, then click "Apply". The Arduino NANO Every will show up as “Not Configured”, but it is still working. You can quit the System Preferences.
Windows (tested on 7, 8 and 10)
If you properly installed the megaAVR Core, just connect the Arduino NANO Every to your computer with a USB cable. Windows should initiate its driver installation process once the board is plugged in.
No driver installation is necessary for Linux.
Open the LED blink example sketch: File > Examples >01.Basics > Blink.
You'll need to select the entry in the Tools > Board menu that corresponds to your Arduino board.
Select the serial device of the board from the Tools | Serial Port menu. This is likely to be COM3 or higher (COM1 is usually reserved for hardware serial ports). To find out, you can disconnect your board and re-open the menu; the entry that disappears should be the Arduino board. Reconnect the board and select that serial port.
Now, simply click the "Upload" button in the environment. Wait a few seconds - you should see the RX and TX leds on the board flashing. If the upload is successful, the message "Done uploading." will appear in the status bar.
A few seconds after the upload finishes, you should see the on-board LED start to blink (in orange). If it does, congratulations! You've gotten your Arduino NANO Every up-and-running. If you have problems, please see the troubleshooting suggestions.
See this tutorial for a generic guide on the Arduino IDE with a few more infos on the Preferences, the Board Manager, and the Library Manager.
Now that you have set up and programmed your Arduino NANO Every board, you may find inspiration in our Project Hub tutorial platform or have a look to the tutorial pages that explain how to use the various features of your board.
The microcontroller on the Arduino NANO Every runs at 5V and it is fully electrically compatible with the original Arduino Nano designs. The headers are mapped in the same way and it is possible to substitute any Arduino Nano board with the new Arduino Nano Every.
On the software side there might be some issue with third party libraries that don't manage the pin mapping of the microcontroller; if the sketch has assembly parts inside, you should turn on the "Register Emulation" mode to emulate ATmega328P registers in the 4809 while compiling.
Serial ports on the Arduino NANO Every
The USB connector of the board is connected to the pins 11 and 12 of the SAMD11. The firmware loaded on this microcontroller supports the standard features of the USB to Serial interface common to the Arduino boards, but allows high performance transfers up to 1Mbit/s. The firmware is open source and can be modified to implement new functions. The interface to the SAMD11 / USB is Serial and the the one available on pins RX0 and TX1 is Serial1.
ADC and PWM resolutions
The Arduino NANO Every has the standard ADC and PWM resolutions of 10-bits and 8-bits, respectively. This board doesn't have PWM on D11 and therefore it supports only 5 PWM outputs, as on the Arduino UNO WiFi Rev.2.
The USB interface is managed by a dedicated SAMD11 that is factory loaded with the proper firmware to program the ATMega4809 microcontroller and let the Arduino NANO Every behave as it should when connected to a host computer for programming and serial communication.
Since we don't ufficially support SAMD11 in our SAMD core, the core to be used is the awesome fork by MattairTech. Once you install it you'll be able to compile a basic firmware for MuxTO. To get the whole firmware you'll need to replace some files with our own fork and select "Arduino MuxTO" variant target.
To reprogram the D11, simply power it while shorting SWDIO to GND pins.
The board will appear as "MuxTo bootloader" and can be reprogammed using bossac or the IDE Upload button if you selected "Arduino MuxTO" target.
For more details on the Arduino NANO Every, see the product page.
Last revision 2019/06/17 by SM
The text of the Arduino getting started guide is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the guide are released into the public domain.