Implement all SAMD21G family chips in to "SAMD21 core" (Arduino Zero)


recently SAMD21G chips got my attention.
I was very surprised that "SAMD21 core" only supports one chip out of entire family – SAMD21G18 (why it isn't called "SAMD21G18 core"?).

I edited this post – I found core that supports most of the SAMD chips:

Happy making.

it supports all versions. only create your variant files

Not quite, there is no bootloaders that works with other chips.

I'm very much in favor of Arduino users having support available for as many microcontrollers as possible. That said, I don't know that it makes sense to do this entirely in the Arduino SAMD Boards hardware package. That hardware package is specifically intended to support Arduino's official SAMD boards. So it doesn't really make sense for Arduino to dedicate their limited resources to adding complete support in Arduino SAMD Boards for microcontrollers that will never be used on an official Arduino board.

Better would be for 3rd parties to do this. The hope is that the Arduino SAMD Boards core would provide generic support for the SAMD architecture so that 3rd party hardware package developers can simply reference Arduino's core instead of having to make and maintain their own. A good example of that is damellis/attiny:

where support for ATtiny chips was provided with a very minimal amount of files by referencing the resources from Arduino AVR Boards, even though some of the parts supported by damellis/attiny were never (and will never be) on an official Arduino board.

I do see some 3rd party SAMD hardware packages doing this, but I haven't checked to see whether any of those are actually adding support for different chips, or only for their own SAMD21G18-based boards. The 3rd party packages that come to my mind as adding new chips are Adafruit SAMD Boards (which adds SAMD51) and MattairTech SAM D|L|C core for Arduino (which adds SAMD51, SAMD21, SAMD11, SAML21, and SAMC21) and those don't reference resources from Arduino SAMD Boards (though they are based on the Arduino SAMD Boards code so they still benefited greatly from Arduino's work). However, the added support in those cores is far more ambitious than what you're talking about doing.

So I'd say if this is something you want to see happen, don't wait for Arduino to do it. Jump right in and make your own core or try to get together a group of volunteers to work together on the project!