Skip to content

Commit 6e48cff

Browse files
BlitzCityDIYladyadajepler
authored
add adafruit fruit jam and feather rp2350 adalogger (earlephilhower#2907)
* add new RP2350 Metro! * lol * fruity! * Define HSTX pins on Adafruit boards with HSTX or DVI connectors * fixname * update rp2350b for fruit jam * add rp2350 adalogger (#9) adding rp2350 adalogger * update psram in makeboards * Update adafruit_fruitjam.json --------- Co-authored-by: ladyada <[email protected]> Co-authored-by: Jeff Epler <[email protected]>
1 parent 9ac7892 commit 6e48cff

File tree

7 files changed

+849
-0
lines changed

7 files changed

+849
-0
lines changed

boards.txt

+586
Large diffs are not rendered by default.

package/package_pico_index.template.json

+6
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,9 @@
8080
{
8181
"name": "Adafruit KB2040"
8282
},
83+
{
84+
"name": "Adafruit Feather RP2350 Adalogger"
85+
},
8386
{
8487
"name": "Adafruit Feather RP2350 HSTX"
8588
},
@@ -89,6 +92,9 @@
8992
{
9093
"name": "Adafruit Metro RP2350"
9194
},
95+
{
96+
"name": "Adafruit Fruit Jam RP2350"
97+
},
9298
{
9399
"name": "Amken BunnyBoard"
94100
},
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
{
2+
"build": {
3+
"arduino": {
4+
"earlephilhower": {
5+
"boot2_source": "none.S",
6+
"usb_vid": "0x239A",
7+
"usb_pid": "0x816D"
8+
}
9+
},
10+
"core": "earlephilhower",
11+
"cpu": "cortex-m33",
12+
"extra_flags": "-DARDUINO_ADAFRUIT_FEATHER_RP2350_ADALOGGER -DARDUINO_ARCH_RP2040 -DUSBD_MAX_POWER_MA=250 ",
13+
"f_cpu": "150000000L",
14+
"hwids": [
15+
[
16+
"0x2E8A",
17+
"0x00C0"
18+
],
19+
[
20+
"0x239A",
21+
"0x816D"
22+
]
23+
],
24+
"mcu": "rp2350",
25+
"variant": "adafruit_feather_rp2350_adalogger"
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": "Feather RP2350 Adalogger",
36+
"upload": {
37+
"maximum_ram_size": 524288,
38+
"maximum_size": 8388608,
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+
},
53+
"url": "https://www.raspberrypi.org/products/raspberry-pi-pico/",
54+
"vendor": "Adafruit"
55+
}

tools/json/adafruit_fruitjam.json

+56
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": "0x239A",
7+
"usb_pid": "0x816B"
8+
}
9+
},
10+
"core": "earlephilhower",
11+
"cpu": "cortex-m33",
12+
"extra_flags": "-DARDUINO_ADAFRUIT_FRUITJAM_RP2350 -DARDUINO_ARCH_RP2040 -DUSBD_MAX_POWER_MA=250 ",
13+
"f_cpu": "150000000L",
14+
"hwids": [
15+
[
16+
"0x2E8A",
17+
"0x00C0"
18+
],
19+
[
20+
"0x239A",
21+
"0x816B"
22+
]
23+
],
24+
"mcu": "rp2350",
25+
"variant": "adafruit_fruitjam"
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": "Fruit Jam 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": "Adafruit"
56+
}

tools/makeboards.py

