Programming Microchip’s SAMG55 Xplained Pro in Python with Zerynth
Rapid IoT prototyping with Microchip’s SAMG55 Xplained Pro in Python with Zerynth Studio is easy and fast. Just follow this article, and learn what’s necessary to program the board.
A powerful ARM Cortex M4 MCU, an onboard debugger, and three possible power sources – this powerful development board is now supported by Zerynth and ready for all your ideas.
The first SAMG family MCU supported by Zerynth
The board offers an easy way to evaluate the ATSAMG55J19 MCU thanks to the exposed pins and peripherals and to the presence of an onboard Atmel EDBG (Embedded Debugger) so that no external tools are necessary to program or debug the ATSAMG55J19. The ATSAMG55J19 is a powerful ARM Cortex M4 MCU.
This is the first chip in Microchip’s SAMG powerful MCU family to be supported by Zerynth. Since we introduced support for this family with this chip, we’re looking forward to supporting others, as well.
It extends the list of Cortex-M4 based chips supported by Zerynth, the first one manufactured by Microchip.
This board is also used as a reference for the Zerynth/Python port of the Microchip Zero Touch Provisioning demo that allows secure authentication for AWS IoT with the ATECC508 CryptoAuthentication device, that we already support. We’ll share more information about this demo very soon.
Description of the board
The SAM G55 Xplained Pro evaluation kit is ideal for evaluation and prototyping with the SAM G55 Cortex-M4 processor-based microcontrollers. The Xplained Pro extension kits offer additional peripherals to extend the features of the device and ease the development of custom designs.
The SAM G55 Xplained Pro features 2 UARTs, a 120 MHz clock, 3 TWIs, 1 SPI and a reset button.
One of its most important features is the Atmel Embedded Debugger (EDBG), which provides a full debug interface without the need for additional hardware, significantly increasing the ease-of-use for software debugging. EDBG also supports a virtual COM port.
Note: All the reported information is extracted from the official Xplained Pro Sam G55 page. Visit this page for more details and updates.
- Microcontroller: ATSAMG55J19
- Operating Voltage: 3.3V
- UARTs: 3
- SPIs: 1
- I2Cs: 3
- Flash Memory: 512 KB
- Clock Speed: 120 MHz
Connect, Register, Virtualize and Program
The Xplained Pro Sam G55 debug port is connected to EDBG, which provides a virtual COM port to software on a connected computer. To recognize the device, all Windows (automatic driver software installation), OSX and Linux machines will recognize the device as a COM port automatically.
Note for the Linux Platform: to allow the access to the serial ports the user needs read/write access to the serial device file. More information can be found on the documentation page.
- Select the Xplained Pro Sam G55 on the Device Management Toolbar;
- Register the device by clicking the “Z” button from the Zerynth Studio;
- Create a Virtual Machine for the device by clicking the “Z” button for the second time;
- Virtualize the device by clicking the “Z” button for the third time.
Programming the board
After virtualization, the Xplained Pro Sam G55 is ready to be programmed and the Zerynth scripts uploaded. Just Select the virtualized device from the “Device Management Toolbar” and click the dedicated “upload” button of Zerynth Studio and reset the device by pressing the Reset on-board button when asked.
Note: the EDBG is also connected to the SAMG55 hardware UART. Serial on pins RX0 and TX0 provides Serial-to-USB communication for programming the device through Atmel EDBG.
Advanced programming and debugging through EDBG are available in Device Management Advanced Mode selecting Atmel EDBG interface.