SparkFun SAMD51 Thing Plus

Hardware

Platform Atmel SAM: Atmel | SMART offers Flash- based ARM products based on the ARM Cortex-M0+, Cortex-M3 and Cortex-M4 architectures, ranging from 8KB to 2MB of Flash including a rich peripheral and feature mix.

Microcontroller

SAMD51J20A

Frequency

120MHz

Flash

496KB

RAM

192KB

Vendor

SparkFun

Configuration

Please use sparkfun_samd51_thing_plus ID for board option in “platformio.ini” (Project Configuration File):

[env:sparkfun_samd51_thing_plus]
platform = atmelsam
board = sparkfun_samd51_thing_plus

You can override default SparkFun SAMD51 Thing Plus settings per build environment using board_*** option, where *** is a JSON object path from board manifest sparkfun_samd51_thing_plus.json. For example, board_build.mcu, board_build.f_cpu, etc.

[env:sparkfun_samd51_thing_plus]
platform = atmelsam
board = sparkfun_samd51_thing_plus

; change microcontroller
board_build.mcu = samd51j20a

; change MCU frequency
board_build.f_cpu = 120000000L

Uploading

SparkFun SAMD51 Thing Plus supports the next uploading protocols:

  • atmel-ice

  • jlink

  • sam-ba

Default protocol is sam-ba

You can change upload protocol using upload_protocol option:

[env:sparkfun_samd51_thing_plus]
platform = atmelsam
board = sparkfun_samd51_thing_plus

upload_protocol = sam-ba

Debugging

Debugging - “1-click” solution for debugging with a zero configuration.

Warning

You will need to install debug tool drivers depending on your system. Please click on compatible debug tool below for the further instructions and configuration information.

You can switch between debugging Tools & Debug Probes using debug_tool option in “platformio.ini” (Project Configuration File).

SparkFun SAMD51 Thing Plus does not have on-board debug probe and IS NOT READY for debugging. You will need to use/buy one of external probe listed below.

Compatible Tools

On-board

Default

Atmel-ICE

Yes

J-LINK

Frameworks

Name

Description

Arduino

Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences