atsamd-rs / atsamd

Target atsamd microcontrollers using Rust
https://matrix.to/#/#atsamd-rs:matrix.org
Apache License 2.0
557 stars 199 forks source link

Is the ATSAMDA1 micro supported? #623

Open sakian opened 2 years ago

sakian commented 2 years ago

I'm looking to develop for a ATSAMDA1G16B microcontroller. It isn't listed in this repo as a supported chip, but it shares a datasheet with the D21 chips. Is it supported out-of-the-box? Do I need to add support to get it to work properly (add PAC, add to HAL)?

sajattack commented 2 years ago

I'm not sure if that chip existed when this project began. :sweat_smile: Anyway, I would recommend looking through the datasheet to see how it compares to other chips we support in order to determine if it needs a separate pac or can use one of the existing ones.

sakian commented 2 years ago

From diffing ATSAMD21G16B.svd with ATSAMDA1G16B.svd, it looks like there are only a few differences:

Actually, the ATSAMD21J16B is an even closer match since it also has the extra TCs, although interestingly, it looks like the HAL doesn't support them.

Does anyone anticipate any issues going ahead with treating the DA1G chip as a D21J?

Dridus commented 2 years ago

FWIW, we (Vital) added a proper PAC and HAL adjustments based on the SVD, though we're still developing against it so might find issues. it's also based on the WIP v2 clocking branch. if anybody needs ATSAMDA1 support though they might find it useful: https://github.com/VitalBio/atsamd/pull/1