Skip to content
Merged
Show file tree
Hide file tree
Changes from 11 commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
8ea8e5f
Add Datanoise PicoADK v2 (RP2350).
DatanoiseTV Sep 4, 2024
57dd632
Add pins for Serial 2 (uses ADC shared pins).
DatanoiseTV Sep 5, 2024
2faff80
Update PicoADK v1 and v2 to 4MB Flash
DatanoiseTV Sep 5, 2024
31c3b2b
Re-run makeboards.
DatanoiseTV Sep 5, 2024
a93d553
Merge branch 'master' into picoadk-v2
earlephilhower Sep 5, 2024
08c119c
Add PSRAM menu for Datanoise PicoADK v2.
DatanoiseTV Sep 6, 2024
e0e856e
Merge branch 'picoadk-v2' of github.com:DatanoiseTV/arduino-pico into…
DatanoiseTV Sep 6, 2024
bf3a598
Merge branch 'master' into picoadk-v2
earlephilhower Sep 7, 2024
0fb2dab
Update makeboards.py for PicoADK v2.
DatanoiseTV Sep 7, 2024
31e0aab
Merge branch 'picoadk-v2' of github.com:DatanoiseTV/arduino-pico into…
DatanoiseTV Sep 7, 2024
6d637ce
Update makeboards.py for PicoADK v2.
DatanoiseTV Sep 7, 2024
5f8dd00
Update Build for PicoADK v2.
DatanoiseTV Sep 16, 2024
d2855a8
Update Build for PicoADK v2.
DatanoiseTV Sep 16, 2024
317d74d
Merge branch 'master' into picoadk-v2
DatanoiseTV Sep 20, 2024
b76b040
Trying againg.
DatanoiseTV Sep 20, 2024
f9af81b
Merge branch 'picoadk-v2' of github.com:DatanoiseTV/arduino-pico into…
DatanoiseTV Sep 20, 2024
bf15caa
Set maximum PSRAM speed in variant, remove custom option menus.
DatanoiseTV Sep 20, 2024
2d0c3e8
Update PicoADK v2 PSRAM CS.
DatanoiseTV Sep 20, 2024
65e6da3
Merge branch 'master' into picoadk-v2
DatanoiseTV Sep 23, 2024
05f9f5d
Change USB PID for Datanoise PicoADK v2 and fix double entries.
DatanoiseTV Sep 23, 2024
8932066
Merge branch 'picoadk-v2' of github.com:DatanoiseTV/arduino-pico into…
DatanoiseTV Sep 23, 2024
e92ffd5
Change USB PID for Datanoise PicoADK v2 and fix double entries.
DatanoiseTV Sep 23, 2024
4bc3684
Revert "Change USB PID for Datanoise PicoADK v2 and fix double entries."
DatanoiseTV Sep 23, 2024
45103bf
Update README.md for Datanoise PicoADK versions.
DatanoiseTV Sep 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
393 changes: 350 additions & 43 deletions boards.txt

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions package/package_pico_index.template.json
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,9 @@
{
"name": "DatanoiseTV PicoADK"
},
{
"name": "DatanoiseTV PicoADK v2"
},
{
"name": "Degz Robotics Suibo RP2040"
},
Expand Down
2 changes: 1 addition & 1 deletion tools/json/datanoisetv_picoadk.json
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"name": "PicoADK",
"upload": {
"maximum_ram_size": 262144,
"maximum_size": 2097152,
"maximum_size": 4194304,
"require_upload_port": true,
"native_usb": true,
"use_1200bps_touch": true,
Expand Down
55 changes: 55 additions & 0 deletions tools/json/datanoisetv_picoadk_v2.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
{
"build": {
"arduino": {
"earlephilhower": {
"boot2_source": "boot2_w25q080_2_padded_checksum.S",
"usb_vid": "0x2E8A",
"usb_pid": "0x000A"
}
},
"core": "earlephilhower",
"cpu": "cortex-m33",
"extra_flags": "-DARDUINO_DATANOISETV_PICOADK_V2 -DARDUINO_ARCH_RP2040 -DUSBD_MAX_POWER_MA=250 ",
"f_cpu": "150000000L",
"hwids": [
[
"0x2E8A",
"0x00C0"
],
[
"0x2E8A",
"0x000A"
]
],
"mcu": "rp2350",
"variant": "datanoisetv_picoadk_v2"
},
"debug": {
"jlink_device": "RP2350_0",
"openocd_target": "rp2350.cfg",
"svd_path": "rp2350.svd"
},
"frameworks": [
"arduino"
],
"name": "PicoADK v2",
"upload": {
"maximum_ram_size": 524288,
"maximum_size": 4194304,
"require_upload_port": true,
"native_usb": true,
"use_1200bps_touch": true,
"wait_for_upload_port": false,
"protocol": "picotool",
"protocols": [
"blackmagic",
"cmsis-dap",
"jlink",
"raspberrypi-swd",
"picotool",
"picoprobe"
]
},
"url": "https://www.raspberrypi.org/products/raspberry-pi-pico/",
"vendor": "DatanoiseTV"
}
8 changes: 7 additions & 1 deletion tools/makeboards.py
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,11 @@ def MakeBoard(name, chip, vendor_name, product_name, vid, pid, pwr, boarddefine,
BuildFlashMenu(name, chip, 2*1024*1024, [0, 1*1024*1024])
BuildFlashMenu(name, chip, 8*1024*1024, [0, 7*1024*1024, 4*1024*1024, 2*1024*1024])
BuildFlashMenu(name, chip, 16*1024*1024, [0, 15*1024*1024, 14*1024*1024, 12*1024*1024, 8*1024*1024, 4*1024*1024, 2*1024*1024])
elif name == "datanoisetv_picoadk_v2":
BuildPSRAM(name)
BuildPSRAMCS(name)
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BukldPSRAMCS, BuildPSRAMFREQ, and BuildFreq aren't needed here. You have a hard-wired board and know the CS pin (which should be a #define PSRAM_CS xxx in variants/datanoisetv_v2/pins_arduino.h). There's no reason to have these as a menu. Only the first PSRAM size via buildpsram is needed here. See the challenger_2350_bconnect or other RP2350 board w/PSRAM for more info...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I should just leave BuildPSRAM? Could you check the latest commit and maybe make necessary changes if possible? I am currently working on some example code.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If your board always has PSRAM then there's no need for these menus. Define the proper pin/clock/CS in the variant.h like in the other 2350+PSRAM boards and it will "just work."

If there are 2 boards, 1 with and 1 without, then only the BuildPSRAM menu makes sense to have because everything else if defined by the PCB.

BuildFreq is called 3 lines below, so the instance here is duplicate That's not legal and I'm not sure what the IDE will do in that case. Best case you end up with some weird dup's menu items.

BuildPSRAMFreq(name)
BuildFreq(name, 400)
else:
BuildFlashMenu(name, chip, flashsizemb * 1024 * 1024, fssizelist)
if chip == "rp2350":
Expand Down Expand Up @@ -479,7 +484,8 @@ def MakeBoardJSON(name, chip, vendor_name, product_name, vid, pid, pwr, boarddef
MakeBoard("cytron_motion_2350_pro", "rp2350", "Cytron", "Motion 2350 Pro", "0x2e8a", "0x1096", 250, "CYTRON_MOTION_2350_PRO", 2, 0, "boot2_generic_03h_2_padded_checksum")

# DatanoiseTV
MakeBoard("datanoisetv_picoadk", "rp2040", "DatanoiseTV", "PicoADK", "0x2e8a", "0x000a", 250, "DATANOISETV_PICOADK", 2, 0, "boot2_w25q080_2_padded_checksum")
MakeBoard("datanoisetv_picoadk", "rp2040", "DatanoiseTV", "PicoADK", "0x2e8a", "0x000a", 250, "DATANOISETV_PICOADK", 4, 0, "boot2_w25q080_2_padded_checksum")
MakeBoard("datanoisetv_picoadk_v2", "rp2350", "DatanoiseTV", "PicoADK v2", "0x2e8a", "0x000a", 250, "DATANOISETV_PICOADK_V2", 4, 0, "boot2_w25q080_2_padded_checksum")

# Degz Robotics
MakeBoard("degz_suibo", "rp2040", "Degz Robotics", "Suibo RP2040", "0x2e8a", "0xf00a", 250, "DEGZ_SUIBO_RP2040", 16, 0, "boot2_generic_03h_4_padded_checksum", board_url="https://www.degzrobotics.com/suibo")
Expand Down
62 changes: 62 additions & 0 deletions variants/datanoisetv_picoadk_v2/pins_arduino.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
#pragma once

// DatanoiseTV PicoADK v2 - Audio Development Kit with RP2350A
// https://github.com/DatanoiseTV/PicoDSP-Hardware

// LEDs
#define PIN_LED (2u)
#define LED_BUILTIN PIN_LED

// Serial - relocated
#define PIN_SERIAL1_TX (12u)
#define PIN_SERIAL1_RX (13u)

// Serial 2 - relocated
#define PIN_SERIAL2_TX (27u)
#define PIN_SERIAL2_RX (28u)

// SPI0
#define PIN_SPI0_MISO (8u)
#define PIN_SPI0_MOSI (7u)
#define PIN_SPI0_SCK (6u)
#define PIN_SPI0_SS (5u)

// SPI1
#define PIN_SPI1_MISO (12u)
#define PIN_SPI1_MOSI (11u)
#define PIN_SPI1_SCK (10u)
#define PIN_SPI1_SS (13u)

// Wire
#define PIN_WIRE0_SDA (8u)
#define PIN_WIRE0_SCL (9u)

#define PIN_WIRE1_SDA (6u)
#define PIN_WIRE1_SCL (7u)

// I2S
#define PIN_I2S_BCLK (17u)
#define PIN_I2S_LRCLK (18u)
#define PIN_I2S_DOUT (16u)
#define PIN_I2S_DIN (15u)

#define SERIAL_HOWMANY (3u)
#define SPI_HOWMANY (2u)
#define WIRE_HOWMANY (2u)

// PSRAM
#define RP2350_PSRAM_CS (0u)
#define PIN_PSRAM_CS RP2350_PSRAM_CS

// SDIO for SD Card
#define PIN_SDIO_CLK (20u)
#define PIN_SDIO_CMD (21u)
#define PIN_SDIO_D0 (22u)
#define PIN_SDIO_D1 (23u)
#define PIN_SDIO_D2 (24u)
#define PIN_SDIO_D3 (25u)

// MIDI
#define PIN_MIDI_RX (1u)

#include "../generic/common.h"