Hi Shane,

I'm a new subscriber--my name is Shane Leonard, and I'm an electrical engineering master's student specializing in embedded systems at Stanford. I came across XPCC in a personal quest to come up with a creative hardware register access scheme, and your blog post on the subject was by far the best I could find :)

Yay! It was fascinating to research this topic, so many competing ideas and implementations. I'm still not sure if our solution is really the best one, since we've had some issues with it [1, 2].

gauge your opinions on whether it could be a good idea to fork XPCC

If you have one or a few specific devices, I recommend you do an island (=manual) port, as we've done with the LPC11C24.
(see #150 for some details [3]).

Get something to work first, quick'n'dirty.
It's more fun that way and it allows us to assess the complexity of a proper port (as I'm not familiar with the SAM products at all).

I recommend you open a PR once you have something working (no matter the quality) so that we can review it and help you move things into place. That way it will be easy for all of us to iterate and communicate your port.

I've created a porting guide [4] containing a much more detailed list of things you need to do to get something blinking.
It's hot off the presses and I'm afraid I haven't verified if it's complete, so you're gonna be a guinea pig (if you're ok with that).
I made it a PR so you can leave comments on it, if you're stuck or want to make improvements.

Cheers,
Niklas

[1]: https://github.com/roboterclubaachen/xpcc/issues/124
[2]: https://github.com/roboterclubaachen/xpcc/pull/152
[3]: https://github.com/roboterclubaachen/xpcc/issues/150#issuecomment-228397578
[4]: https://github.com/roboterclubaachen/xpcc/pull/179