Skip to content

Commit 17aab7e

Browse files
authored
Add SparkFun Thing Plus RP2350 (#2605)
* Add SparkFun Thing Plus RP2350 * Add Thing Plus RP2350 PSRAM definition * Remove radio from Thing Plus RP2350 Will need to add back once full radio support is added, see #2605
1 parent 083d86d commit 17aab7e

File tree

6 files changed

+446
-0
lines changed

6 files changed

+446
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ Read the [Contributing Guide](https://github.com/earlephilhower/arduino-pico/blo
9191
* SparkFun ProMicro RP2040
9292
* SparkFun ProMicro RP2350
9393
* SparkFun Thing Plus RP2040
94+
* SparkFun Thing Plus RP2350
9495
* uPesy RP2040 DevKit
9596
* VCC-GND YD-RP2040
9697
* Viyalab Mizu RP2040

boards.txt

Lines changed: 335 additions & 0 deletions
Large diffs are not rendered by default.

package/package_pico_index.template.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -281,6 +281,9 @@
281281
{
282282
"name": "SparkFun Thing Plus RP2040"
283283
},
284+
{
285+
"name": "SparkFun Thing Plus RP2350"
286+
},
284287
{
285288
"name": "uPesy RP2040 DevKit"
286289
},
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
{
2+
"build": {
3+
"arduino": {
4+
"earlephilhower": {
5+
"boot2_source": "none.S",
6+
"usb_vid": "0x1B4F",
7+
"usb_pid": "0x0038"
8+
}
9+
},
10+
"core": "earlephilhower",
11+
"cpu": "cortex-m33",
12+
"extra_flags": "-DARDUINO_SPARKFUN_THINGPLUS_RP2350 -DARDUINO_ARCH_RP2040 -DUSBD_MAX_POWER_MA=250 ",
13+
"f_cpu": "150000000L",
14+
"hwids": [
15+
[
16+
"0x2E8A",
17+
"0x00C0"
18+
],
19+
[
20+
"0x1B4F",
21+
"0x0038"
22+
]
23+
],
24+
"mcu": "rp2350",
25+
"variant": "sparkfun_thingplusrp2350"
26+
},
27+
"debug": {
28+
"jlink_device": "RP2350_0",
29+
"openocd_target": "rp2350.cfg",
30+
"svd_path": "rp2350.svd"
31+
},
32+
"frameworks": [
33+
"arduino"
34+
],
35+
"name": "Thing Plus RP2350",
36+
"upload": {
37+
"maximum_ram_size": 524288,
38+
"maximum_size": 16777216,
39+
"require_upload_port": true,
40+
"native_usb": true,
41+
"use_1200bps_touch": true,
42+
"wait_for_upload_port": false,
43+
"protocol": "picotool",
44+
"protocols": [
45+
"blackmagic",
46+
"cmsis-dap",
47+
"jlink",
48+
"raspberrypi-swd",
49+
"picotool",
50+
"picoprobe"
51+
],
52+
"psram_length": 8388608
53+
},
54+
"url": "https://www.raspberrypi.org/products/raspberry-pi-pico/",
55+
"vendor": "SparkFun"
56+
}

tools/makeboards.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -630,6 +630,7 @@ def MakeBoardJSON(name, chip, vendor_name, product_name, vid, pid, pwr, boarddef
630630
MakeBoard("sparkfun_promicrorp2040", "rp2040", "SparkFun", "ProMicro RP2040", "0x1b4f", "0x0026", 250, "SPARKFUN_PROMICRO_RP2040", 16, 0, "boot2_generic_03h_4_padded_checksum")
631631
MakeBoard("sparkfun_promicrorp2350", "rp2350", "SparkFun", "ProMicro RP2350", "0x1b4f", "0x0026", 250, "SPARKFUN_PROMICRO_RP2350", 16, 8, "none")
632632
MakeBoard("sparkfun_thingplusrp2040", "rp2040", "SparkFun", "Thing Plus RP2040", "0x1b4f", "0x0026", 250, "SPARKFUN_THINGPLUS_RP2040", 16, 0, "boot2_w25q080_2_padded_checksum")
633+
MakeBoard("sparkfun_thingplusrp2350", "rp2350", "SparkFun", "Thing Plus RP2350", "0x1b4f", "0x0038", 250, "SPARKFUN_THINGPLUS_RP2350", 16, 8, "none")
633634

634635
# Upesy
635636
MakeBoard("upesy_rp2040_devkit", "rp2040", "uPesy", "RP2040 DevKit", "0x2e8a", "0x1007", 250, "UPESY_RP2040_DEVKIT", 2, 0, "boot2_w25q080_2_padded_checksum")
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
#pragma once
2+
3+
// LEDs
4+
#define PIN_LED (32u)
5+
6+
#define PIN_NEOPIXEL (14)
7+
#define NUM_NEOPIXEL (1)
8+
9+
// Serial
10+
#define PIN_SERIAL1_TX (0u)
11+
#define PIN_SERIAL1_RX (1u)
12+
13+
#define PIN_SERIAL2_TX (31u)
14+
#define PIN_SERIAL2_RX (31u)
15+
16+
// SPI
17+
#define PIN_SPI0_MISO (4u)
18+
#define PIN_SPI0_MOSI (3u)
19+
#define PIN_SPI0_SCK (2u)
20+
#define PIN_SPI0_SS (9u) // CS pin for SD card
21+
22+
#define PIN_SPI1_MISO (31u)
23+
#define PIN_SPI1_MOSI (31u)
24+
#define PIN_SPI1_SCK (31u)
25+
#define PIN_SPI1_SS (31u)
26+
27+
// Wire
28+
#define PIN_WIRE0_SDA (6u)
29+
#define PIN_WIRE0_SCL (7u)
30+
31+
#define PIN_WIRE1_SDA (31u)
32+
#define PIN_WIRE1_SCL (31u)
33+
34+
// Thing Plus uses I2C for Qwiic connector, make that the default
35+
#ifndef __WIRE0_DEVICE
36+
#define __WIRE0_DEVICE i2c1
37+
#endif
38+
#ifndef __WIRE1_DEVICE
39+
#define __WIRE1_DEVICE i2c0
40+
#endif
41+
42+
#define SERIAL_HOWMANY (3u)
43+
#define SPI_HOWMANY (1u)
44+
#define WIRE_HOWMANY (1u)
45+
46+
// PSRAM
47+
#define RP2350_PSRAM_CS (8u)
48+
#define RP2350_PSRAM_MAX_SCK_HZ (109*1000*1000)
49+
50+
#include "../generic/common.h"

0 commit comments

Comments
 (0)