Disclaimer: This article is mainly meant as a memory aid for myself. I’m on MacOS.
What’s not working – AVRCore
In September 2026 I was not able to install Microchip’s own support (called AVRCore) for the AVR128DA48 CURIOSITY NANO development board. I used Arduino IDE 2.3.10, MacOS 26.2 (Tahoe) and these instructions: https://support.microchip.com/s/article/AVR128DA48-Curiosity-Nano-with-Arduino-IDE
In short, I added the AVRCore GitHub json link to “Additional board manager URLs” as usual. I then went to Boards manager and typed AVRCore, but nothing showed up. If I typed AVR128DA48, the only platforms showing up were the ones supported by Spence Konde’s “DXCore”. I tried several variations of the URL, and while some of them directed me to the correct file on GitHub, no boards showed up in Arduino IDE.
What is working – DXCore
DXCore supports the AVR128DA48 chip. However, Microchip’s CURIOSITY development board that carries the same chip, is not mentioned in the 10+ pages long installation documentation: https://github.com/SpenceKonde/DxCore/tree/master
The problem with DXCore is not it’s functionality, it’s just that it’s a bit unintuitive compared to other Arduino Board installations.
The settings
I’m using a USB cable to the ordinary CURIOSITY USB connector to upload sketches. I’m not using UPDI, and I’m not soldering to any pins on the CURIOSITY NANO board … unless, see Using Serial.print
Menu > Menu item > Setting
| Tools > Board > AVR DA-series (no bootloader) | |
| Tools > Port > dev/cu.usbmodemNNNN | Using MacOS. (On Windows its probably “COMM N”.) |
| Tools > Chip > AVR128DA48 | Warning! When changing other settings, “Chip” changes back to AVR128DA24, which will not work |
| Tools > Programmer > Microchip Curiosity Nano (nEDBG/ATSAMD21 debug chip) | |
| I left all other settings as-is |
Using Serial.print();
To print to the Arduino IDE Serial Monitor, I use Serial1.begin(115200); // Arduino IDE Serial Monitor, PC0, PC1
In some applications you might want to keep all pins on Port C free for other tasks than printing. If so you can use other UARTs:
Serial.begin(115200); // OK, PA0, PA1
Serial1.begin(115200); // OK, (Arduino IDE Serial Monitor) PC0, PC1
Serial2.begin(115200); // Nothing*
Serial3.begin(115200); // OK PB0 = Tx, PB1 = Rx
* I could unfortunately not get Serial2 to work using Arduino IDE, even though that was my first hand choice. I had it working briefly (only one time) in MPLAB X IDE, but could not get it working again, in either IDE. I don’t know why.
If you are using any other UART than Serial1 you will need a USB to TTL Serial adapter. Connect Tx an Rx of the serial adapter to the corresponding pins of the CURIOSITY NANO. Open Serial Monitor in a new window in your IDE and connect to your Serial adapter.