DIY an Arduino M0 board

Hello everyone! I'm new to the forum here and also new to Arduino ecosystem.

I've been trying to make a minimal version of arduino m0 board which uses ATSAMD21G18 microcontroller.

I downloaded the reference design of M0 from arduino's page, And removed everything that was not necessary. I also cross checked with adafruit's feather M0 board and the schematics looks fine to me. So I etched the circuit on a pcb .. soldered all the components but it down't seem to work. The computer doesn't detect the board at all. And yes, I double checked all the connections on the pcb. and all is fine.

see the attachment for the schematics I came up with.

What are the things that could go wrong?

The arduino M0's page mentions that boot-loader is preburned by atmel so I'm guessing this is not a problem.

Is 3.3v the ABSOLUTE maximum for this mcu. because I supplied 3.9v through a li-ion battery.

What do you guys suggest? has anyone done it before?

Absolute max is 3.8V according to datasheet, so 3.9V is rather out of spec. I didn't see anything obviously wrong on the schematic.

What did you do to ensure that there is a bootloader on the chip, and that it is running?
Samd21 does not have a permanently loaded bootloader, and I'm not finding definitive information on whether it comes with the atmel bootloader pre-installed or not. (and if it does, I'm pretty sure it's more complicated to get it to start than the arduino bootloader.)
No bootloader means it won't appear as a USB device.

Oh yeah, I missed that :slight_smile: A bare SAMD21 chip does not come with a pre-programmed bootloader. You will need to load one via SWD with a programmer such as JLINK, Atmel-ICE or AT91SAM-ICE (cheapest option is JLINK-EDU if you qualify).

As a matter of habit, when designing any ARM board, I always put a 10 pin SWD header on there.

For a nice example of a SAMD21 board, have a look at Tau