+2
Original file line numberDiff line numberDiff line change
@@ -519,9 +519,11 @@ def MakeBoardJSON(name, chip, vendor_name, product_name, vid, pid, pwr, boarddef
519519
MakeBoard("adafruit_trinkeyrp2040qt", "rp2040", "Adafruit", "Trinkey RP2040 QT", "0x239a", "0x8109", 250, "ADAFRUIT_TRINKEYQT_RP2040", 8, 0, "boot2_w25q080_2_padded_checksum")
520520
MakeBoard("adafruit_macropad2040", "rp2040", "Adafruit", "MacroPad RP2040", "0x239a", "0x8107", 250, "ADAFRUIT_MACROPAD_RP2040", 8, 0, "boot2_w25q080_2_padded_checksum")
521521
MakeBoard("adafruit_kb2040", "rp2040", "Adafruit", "KB2040", "0x239a", "0x8105", 250, "ADAFRUIT_KB2040_RP2040", 8, 0, "boot2_w25q080_2_padded_checksum")
522+
MakeBoard("adafruit_feather_rp2350_adalogger", "rp2350", "Adafruit", "Feather RP2350 Adalogger", "0x239a", "0x816D", 250, "ADAFRUIT_FEATHER_RP2350_ADALOGGER", 8, 0, "none")
522523
MakeBoard("adafruit_feather_rp2350_hstx", "rp2350", "Adafruit", "Feather RP2350 HSTX", "0x239a", "0x814f", 250, "ADAFRUIT_FEATHER_RP2350_HSTX", 8, 0, "none")
523524
MakeBoard("adafruit_floppsy", "rp2040", "Adafruit", "Floppsy", "0x239a", "0x8151", 250, "ADAFRUIT_FLOPPSY_RP2040", 16, 0, "boot2_w25q080_2_padded_checksum")
524525
MakeBoard("adafruit_metro_rp2350", "rp2350", "Adafruit", "Metro RP2350", "0x239a", "0x814d", 250, "ADAFRUIT_METRO_RP2350", 16, 0, "none")
526+
MakeBoard("adafruit_fruitjam", "rp2350", "Adafruit", "Fruit Jam RP2350", "0x239a", "0x816B", 250, "ADAFRUIT_FRUITJAM_RP2350", 16, 8, "none")
525527
# Amken
526528
MakeBoard("amken_bunny", "rp2040","Amken","BunnyBoard","0x2770",["0x7303"],250,"AMKEN_BB",128,0,"boot2_w25q128jvxq_4_padded_checksum","","https://www.amken3d.com")
527529
MakeBoard("amken_revelop", "rp2040","Amken","Revelop","0x2770",["0x7304"],250,"AMKEN_REVELOP",32,0,"boot2_W25Q32JVxQ_4_padded_checksum","","https://www.amken3d.com")
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
#pragma once
2+
3+
#define PICO_RP2350A 1
4+
5+
// LEDs
6+
#define PIN_LED (7u)
7+
8+
#define PIN_NEOPIXEL (21u)
9+
#define NUM_NEOPIXEL (1)
10+
11+
// SD Card connector
12+
#define PIN_CARD_DETECT (13u)
13+
#define PIN_SD_CLK (14u)
14+
#define PIN_SD_CMD_MOSI (15u)
15+
#define PIN_SD_DAT0_MISO (16u)
16+
#define PIN_SD_DAT1 (17u)
17+
#define PIN_SD_DAT2 (18u)
18+
#define PIN_SD_DAT3_CS (19u)
19+
20+
// UARTs
21+
#define PIN_SERIAL1_TX (0u)
22+
#define PIN_SERIAL1_RX (1u)
23+
#define PIN_SERIAL2_TX (99u) // not pinned out
24+
#define PIN_SERIAL2_RX (99u)
25+
26+
// SPI
27+
#define PIN_SPI0_MISO (20u)
28+
#define PIN_SPI0_MOSI (23u)
29+
#define PIN_SPI0_SCK (22u)
30+
#define PIN_SPI0_SS (13u)
31+
#define __SPI0_DEVICE spi0
32+
33+
// SPI1 for SD card
34+
#define PIN_SPI1_MISO PIN_SD_DAT0_MISO
35+
#define PIN_SPI1_MOSI PIN_SD_CMD_MOSI
36+
#define PIN_SPI1_SCK PIN_SD_CLK
37+
#define PIN_SPI1_SS PIN_SD_DAT3_CS
38+
#define __SPI1_DEVICE spi1
39+
40+
// Wire
41+
#define __WIRE0_DEVICE i2c0
42+
#define PIN_WIRE0_SDA (2u)
43+
#define PIN_WIRE0_SCL (3u)
44+
45+
#define __WIRE1_DEVICE i2c1
46+
#define PIN_WIRE1_SDA (31u) // not pinned out
47+
#define PIN_WIRE1_SCL (31u)
48+
49+
#define SERIAL_HOWMANY (1u)
50+
#define SPI_HOWMANY (2u)
51+
#define WIRE_HOWMANY (1u)
52+
53+
#include "../generic/common.h"
+91
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
#pragma once
2+
#define PICO_RP2350A 0
3+
4+
// LEDs
5+
#define PIN_LED (29u)
6+
7+
#define PIN_NEOPIXEL (32u)
8+
#define NUM_NEOPIXEL (5u)
9+
10+
// 'Boot0' button also on GPIO #0
11+
#define PIN_BUTTON (0u)
12+
#define PIN_BUTTON1 (4u)
13+
#define PIN_BUTTON2 (5u)
14+
15+
// USB host connector
16+
#define PIN_USB_HOST_DP (1u)
17+
#define PIN_USB_HOST_DM (2u)
18+
#define PIN_5V_EN (11u)
19+
#define PIN_5V_EN_STATE (1u)
20+
21+
// SDIO
22+
#define PIN_SD_DETECT (33u)
23+
#define PIN_SD_CLK (34u)
24+
#define PIN_SD_CMD_MOSI (35u)
25+
#define PIN_SD_DAT0_MISO (36u)
26+
#define PIN_SD_DAT1 (37u)
27+
#define PIN_SD_DAT2 (38u)
28+
#define PIN_SD_DAT3_CS (39u)
29+
30+
// I2S
31+
#define PIN_I2S_DATAOUT (24u)
32+
#define PIN_I2S_WORDSEL (25u)
33+
#define PIN_I2S_BITCLK (26u)
34+
#define PIN_I2S_MCLK (27u)
35+
36+
#define PIN_PERIPHERAL_RESET (22u)
37+
38+
#define __PIN_A0 (40u)
39+
#define __PIN_A1 (41u)
40+
#define __PIN_A2 (42u)
41+
#define __PIN_A3 (43u)
42+
#define __PIN_A4 (44u)
43+
#define __PIN_A5 (45u)
44+
45+
// UARTs
46+
#define PIN_SERIAL1_TX (8u)
47+
#define PIN_SERIAL1_RX (9u)
48+
#define PIN_SERIAL2_TX (99u) // not pinned out
49+
#define PIN_SERIAL2_RX (99u)
50+
51+
// SPI
52+
#define __SPI1_DEVICE spi1
53+
#define PIN_SPI1_MISO (28u)
54+
#define PIN_SPI1_MOSI (31u)
55+
#define PIN_SPI1_SCK (30u)
56+
#define PIN_SPI1_SS (46u)
57+
58+
#define __SPI0_DEVICE spi0
59+
#define PIN_SPI0_MISO (36u)
60+
#define PIN_SPI0_MOSI (35u)
61+
#define PIN_SPI0_SCK (34u)
62+
#define PIN_SPI0_SS (39u)
63+
64+
// Wire
65+
#define __WIRE0_DEVICE i2c0
66+
#define PIN_WIRE0_SDA (20u)
67+
#define PIN_WIRE0_SCL (21u)
68+
69+
#define __WIRE1_DEVICE i2c1
70+
#define PIN_WIRE1_SDA (99u) // not pinned out
71+
#define PIN_WIRE1_SCL (99u)
72+
73+
#define SERIAL_HOWMANY (1u)
74+
#define SPI_HOWMANY (2u)
75+
#define WIRE_HOWMANY (1u)
76+
77+
// PSRAM
78+
#define RP2350_PSRAM_CS (47u)
79+
#define RP2350_PSRAM_MAX_SCK_HZ (109*1000*1000)
80+
81+
// DVI connector
82+
#define PIN_CKN (12u)
83+
#define PIN_CKP (13u)
84+
#define PIN_D0N (14u)
85+
#define PIN_D0P (15u)
86+
#define PIN_D1N (16u)
87+
#define PIN_D1P (17u)
88+
#define PIN_D2N (18u)
89+
#define PIN_D2P (19u)
90+
91+
#include "../generic/common.h"

0 commit comments

Comments
 (0)