Discussing SAMD21 M0 debugging for students @MicrochipMakes @Adafruit @SEGGERMicro
Recently professor Deqing Sun of NYU/ITP wrote to Adafruit:
Let me introduce this project first, I’ve been teaching a class in NYU/ITP for a few years. Students will design and make their own Arduino board, then we do debug on it. We used to make Arduino M0 and debug with off-shelf CMSIS-DAP, but good and cheap ones are harder to get these days. This year I found dwire-debug project, and it used an ATtiny85 chip, to act as USBtinyISP and dwire adaptor. I did some optimization to his project and ported it onto a CH552/CH551 chip, which has native High-speed USB that can boost speed to 2X~3X.
At this moment, the best free IDE to do Arduino debugging should be VScode, I’ve done a merged PR and the user will not need to modify anything in VScode. They just use a project template or modify their project setting and it will work. I’ve done a tutorial with Attiny85 on Github.
Currently, I’m planning to put this board into my next class.
Hi Deqing, great to hear from you!
The design looks nice, we’ve moved on from ‘m328 8-bit micros to more powerful chips so we can run CircuitPython which is a lot easier to develop with. for a great CMSIS-DAP we recommend the JLink mini – its a complete JLink at $20 which is a great price for something that always works and with just about any ARM 🙂
We’ll look at the CH552, it would be interesting if it could be a generic USB to I2C/SPI/SWD/UART/GPIO converter!
Adafruit has had paid day off for voting for our team for years, if you need help getting that going for your organization, let us know – we can share how and why we did this as well as the good results. Here are some resources for voting by mail, voting in person, and some NY resources for our NY based teams as well. If there are additional resources to add, please let us know – adafruit.com/vote
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.