Mini SAMD21G18 development board 15x15mm (Arduino compatible)

See the whole article here, and how to buy:
http://www.avdweb.nl/arduino/samd21/sam-15x15.html

See the video here:

Introduction
The SAM 15x15 is an Arduino development board of just 15 x 15mm, with the same powerful controller as the Arduino Zero: the SAMD21G18. Despite the small size, it has more I/O pins than the Arduino Zero: 34 instead of 20. Due to the very small dimensions it will fit easily into all embedded electronic projects.

SAM 15x15 features

  • Controller: Atmel ATSAMD21G18, 32-bit, 48MHz, ARM Cortex-M0+
  • Digital I/O pins: 34
  • PWM outputs: 24 (PWM DAC)
  • Analog inputs (ADC): 14
  • ADC resolution: 12-bit
  • One 10-bit DAC
  • Flash memory: 256 kbyte
  • SRAM: 32 kbyte
  • EEPROM: 32 kbyte (emulated in Flash)
  • Preprogrammed customized bootloader
  • Programming and debugging through the integrated USB port

The SAM 15x15 board contains also:

  • One free LED
  • Combined RX/TX LED
  • Voltage regulator 3.3V for the USB powering
  • Power supply reverse polarity protection
  • High voltage protection for the USB

SAMD21G18 with pins
For hobbyists, the drawback of the SAMD21 is that it is only available in SMD. When blown up, it is pretty tough to replace it because no IC socket can be used. This can be solved with the SAM 15x15 board, which transforms the SAMD21G into a pin version

SAM 15x15 miniaturization
There are as much as possible functions crammed into the small area:

Hello,

I have a problem related to SAM 15x15 board that I hoped you could help me resolve.

I’m trying to configure pins d[14] to d[21] as INPUTs and read pulses that oscillate between 0V and 3.3V, but it doesn’t work. I have the SAM15x15 package, as well as the version 1.6.8 of "Arduino SAMD Boards (32-bits ARM Cortex-M0+)” package installed on my laptop.

I attached the code as well as the output that I’m reading to this post. How can I solve this?
(interestingly, I didn’t have this issue configuring pins d[2]-d[11] is INPUTs, or d[10]-d[13] and d[22]-d[25] as OUTPUTs)

Thank you kindly.

test.ino (398 Bytes)

#include <Streaming.h>
int one[8];
void setup() {
  pinMode(d[21], INPUT);
  pinMode(d[20], INPUT);
  pinMode(d[19], INPUT);
  pinMode(d[18], INPUT);
  pinMode(d[17], INPUT);
  pinMode(d[16], INPUT);
  pinMode(d[15], INPUT);
  pinMode(d[14], INPUT);
}

void loop() {
  for (int i = 21; i > 13; i--) {
    SerialUSB.print(analogRead(d[i]));
    SerialUSB.print(" ");
  }
  SerialUSB.println();
}

Eww. I don't care for that d[] syntax, but it seems to be permitted (d[] is defined in variants.h and maps 15x15 pin numbers to "arduino zero" pin numbers)...

SerialUSB.print(analogRead(d*));[/quote]*
However, analogRead() is not supported on all of the pins. (Only on d[1] - d[11] and d[32], d[33]
You may be able to use digitalRead(), depending on what your waveform looks like and what you want to do.

westfw:

#include <Streaming.h>

int one[8];
void setup() {
 pinMode(d[21], INPUT);
 pinMode(d[20], INPUT);
 pinMode(d[19], INPUT);
 pinMode(d[18], INPUT);
 pinMode(d[17], INPUT);
 pinMode(d[16], INPUT);
 pinMode(d[15], INPUT);
 pinMode(d[14], INPUT);
}

void loop() {
 for (int i = 21; i > 13; i--) {
   SerialUSB.print(analogRead(d[i]));
   SerialUSB.print(" ");
 }
 SerialUSB.println();
}



Eww. I don't care for that d[] syntax, but it seems to be permitted (d[] is defined in variants.h and maps 15x15 pin numbers to "arduino zero" pin numbers)...
However, analogRead() is not supported on all of the pins. (Only on d[1] - d[11] and d[32], d[33]
You may be able to use digitalRead(), depending on what your waveform looks like and what you want to do.

d[19] is the same as 13 for the Arduino Zero and has no analog input, see here:

Hi!

I just got the two SAM15x15 "little gems" and "extras" I ordered. Very nice indeed. And fast delivery to North of Sweden. :slight_smile:

Looking at the schematic of on your site, I see a LD2980CM33 is specified as U2.
Some googling for this LDO gave me a 2.5V to 16V range for voltage input and 50 mA output current, is this correct?

I was thinking of driving it from a LiPo cell through the USB connector, would that work?

Anyway, if you think my questions/ideas are strange it might be because I'm relatively new to the microcontroller world.

Best wishes for the holidays and keep up the good work!

jogco:
Hi!

I just got the two SAM15x15 "little gems" and "extras" I ordered. Very nice indeed. And fast delivery to North of Sweden. :slight_smile:

Looking at the schematic of on your site, I see a LD2980CM33 is specified as U2.
Some googling for this LDO gave me a 2.5V to 16V range for voltage input and 50 mA output current, is this correct?

I was thinking of driving it from a LiPo cell through the USB connector, would that work?

Anyway, if you think my questions/ideas are strange it might be because I'm relatively new to the microcontroller world.

Best wishes for the holidays and keep up the good work!

Looking at the schematic of on your site, I see a LD2980CM33 is specified as U2.
Some googling for this LDO gave me a 2.5V to 16V range for voltage input and 50 mA output current, is this correct?
Yes.
I was thinking of driving it from a LiPo cell through the USB connector, would that work?
Yes. In this case you can also short the diode D3 because of the voltage drop.

I would like to try using the 15x15 code adaptions on the Adafruit Feather M0 to be able to access some of the alternatate pin functions within an Arduino project.

In particular using PA03 VREF, which is not an Arduino pin, as a GPIO and ideally as an External interupt. As far as I can tell Arduino by defualt uses the internal VREF so this pin could be used for an alternate function. e.g. digitalread (d[1]);

Is the best approach to edit the files listed here http://www.avdweb.nl/arduino/samd21/samd21-variant.html

However I also see your post here: SAMD21G18: analogRead and digitalRead doesn’t work on AREF - Suggestions for the Arduino Project - Arduino Forum - but no follow up - is there a resolution do you think?

Thanks
Ted

tfcroft4:
I would like to try using the 15x15 code adaptions on the Adafruit Feather M0 to be able to access some of the alternatate pin functions within an Arduino project.

In particular using PA03 VREF, which is not an Arduino pin, as a GPIO and ideally as an External interupt. As far as I can tell Arduino by defualt uses the internal VREF so this pin could be used for an alternate function. e.g. digitalread (d[1]);

Is the best approach to edit the files listed here Package info

However I also see your post here: SAMD21G18: analogRead and digitalRead doesn’t work on AREF - Suggestions for the Arduino Project - Arduino Forum - but no follow up - is there a resolution do you think?

Thanks
Ted

You can find things here:

analogRead and digitalRead doesn't work on AREF
https://forum.arduino.cc/index.php?topic=434775.0

AREF has become another number (d4) and is not number compatible with the Arduino Zero anymore.

A week ago I received my Sam15x15 board and today I finally got some time to start with my project.

I installed the board in the 'Board Manager', selected it and hooked up the board to the USB port of my laptop.

Got 2 fast blinking lights but no port in IDE (grayed out)....

Moved to Device Manager (win10), also no port....

As a test I hooked up a Nano, everything OK, another UNO also OK and as an extra test also my modded µduino and this one also came up without any problem.

What could be the issue? Tried all USB ports, did the reset 'double tap' (lights go Off), even reinstalled everything and tested again but to no avail...

After a long night and some extra USB cables I think I've encountered the issue but it took a microscope to determine the problem.

Seems to me that a copper trace on the PCB was (now surely is) loose (Data+ pinhole) so this board will never work.

Meeuw:
After a long night and some extra USB cables I think I've encountered the issue but it took a microscope to determine the problem.

Seems to me that a copper trace on the PCB was (now surely is) loose (Data+ pinhole) so this board will never work.

To test the SAM15x15 boards, a test-sketch is uploaded by the USB and than all the pins are tested. I suppose that the solder connection to the data + pin was not stable since the test was okey but the board failed after shipping. If you want I can send a new SAM15x15 board.

Hi there!

I am very interested in buying one of these boards. The 22x22mm size is what I am planning to use, but I am having a hard time understanding the pinouts for that size. From what I can see in the documentation, pins 1 & 2 are the same in all sizes, they are d[0] and d[1]. Pin 3 appears to be GND in all three sizes. Pin 4 in the 22mm size appears to be pin 6 in the 15mm & 28mm sizes, is that correct?

Pin 4 in the 15mm & 28mm sizes appears to be 3.3v power, but it doesn't appear to be present in the 22mm size? How does one power the 22mm size?

Thanks,
Randy

Good Evening Mr Albert van Dalen,
Hope you are doing great,
I send you email comment on youtube channel but no reply.
Actually i am very much interested in buy sam-15x15 Board. I am ready to pay you. i want 4 boards.
please guide me how can i pay you.
let me know thanks
Regards

I stopped with selling the SAM15x15 board. But there are now plenty of cheap SAMD21 boards for sale on the internet.