From 1996c8279b5659f52ea9aad9c2d7a0e743c07c5c Mon Sep 17 00:00:00 2001 From: lady ada Date: Wed, 26 May 2021 12:53:12 -0400 Subject: [PATCH 1/9] add two variant files --- variants/adafruit_stemmafriend/pins_arduino.h | 45 +++++++++++++++++++ .../adafruit_trinkeyrp2040qt/pins_arduino.h | 42 +++++++++++++++++ 2 files changed, 87 insertions(+) create mode 100644 variants/adafruit_stemmafriend/pins_arduino.h create mode 100644 variants/adafruit_trinkeyrp2040qt/pins_arduino.h diff --git a/variants/adafruit_stemmafriend/pins_arduino.h b/variants/adafruit_stemmafriend/pins_arduino.h new file mode 100644 index 00000000..d48293e0 --- /dev/null +++ b/variants/adafruit_stemmafriend/pins_arduino.h @@ -0,0 +1,45 @@ +#pragma once + +// Pin definitions taken from: +// https://learn.adafruit.com/assets/100337 + +// LEDs not pinned out +#define PIN_LED (12u) // backlight, weird but why not? + +#define PIN_NEOPIXEL (17u) +#define NUM_NEOPIXEL (1u) +#define PIN_SWITCH (11u) + +// Serial +#define PIN_SERIAL1_TX (26u) // shared on grove/jst 2mm +#define PIN_SERIAL1_RX (27u) // shared on grove/jst 2mm + +// Not pinned out +#define PIN_SERIAL2_TX (20u) // shared on JST SH +#define PIN_SERIAL2_RX (21u) + +// SPI +#define PIN_SPI0_MISO (4u) // unconnected +#define PIN_SPI0_MOSI (7u) // TFT data +#define PIN_SPI0_SCK (2u) // TFT clock +#define PIN_SPI0_SS (1u) // TFT CS + +// Not pinned out +#define PIN_SPI1_MISO (31u) +#define PIN_SPI1_MOSI (31u) +#define PIN_SPI1_SCK (31u) +#define PIN_SPI1_SS (31u) + +// Wire connected to STEMMA QT +#define PIN_WIRE0_SDA (20u) +#define PIN_WIRE0_SCL (21u) + +// Wire1 is connected to Stemma JST/grove connector +#define PIN_WIRE1_SDA (26u) +#define PIN_WIRE1_SCL (27u) + +#define SERIAL_HOWMANY (2u) +#define SPI_HOWMANY (1u) +#define WIRE_HOWMANY (2u) + +#include "../generic/common.h" diff --git a/variants/adafruit_trinkeyrp2040qt/pins_arduino.h b/variants/adafruit_trinkeyrp2040qt/pins_arduino.h new file mode 100644 index 00000000..fc30dd00 --- /dev/null +++ b/variants/adafruit_trinkeyrp2040qt/pins_arduino.h @@ -0,0 +1,42 @@ +#pragma once + +// LEDs not pinned out +#define PIN_LED (31u) + +#define PIN_NEOPIXEL (27u) +#define NUM_NEOPIXEL (1u) +#define PIN_SWITCH (12u) + +// Serial, shared on QT pin +#define PIN_SERIAL1_TX (16u) +#define PIN_SERIAL1_RX (17u) + +// Not pinned out +#define PIN_SERIAL2_TX (31u) +#define PIN_SERIAL2_RX (31u) + +// SPI Not pinned out +#define PIN_SPI0_MISO (31u) +#define PIN_SPI0_MOSI (31u) +#define PIN_SPI0_SCK (31u) +#define PIN_SPI0_SS (31u) + +// Not pinned out +#define PIN_SPI1_MISO (31u) +#define PIN_SPI1_MOSI (31u) +#define PIN_SPI1_SCK (31u) +#define PIN_SPI1_SS (31u) + +// Wire +#define PIN_WIRE0_SDA (16u) +#define PIN_WIRE0_SCL (17u) + +// Wire1 Not pinned out +#define PIN_WIRE1_SDA (31u) +#define PIN_WIRE1_SCL (31u) + +#define SERIAL_HOWMANY (1u) +#define SPI_HOWMANY (0u) +#define WIRE_HOWMANY (1u) + +#include "../generic/common.h" -- 2.54.0 From 6db0ba01b9c76f5eecb58a7f23583985fc909d5c Mon Sep 17 00:00:00 2001 From: lady ada Date: Wed, 26 May 2021 12:54:33 -0400 Subject: [PATCH 2/9] add trinkey and stemma friend --- boards.txt | 294 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 294 insertions(+) diff --git a/boards.txt b/boards.txt index 98516280..40155654 100644 --- a/boards.txt +++ b/boards.txt @@ -1102,6 +1102,300 @@ adafruit_qtpypicoprobe.menu.usbstack.picosdk.build.usbstack_flags= adafruit_qtpypicoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB adafruit_qtpypicoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" +# ----------------------------------- +# Adafruit STEMMA Friend RP2040 +# ----------------------------------- +adafruit_stemmafriend.name=Adafruit STEMMA Friend RP2040 +adafruit_stemmafriend.vid.0=0x239a +adafruit_stemmafriend.pid.0=0x80E3 +adafruit_stemmafriend.build.usbpid=-DSERIALUSB_PID=0x80E3 +adafruit_stemmafriend.build.board=ADAFRUIT_STEMMAFRIEND_RP2040 +adafruit_stemmafriend.build.mcu=cortex-m0plus +adafruit_stemmafriend.build.variant=adafruit_stemmafriend +adafruit_stemmafriend.upload.tool=uf2conv +adafruit_stemmafriend.upload.maximum_size=8388608 +adafruit_stemmafriend.upload.maximum_data_size=262144 +adafruit_stemmafriend.upload.wait_for_upload_port=true +adafruit_stemmafriend.upload.erase_cmd= +adafruit_stemmafriend.serial.disableDTR=false +adafruit_stemmafriend.serial.disableRTS=false +adafruit_stemmafriend.build.f_cpu=125000000 +adafruit_stemmafriend.build.led= +adafruit_stemmafriend.build.core=rp2040 +adafruit_stemmafriend.build.mcu=rp2040 +adafruit_stemmafriend.build.ldscript=memmap_default.ld +adafruit_stemmafriend.build.boot2=boot2_generic_03h_4_padded_checksum +adafruit_stemmafriend.build.vid=0x239a +adafruit_stemmafriend.build.pid=0x80E3 +adafruit_stemmafriend.build.usb_manufacturer="Adafruit" +adafruit_stemmafriend.build.usb_product="STEMMA Friend RP2040" +adafruit_stemmafriend.menu.flash.8388608_0=8MB (no FS) +adafruit_stemmafriend.menu.flash.8388608_0.upload.maximum_size=8384512 +adafruit_stemmafriend.menu.flash.8388608_0.build.flash_length=8384512 +adafruit_stemmafriend.menu.flash.8388608_0.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_0.build.fs_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_0.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB) +adafruit_stemmafriend.menu.flash.8388608_65536.upload.maximum_size=8318976 +adafruit_stemmafriend.menu.flash.8388608_65536.build.flash_length=8318976 +adafruit_stemmafriend.menu.flash.8388608_65536.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_65536.build.fs_start=276754432 +adafruit_stemmafriend.menu.flash.8388608_65536.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB) +adafruit_stemmafriend.menu.flash.8388608_131072.upload.maximum_size=8253440 +adafruit_stemmafriend.menu.flash.8388608_131072.build.flash_length=8253440 +adafruit_stemmafriend.menu.flash.8388608_131072.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_131072.build.fs_start=276688896 +adafruit_stemmafriend.menu.flash.8388608_131072.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB) +adafruit_stemmafriend.menu.flash.8388608_262144.upload.maximum_size=8122368 +adafruit_stemmafriend.menu.flash.8388608_262144.build.flash_length=8122368 +adafruit_stemmafriend.menu.flash.8388608_262144.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_262144.build.fs_start=276557824 +adafruit_stemmafriend.menu.flash.8388608_262144.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB) +adafruit_stemmafriend.menu.flash.8388608_524288.upload.maximum_size=7860224 +adafruit_stemmafriend.menu.flash.8388608_524288.build.flash_length=7860224 +adafruit_stemmafriend.menu.flash.8388608_524288.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_524288.build.fs_start=276295680 +adafruit_stemmafriend.menu.flash.8388608_524288.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB) +adafruit_stemmafriend.menu.flash.8388608_1048576.upload.maximum_size=7335936 +adafruit_stemmafriend.menu.flash.8388608_1048576.build.flash_length=7335936 +adafruit_stemmafriend.menu.flash.8388608_1048576.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_1048576.build.fs_start=275771392 +adafruit_stemmafriend.menu.flash.8388608_1048576.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB) +adafruit_stemmafriend.menu.flash.8388608_2097152.upload.maximum_size=6287360 +adafruit_stemmafriend.menu.flash.8388608_2097152.build.flash_length=6287360 +adafruit_stemmafriend.menu.flash.8388608_2097152.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_2097152.build.fs_start=274722816 +adafruit_stemmafriend.menu.flash.8388608_2097152.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB) +adafruit_stemmafriend.menu.flash.8388608_3145728.upload.maximum_size=5238784 +adafruit_stemmafriend.menu.flash.8388608_3145728.build.flash_length=5238784 +adafruit_stemmafriend.menu.flash.8388608_3145728.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_3145728.build.fs_start=273674240 +adafruit_stemmafriend.menu.flash.8388608_3145728.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB) +adafruit_stemmafriend.menu.flash.8388608_4194304.upload.maximum_size=4190208 +adafruit_stemmafriend.menu.flash.8388608_4194304.build.flash_length=4190208 +adafruit_stemmafriend.menu.flash.8388608_4194304.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_4194304.build.fs_start=272625664 +adafruit_stemmafriend.menu.flash.8388608_4194304.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB) +adafruit_stemmafriend.menu.flash.8388608_5242880.upload.maximum_size=3141632 +adafruit_stemmafriend.menu.flash.8388608_5242880.build.flash_length=3141632 +adafruit_stemmafriend.menu.flash.8388608_5242880.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_5242880.build.fs_start=271577088 +adafruit_stemmafriend.menu.flash.8388608_5242880.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB) +adafruit_stemmafriend.menu.flash.8388608_6291456.upload.maximum_size=2093056 +adafruit_stemmafriend.menu.flash.8388608_6291456.build.flash_length=2093056 +adafruit_stemmafriend.menu.flash.8388608_6291456.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_6291456.build.fs_start=270528512 +adafruit_stemmafriend.menu.flash.8388608_6291456.build.fs_end=276819968 +adafruit_stemmafriend.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB) +adafruit_stemmafriend.menu.flash.8388608_7340032.upload.maximum_size=1044480 +adafruit_stemmafriend.menu.flash.8388608_7340032.build.flash_length=1044480 +adafruit_stemmafriend.menu.flash.8388608_7340032.build.eeprom_start=276819968 +adafruit_stemmafriend.menu.flash.8388608_7340032.build.fs_start=269479936 +adafruit_stemmafriend.menu.flash.8388608_7340032.build.fs_end=276819968 +adafruit_stemmafriend.menu.freq.125=125 MHz +adafruit_stemmafriend.menu.freq.125.build.f_cpu=125000000L +adafruit_stemmafriend.menu.freq.50=50 MHz +adafruit_stemmafriend.menu.freq.50.build.f_cpu=50000000L +adafruit_stemmafriend.menu.freq.100=100 MHz +adafruit_stemmafriend.menu.freq.100.build.f_cpu=100000000L +adafruit_stemmafriend.menu.freq.133=133 MHz +adafruit_stemmafriend.menu.freq.133.build.f_cpu=133000000L +adafruit_stemmafriend.menu.freq.150=150 MHz (Overclock) +adafruit_stemmafriend.menu.freq.150.build.f_cpu=150000000L +adafruit_stemmafriend.menu.freq.175=175 MHz (Overclock) +adafruit_stemmafriend.menu.freq.175.build.f_cpu=175000000L +adafruit_stemmafriend.menu.freq.200=200 MHz (Overclock) +adafruit_stemmafriend.menu.freq.200.build.f_cpu=200000000L +adafruit_stemmafriend.menu.freq.225=225 MHz (Overclock) +adafruit_stemmafriend.menu.freq.225.build.f_cpu=225000000L +adafruit_stemmafriend.menu.freq.250=250 MHz (Overclock) +adafruit_stemmafriend.menu.freq.250.build.f_cpu=250000000L +adafruit_stemmafriend.menu.freq.275=275 MHz (Overclock) +adafruit_stemmafriend.menu.freq.275.build.f_cpu=275000000L +adafruit_stemmafriend.menu.freq.300=300 MHz (Overclock) +adafruit_stemmafriend.menu.freq.300.build.f_cpu=300000000L +adafruit_stemmafriend.menu.dbgport.Disabled=Disabled +adafruit_stemmafriend.menu.dbgport.Disabled.build.debug_port= +adafruit_stemmafriend.menu.dbgport.Serial=Serial +adafruit_stemmafriend.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial +adafruit_stemmafriend.menu.dbgport.Serial1=Serial1 +adafruit_stemmafriend.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1 +adafruit_stemmafriend.menu.dbgport.Serial2=Serial2 +adafruit_stemmafriend.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2 +adafruit_stemmafriend.menu.dbglvl.None=None +adafruit_stemmafriend.menu.dbglvl.None.build.debug_level= +adafruit_stemmafriend.menu.dbglvl.Core=Core +adafruit_stemmafriend.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE +adafruit_stemmafriend.menu.dbglvl.SPI=SPI +adafruit_stemmafriend.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI +adafruit_stemmafriend.menu.dbglvl.Wire=Wire +adafruit_stemmafriend.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE +adafruit_stemmafriend.menu.dbglvl.All=All +adafruit_stemmafriend.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE +adafruit_stemmafriend.menu.dbglvl.NDEBUG=NDEBUG +adafruit_stemmafriend.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG +adafruit_stemmafriend.menu.usbstack.picosdk=Pico SDK +adafruit_stemmafriend.menu.usbstack.picosdk.build.usbstack_flags= +adafruit_stemmafriend.menu.usbstack.tinyusb=Adafruit TinyUSB +adafruit_stemmafriend.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" + + + +# ----------------------------------- +# Adafruit Trinkey RP2040 QT +# ----------------------------------- +adafruit_trinkeyrp2040qt.name=Adafruit Trinkey RP2040 QT +adafruit_trinkeyrp2040qt.vid.0=0x239a +adafruit_trinkeyrp2040qt.pid.0=0x8109 +adafruit_trinkeyrp2040qt.build.usbpid=-DSERIALUSB_PID=0x8109 +adafruit_trinkeyrp2040qt.build.board=ADAFRUIT_TRINKEYQT_RP2040 +adafruit_trinkeyrp2040qt.build.mcu=cortex-m0plus +adafruit_trinkeyrp2040qt.build.variant=adafruit_trinkeyrp2040qt +adafruit_trinkeyrp2040qt.upload.tool=uf2conv +adafruit_trinkeyrp2040qt.upload.maximum_size=8388608 +adafruit_trinkeyrp2040qt.upload.maximum_data_size=262144 +adafruit_trinkeyrp2040qt.upload.wait_for_upload_port=true +adafruit_trinkeyrp2040qt.upload.erase_cmd= +adafruit_trinkeyrp2040qt.serial.disableDTR=false +adafruit_trinkeyrp2040qt.serial.disableRTS=false +adafruit_trinkeyrp2040qt.build.f_cpu=125000000 +adafruit_trinkeyrp2040qt.build.led= +adafruit_trinkeyrp2040qt.build.core=rp2040 +adafruit_trinkeyrp2040qt.build.mcu=rp2040 +adafruit_trinkeyrp2040qt.build.ldscript=memmap_default.ld +adafruit_trinkeyrp2040qt.build.boot2=boot2_generic_03h_4_padded_checksum +adafruit_trinkeyrp2040qt.build.vid=0x239a +adafruit_trinkeyrp2040qt.build.pid=0x8109 +adafruit_trinkeyrp2040qt.build.usb_manufacturer="Adafruit" +adafruit_trinkeyrp2040qt.build.usb_product="Trinkey RP2040 QT" +adafruit_trinkeyrp2040qt.menu.flash.8388608_0=8MB (no FS) +adafruit_trinkeyrp2040qt.menu.flash.8388608_0.upload.maximum_size=8384512 +adafruit_trinkeyrp2040qt.menu.flash.8388608_0.build.flash_length=8384512 +adafruit_trinkeyrp2040qt.menu.flash.8388608_0.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_0.build.fs_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_0.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_65536.upload.maximum_size=8318976 +adafruit_trinkeyrp2040qt.menu.flash.8388608_65536.build.flash_length=8318976 +adafruit_trinkeyrp2040qt.menu.flash.8388608_65536.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_65536.build.fs_start=276754432 +adafruit_trinkeyrp2040qt.menu.flash.8388608_65536.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_131072.upload.maximum_size=8253440 +adafruit_trinkeyrp2040qt.menu.flash.8388608_131072.build.flash_length=8253440 +adafruit_trinkeyrp2040qt.menu.flash.8388608_131072.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_131072.build.fs_start=276688896 +adafruit_trinkeyrp2040qt.menu.flash.8388608_131072.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_262144.upload.maximum_size=8122368 +adafruit_trinkeyrp2040qt.menu.flash.8388608_262144.build.flash_length=8122368 +adafruit_trinkeyrp2040qt.menu.flash.8388608_262144.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_262144.build.fs_start=276557824 +adafruit_trinkeyrp2040qt.menu.flash.8388608_262144.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_524288.upload.maximum_size=7860224 +adafruit_trinkeyrp2040qt.menu.flash.8388608_524288.build.flash_length=7860224 +adafruit_trinkeyrp2040qt.menu.flash.8388608_524288.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_524288.build.fs_start=276295680 +adafruit_trinkeyrp2040qt.menu.flash.8388608_524288.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_1048576.upload.maximum_size=7335936 +adafruit_trinkeyrp2040qt.menu.flash.8388608_1048576.build.flash_length=7335936 +adafruit_trinkeyrp2040qt.menu.flash.8388608_1048576.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_1048576.build.fs_start=275771392 +adafruit_trinkeyrp2040qt.menu.flash.8388608_1048576.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_2097152.upload.maximum_size=6287360 +adafruit_trinkeyrp2040qt.menu.flash.8388608_2097152.build.flash_length=6287360 +adafruit_trinkeyrp2040qt.menu.flash.8388608_2097152.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_2097152.build.fs_start=274722816 +adafruit_trinkeyrp2040qt.menu.flash.8388608_2097152.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_3145728.upload.maximum_size=5238784 +adafruit_trinkeyrp2040qt.menu.flash.8388608_3145728.build.flash_length=5238784 +adafruit_trinkeyrp2040qt.menu.flash.8388608_3145728.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_3145728.build.fs_start=273674240 +adafruit_trinkeyrp2040qt.menu.flash.8388608_3145728.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_4194304.upload.maximum_size=4190208 +adafruit_trinkeyrp2040qt.menu.flash.8388608_4194304.build.flash_length=4190208 +adafruit_trinkeyrp2040qt.menu.flash.8388608_4194304.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_4194304.build.fs_start=272625664 +adafruit_trinkeyrp2040qt.menu.flash.8388608_4194304.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_5242880.upload.maximum_size=3141632 +adafruit_trinkeyrp2040qt.menu.flash.8388608_5242880.build.flash_length=3141632 +adafruit_trinkeyrp2040qt.menu.flash.8388608_5242880.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_5242880.build.fs_start=271577088 +adafruit_trinkeyrp2040qt.menu.flash.8388608_5242880.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_6291456.upload.maximum_size=2093056 +adafruit_trinkeyrp2040qt.menu.flash.8388608_6291456.build.flash_length=2093056 +adafruit_trinkeyrp2040qt.menu.flash.8388608_6291456.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_6291456.build.fs_start=270528512 +adafruit_trinkeyrp2040qt.menu.flash.8388608_6291456.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB) +adafruit_trinkeyrp2040qt.menu.flash.8388608_7340032.upload.maximum_size=1044480 +adafruit_trinkeyrp2040qt.menu.flash.8388608_7340032.build.flash_length=1044480 +adafruit_trinkeyrp2040qt.menu.flash.8388608_7340032.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qt.menu.flash.8388608_7340032.build.fs_start=269479936 +adafruit_trinkeyrp2040qt.menu.flash.8388608_7340032.build.fs_end=276819968 +adafruit_trinkeyrp2040qt.menu.freq.125=125 MHz +adafruit_trinkeyrp2040qt.menu.freq.125.build.f_cpu=125000000L +adafruit_trinkeyrp2040qt.menu.freq.50=50 MHz +adafruit_trinkeyrp2040qt.menu.freq.50.build.f_cpu=50000000L +adafruit_trinkeyrp2040qt.menu.freq.100=100 MHz +adafruit_trinkeyrp2040qt.menu.freq.100.build.f_cpu=100000000L +adafruit_trinkeyrp2040qt.menu.freq.133=133 MHz +adafruit_trinkeyrp2040qt.menu.freq.133.build.f_cpu=133000000L +adafruit_trinkeyrp2040qt.menu.freq.150=150 MHz (Overclock) +adafruit_trinkeyrp2040qt.menu.freq.150.build.f_cpu=150000000L +adafruit_trinkeyrp2040qt.menu.freq.175=175 MHz (Overclock) +adafruit_trinkeyrp2040qt.menu.freq.175.build.f_cpu=175000000L +adafruit_trinkeyrp2040qt.menu.freq.200=200 MHz (Overclock) +adafruit_trinkeyrp2040qt.menu.freq.200.build.f_cpu=200000000L +adafruit_trinkeyrp2040qt.menu.freq.225=225 MHz (Overclock) +adafruit_trinkeyrp2040qt.menu.freq.225.build.f_cpu=225000000L +adafruit_trinkeyrp2040qt.menu.freq.250=250 MHz (Overclock) +adafruit_trinkeyrp2040qt.menu.freq.250.build.f_cpu=250000000L +adafruit_trinkeyrp2040qt.menu.freq.275=275 MHz (Overclock) +adafruit_trinkeyrp2040qt.menu.freq.275.build.f_cpu=275000000L +adafruit_trinkeyrp2040qt.menu.freq.300=300 MHz (Overclock) +adafruit_trinkeyrp2040qt.menu.freq.300.build.f_cpu=300000000L +adafruit_trinkeyrp2040qt.menu.dbgport.Disabled=Disabled +adafruit_trinkeyrp2040qt.menu.dbgport.Disabled.build.debug_port= +adafruit_trinkeyrp2040qt.menu.dbgport.Serial=Serial +adafruit_trinkeyrp2040qt.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial +adafruit_trinkeyrp2040qt.menu.dbgport.Serial1=Serial1 +adafruit_trinkeyrp2040qt.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1 +adafruit_trinkeyrp2040qt.menu.dbgport.Serial2=Serial2 +adafruit_trinkeyrp2040qt.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2 +adafruit_trinkeyrp2040qt.menu.dbglvl.None=None +adafruit_trinkeyrp2040qt.menu.dbglvl.None.build.debug_level= +adafruit_trinkeyrp2040qt.menu.dbglvl.Core=Core +adafruit_trinkeyrp2040qt.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE +adafruit_trinkeyrp2040qt.menu.dbglvl.SPI=SPI +adafruit_trinkeyrp2040qt.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI +adafruit_trinkeyrp2040qt.menu.dbglvl.Wire=Wire +adafruit_trinkeyrp2040qt.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE +adafruit_trinkeyrp2040qt.menu.dbglvl.All=All +adafruit_trinkeyrp2040qt.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE +adafruit_trinkeyrp2040qt.menu.dbglvl.NDEBUG=NDEBUG +adafruit_trinkeyrp2040qt.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG +adafruit_trinkeyrp2040qt.menu.usbstack.picosdk=Pico SDK +adafruit_trinkeyrp2040qt.menu.usbstack.picosdk.build.usbstack_flags= +adafruit_trinkeyrp2040qt.menu.usbstack.tinyusb=Adafruit TinyUSB +adafruit_trinkeyrp2040qt.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" + # ----------------------------------- # Generic RP2040 # ----------------------------------- -- 2.54.0 From cf270897e8050b57d545a4a312da518df646b459 Mon Sep 17 00:00:00 2001 From: lady ada Date: Wed, 26 May 2021 12:56:44 -0400 Subject: [PATCH 3/9] add fast SPI transfer using pico-sdk blocks --- libraries/SPI/SPI.cpp | 34 ++++++++++++++++++++++++++++++++++ libraries/SPI/SPI.h | 3 +++ 2 files changed, 37 insertions(+) diff --git a/libraries/SPI/SPI.cpp b/libraries/SPI/SPI.cpp index 596a0594..77ea55f7 100644 --- a/libraries/SPI/SPI.cpp +++ b/libraries/SPI/SPI.cpp @@ -124,6 +124,40 @@ void SPIClassRP2040::transfer(void *buf, size_t count) { DEBUGSPI("SPI::transfer completed\n"); } +void SPIClassRP2040::transfer(void *txbuf, void *rxbuf, size_t count) { + if (!_initted) return; + + DEBUGSPI("SPI::transfer(%p, %p, %d)\n", txbuf, rxbuf, count); + uint8_t *txbuff = reinterpret_cast(txbuf); + uint8_t *rxbuff = reinterpret_cast(rxbuf); + + // MSB version is easy! + if (_spis.getBitOrder() == MSBFIRST) { + spi_set_format(_spi, 8, cpol(), cpha(), SPI_MSB_FIRST); + + if (rxbuf == NULL) { // transmit only! + spi_write_blocking(_spi, txbuff, count); + return; + } + if (txbuf == NULL) { // receive only! + spi_read_blocking(_spi, 0xFF, rxbuff, count); + return; + } + // transmit and receive! + spi_write_read_blocking(_spi, txbuff, rxbuff, count); + return; + } + + // If its LSB this isnt nearly as fun, we'll just let transfer(x) do it :( + for (auto i = 0; i < count; i++) { + *rxbuff = transfer(*txbuff); + *rxbuff = (_spis.getBitOrder() == MSBFIRST) ? *rxbuff : reverseByte(*rxbuff); + txbuff++; + rxbuff++; + } + DEBUGSPI("SPI::transfer completed\n"); +} + void SPIClassRP2040::beginTransaction(SPISettings settings) { DEBUGSPI("SPI::beginTransaction(clk=%d, bo=%s\n", _spis.getClockFreq(), (_spis.getBitOrder() == MSBFIRST) ? "MSB" : "LSB"); _spis = settings; diff --git a/libraries/SPI/SPI.h b/libraries/SPI/SPI.h index af102282..3dc1f78c 100644 --- a/libraries/SPI/SPI.h +++ b/libraries/SPI/SPI.h @@ -35,6 +35,9 @@ public: // Sends buffer in 8 bit chunks. Overwrites buffer with read data void transfer(void *buf, size_t count) override; + // Sends one buffer and receives into another, much faster! can set rx or txbuf to NULL + void transfer(void *txbuf, void *rxbuf, size_t count); + // Call before/after every complete transaction void beginTransaction(SPISettings settings) override; void endTransaction(void) override; -- 2.54.0 From 554da4891f217abe47c9948cb9ecf43123e63865 Mon Sep 17 00:00:00 2001 From: hathach Date: Thu, 27 May 2021 00:37:44 +0700 Subject: [PATCH 4/9] update makeboards.py for new variants - STEMMA Friend RP2040 - Trinkey RP2040 QT --- boards.txt | 302 +++++++++++++++++++++++++++++++++++++++++++- tools/makeboards.py | 2 + 2 files changed, 298 insertions(+), 6 deletions(-) diff --git a/boards.txt b/boards.txt index 40155654..1014c5cd 100644 --- a/boards.txt +++ b/boards.txt @@ -1107,8 +1107,8 @@ adafruit_qtpypicoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB # ----------------------------------- adafruit_stemmafriend.name=Adafruit STEMMA Friend RP2040 adafruit_stemmafriend.vid.0=0x239a -adafruit_stemmafriend.pid.0=0x80E3 -adafruit_stemmafriend.build.usbpid=-DSERIALUSB_PID=0x80E3 +adafruit_stemmafriend.pid.0=0x80e3 +adafruit_stemmafriend.build.usbpid=-DSERIALUSB_PID=0x80e3 adafruit_stemmafriend.build.board=ADAFRUIT_STEMMAFRIEND_RP2040 adafruit_stemmafriend.build.mcu=cortex-m0plus adafruit_stemmafriend.build.variant=adafruit_stemmafriend @@ -1124,9 +1124,9 @@ adafruit_stemmafriend.build.led= adafruit_stemmafriend.build.core=rp2040 adafruit_stemmafriend.build.mcu=rp2040 adafruit_stemmafriend.build.ldscript=memmap_default.ld -adafruit_stemmafriend.build.boot2=boot2_generic_03h_4_padded_checksum +adafruit_stemmafriend.build.boot2=boot2_w25q080_2_padded_checksum adafruit_stemmafriend.build.vid=0x239a -adafruit_stemmafriend.build.pid=0x80E3 +adafruit_stemmafriend.build.pid=0x80e3 adafruit_stemmafriend.build.usb_manufacturer="Adafruit" adafruit_stemmafriend.build.usb_product="STEMMA Friend RP2040" adafruit_stemmafriend.menu.flash.8388608_0=8MB (no FS) @@ -1248,7 +1248,151 @@ adafruit_stemmafriend.menu.usbstack.picosdk.build.usbstack_flags= adafruit_stemmafriend.menu.usbstack.tinyusb=Adafruit TinyUSB adafruit_stemmafriend.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" - +# ----------------------------------- +# Adafruit STEMMA Friend RP2040 (Picoprobe) +# ----------------------------------- +adafruit_stemmafriendpicoprobe.name=Adafruit STEMMA Friend RP2040 (Picoprobe) +adafruit_stemmafriendpicoprobe.vid.0=0x239a +adafruit_stemmafriendpicoprobe.pid.0=0x0004 +adafruit_stemmafriendpicoprobe.build.usbpid=-DSERIALUSB_PID=0x80e3 +adafruit_stemmafriendpicoprobe.build.board=ADAFRUIT_STEMMAFRIEND_RP2040 +adafruit_stemmafriendpicoprobe.build.mcu=cortex-m0plus +adafruit_stemmafriendpicoprobe.build.variant=adafruit_stemmafriend +adafruit_stemmafriendpicoprobe.upload.tool=picoprobe +adafruit_stemmafriendpicoprobe.upload.maximum_size=8388608 +adafruit_stemmafriendpicoprobe.upload.maximum_data_size=262144 +adafruit_stemmafriendpicoprobe.upload.wait_for_upload_port=true +adafruit_stemmafriendpicoprobe.upload.erase_cmd= +adafruit_stemmafriendpicoprobe.serial.disableDTR=false +adafruit_stemmafriendpicoprobe.serial.disableRTS=false +adafruit_stemmafriendpicoprobe.build.f_cpu=125000000 +adafruit_stemmafriendpicoprobe.build.led= +adafruit_stemmafriendpicoprobe.build.core=rp2040 +adafruit_stemmafriendpicoprobe.build.mcu=rp2040 +adafruit_stemmafriendpicoprobe.build.ldscript=memmap_default.ld +adafruit_stemmafriendpicoprobe.build.boot2=boot2_w25q080_2_padded_checksum +adafruit_stemmafriendpicoprobe.build.vid=0x239a +adafruit_stemmafriendpicoprobe.build.pid=0x80e3 +adafruit_stemmafriendpicoprobe.build.usb_manufacturer="Adafruit" +adafruit_stemmafriendpicoprobe.build.usb_product="STEMMA Friend RP2040 (Picoprobe)" +adafruit_stemmafriendpicoprobe.menu.flash.8388608_0=8MB (no FS) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_0.upload.maximum_size=8384512 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_0.build.flash_length=8384512 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_0.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_0.build.fs_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_0.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_65536.upload.maximum_size=8318976 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_65536.build.flash_length=8318976 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_65536.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_65536.build.fs_start=276754432 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_65536.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_131072.upload.maximum_size=8253440 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_131072.build.flash_length=8253440 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_131072.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_131072.build.fs_start=276688896 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_131072.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_262144.upload.maximum_size=8122368 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_262144.build.flash_length=8122368 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_262144.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_262144.build.fs_start=276557824 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_262144.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_524288.upload.maximum_size=7860224 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_524288.build.flash_length=7860224 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_524288.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_524288.build.fs_start=276295680 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_524288.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_1048576.upload.maximum_size=7335936 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_1048576.build.flash_length=7335936 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_1048576.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_1048576.build.fs_start=275771392 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_1048576.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_2097152.upload.maximum_size=6287360 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_2097152.build.flash_length=6287360 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_2097152.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_2097152.build.fs_start=274722816 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_2097152.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_3145728.upload.maximum_size=5238784 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_3145728.build.flash_length=5238784 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_3145728.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_3145728.build.fs_start=273674240 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_3145728.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_4194304.upload.maximum_size=4190208 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_4194304.build.flash_length=4190208 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_4194304.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_4194304.build.fs_start=272625664 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_4194304.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_5242880.upload.maximum_size=3141632 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_5242880.build.flash_length=3141632 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_5242880.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_5242880.build.fs_start=271577088 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_5242880.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_6291456.upload.maximum_size=2093056 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_6291456.build.flash_length=2093056 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_6291456.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_6291456.build.fs_start=270528512 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_6291456.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB) +adafruit_stemmafriendpicoprobe.menu.flash.8388608_7340032.upload.maximum_size=1044480 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_7340032.build.flash_length=1044480 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_7340032.build.eeprom_start=276819968 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_7340032.build.fs_start=269479936 +adafruit_stemmafriendpicoprobe.menu.flash.8388608_7340032.build.fs_end=276819968 +adafruit_stemmafriendpicoprobe.menu.freq.125=125 MHz +adafruit_stemmafriendpicoprobe.menu.freq.125.build.f_cpu=125000000L +adafruit_stemmafriendpicoprobe.menu.freq.50=50 MHz +adafruit_stemmafriendpicoprobe.menu.freq.50.build.f_cpu=50000000L +adafruit_stemmafriendpicoprobe.menu.freq.100=100 MHz +adafruit_stemmafriendpicoprobe.menu.freq.100.build.f_cpu=100000000L +adafruit_stemmafriendpicoprobe.menu.freq.133=133 MHz +adafruit_stemmafriendpicoprobe.menu.freq.133.build.f_cpu=133000000L +adafruit_stemmafriendpicoprobe.menu.freq.150=150 MHz (Overclock) +adafruit_stemmafriendpicoprobe.menu.freq.150.build.f_cpu=150000000L +adafruit_stemmafriendpicoprobe.menu.freq.175=175 MHz (Overclock) +adafruit_stemmafriendpicoprobe.menu.freq.175.build.f_cpu=175000000L +adafruit_stemmafriendpicoprobe.menu.freq.200=200 MHz (Overclock) +adafruit_stemmafriendpicoprobe.menu.freq.200.build.f_cpu=200000000L +adafruit_stemmafriendpicoprobe.menu.freq.225=225 MHz (Overclock) +adafruit_stemmafriendpicoprobe.menu.freq.225.build.f_cpu=225000000L +adafruit_stemmafriendpicoprobe.menu.freq.250=250 MHz (Overclock) +adafruit_stemmafriendpicoprobe.menu.freq.250.build.f_cpu=250000000L +adafruit_stemmafriendpicoprobe.menu.freq.275=275 MHz (Overclock) +adafruit_stemmafriendpicoprobe.menu.freq.275.build.f_cpu=275000000L +adafruit_stemmafriendpicoprobe.menu.freq.300=300 MHz (Overclock) +adafruit_stemmafriendpicoprobe.menu.freq.300.build.f_cpu=300000000L +adafruit_stemmafriendpicoprobe.menu.dbgport.Disabled=Disabled +adafruit_stemmafriendpicoprobe.menu.dbgport.Disabled.build.debug_port= +adafruit_stemmafriendpicoprobe.menu.dbgport.Serial=Serial +adafruit_stemmafriendpicoprobe.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial +adafruit_stemmafriendpicoprobe.menu.dbgport.Serial1=Serial1 +adafruit_stemmafriendpicoprobe.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1 +adafruit_stemmafriendpicoprobe.menu.dbgport.Serial2=Serial2 +adafruit_stemmafriendpicoprobe.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2 +adafruit_stemmafriendpicoprobe.menu.dbglvl.None=None +adafruit_stemmafriendpicoprobe.menu.dbglvl.None.build.debug_level= +adafruit_stemmafriendpicoprobe.menu.dbglvl.Core=Core +adafruit_stemmafriendpicoprobe.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE +adafruit_stemmafriendpicoprobe.menu.dbglvl.SPI=SPI +adafruit_stemmafriendpicoprobe.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI +adafruit_stemmafriendpicoprobe.menu.dbglvl.Wire=Wire +adafruit_stemmafriendpicoprobe.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE +adafruit_stemmafriendpicoprobe.menu.dbglvl.All=All +adafruit_stemmafriendpicoprobe.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE +adafruit_stemmafriendpicoprobe.menu.dbglvl.NDEBUG=NDEBUG +adafruit_stemmafriendpicoprobe.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG +adafruit_stemmafriendpicoprobe.menu.usbstack.picosdk=Pico SDK +adafruit_stemmafriendpicoprobe.menu.usbstack.picosdk.build.usbstack_flags= +adafruit_stemmafriendpicoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB +adafruit_stemmafriendpicoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" # ----------------------------------- # Adafruit Trinkey RP2040 QT @@ -1272,7 +1416,7 @@ adafruit_trinkeyrp2040qt.build.led= adafruit_trinkeyrp2040qt.build.core=rp2040 adafruit_trinkeyrp2040qt.build.mcu=rp2040 adafruit_trinkeyrp2040qt.build.ldscript=memmap_default.ld -adafruit_trinkeyrp2040qt.build.boot2=boot2_generic_03h_4_padded_checksum +adafruit_trinkeyrp2040qt.build.boot2=boot2_w25q080_2_padded_checksum adafruit_trinkeyrp2040qt.build.vid=0x239a adafruit_trinkeyrp2040qt.build.pid=0x8109 adafruit_trinkeyrp2040qt.build.usb_manufacturer="Adafruit" @@ -1396,6 +1540,152 @@ adafruit_trinkeyrp2040qt.menu.usbstack.picosdk.build.usbstack_flags= adafruit_trinkeyrp2040qt.menu.usbstack.tinyusb=Adafruit TinyUSB adafruit_trinkeyrp2040qt.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" +# ----------------------------------- +# Adafruit Trinkey RP2040 QT (Picoprobe) +# ----------------------------------- +adafruit_trinkeyrp2040qtpicoprobe.name=Adafruit Trinkey RP2040 QT (Picoprobe) +adafruit_trinkeyrp2040qtpicoprobe.vid.0=0x239a +adafruit_trinkeyrp2040qtpicoprobe.pid.0=0x0004 +adafruit_trinkeyrp2040qtpicoprobe.build.usbpid=-DSERIALUSB_PID=0x8109 +adafruit_trinkeyrp2040qtpicoprobe.build.board=ADAFRUIT_TRINKEYQT_RP2040 +adafruit_trinkeyrp2040qtpicoprobe.build.mcu=cortex-m0plus +adafruit_trinkeyrp2040qtpicoprobe.build.variant=adafruit_trinkeyrp2040qt +adafruit_trinkeyrp2040qtpicoprobe.upload.tool=picoprobe +adafruit_trinkeyrp2040qtpicoprobe.upload.maximum_size=8388608 +adafruit_trinkeyrp2040qtpicoprobe.upload.maximum_data_size=262144 +adafruit_trinkeyrp2040qtpicoprobe.upload.wait_for_upload_port=true +adafruit_trinkeyrp2040qtpicoprobe.upload.erase_cmd= +adafruit_trinkeyrp2040qtpicoprobe.serial.disableDTR=false +adafruit_trinkeyrp2040qtpicoprobe.serial.disableRTS=false +adafruit_trinkeyrp2040qtpicoprobe.build.f_cpu=125000000 +adafruit_trinkeyrp2040qtpicoprobe.build.led= +adafruit_trinkeyrp2040qtpicoprobe.build.core=rp2040 +adafruit_trinkeyrp2040qtpicoprobe.build.mcu=rp2040 +adafruit_trinkeyrp2040qtpicoprobe.build.ldscript=memmap_default.ld +adafruit_trinkeyrp2040qtpicoprobe.build.boot2=boot2_w25q080_2_padded_checksum +adafruit_trinkeyrp2040qtpicoprobe.build.vid=0x239a +adafruit_trinkeyrp2040qtpicoprobe.build.pid=0x8109 +adafruit_trinkeyrp2040qtpicoprobe.build.usb_manufacturer="Adafruit" +adafruit_trinkeyrp2040qtpicoprobe.build.usb_product="Trinkey RP2040 QT (Picoprobe)" +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_0=8MB (no FS) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_0.upload.maximum_size=8384512 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_0.build.flash_length=8384512 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_0.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_0.build.fs_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_0.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_65536.upload.maximum_size=8318976 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_65536.build.flash_length=8318976 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_65536.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_65536.build.fs_start=276754432 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_65536.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_131072.upload.maximum_size=8253440 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_131072.build.flash_length=8253440 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_131072.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_131072.build.fs_start=276688896 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_131072.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_262144.upload.maximum_size=8122368 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_262144.build.flash_length=8122368 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_262144.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_262144.build.fs_start=276557824 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_262144.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_524288.upload.maximum_size=7860224 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_524288.build.flash_length=7860224 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_524288.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_524288.build.fs_start=276295680 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_524288.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_1048576.upload.maximum_size=7335936 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_1048576.build.flash_length=7335936 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_1048576.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_1048576.build.fs_start=275771392 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_1048576.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_2097152.upload.maximum_size=6287360 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_2097152.build.flash_length=6287360 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_2097152.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_2097152.build.fs_start=274722816 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_2097152.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_3145728.upload.maximum_size=5238784 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_3145728.build.flash_length=5238784 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_3145728.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_3145728.build.fs_start=273674240 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_3145728.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_4194304.upload.maximum_size=4190208 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_4194304.build.flash_length=4190208 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_4194304.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_4194304.build.fs_start=272625664 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_4194304.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_5242880.upload.maximum_size=3141632 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_5242880.build.flash_length=3141632 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_5242880.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_5242880.build.fs_start=271577088 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_5242880.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_6291456.upload.maximum_size=2093056 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_6291456.build.flash_length=2093056 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_6291456.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_6291456.build.fs_start=270528512 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_6291456.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB) +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_7340032.upload.maximum_size=1044480 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_7340032.build.flash_length=1044480 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_7340032.build.eeprom_start=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_7340032.build.fs_start=269479936 +adafruit_trinkeyrp2040qtpicoprobe.menu.flash.8388608_7340032.build.fs_end=276819968 +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.125=125 MHz +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.125.build.f_cpu=125000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.50=50 MHz +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.50.build.f_cpu=50000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.100=100 MHz +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.100.build.f_cpu=100000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.133=133 MHz +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.133.build.f_cpu=133000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.150=150 MHz (Overclock) +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.150.build.f_cpu=150000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.175=175 MHz (Overclock) +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.175.build.f_cpu=175000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.200=200 MHz (Overclock) +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.200.build.f_cpu=200000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.225=225 MHz (Overclock) +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.225.build.f_cpu=225000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.250=250 MHz (Overclock) +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.250.build.f_cpu=250000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.275=275 MHz (Overclock) +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.275.build.f_cpu=275000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.300=300 MHz (Overclock) +adafruit_trinkeyrp2040qtpicoprobe.menu.freq.300.build.f_cpu=300000000L +adafruit_trinkeyrp2040qtpicoprobe.menu.dbgport.Disabled=Disabled +adafruit_trinkeyrp2040qtpicoprobe.menu.dbgport.Disabled.build.debug_port= +adafruit_trinkeyrp2040qtpicoprobe.menu.dbgport.Serial=Serial +adafruit_trinkeyrp2040qtpicoprobe.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial +adafruit_trinkeyrp2040qtpicoprobe.menu.dbgport.Serial1=Serial1 +adafruit_trinkeyrp2040qtpicoprobe.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1 +adafruit_trinkeyrp2040qtpicoprobe.menu.dbgport.Serial2=Serial2 +adafruit_trinkeyrp2040qtpicoprobe.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2 +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.None=None +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.None.build.debug_level= +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.Core=Core +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.SPI=SPI +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.Wire=Wire +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.All=All +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.NDEBUG=NDEBUG +adafruit_trinkeyrp2040qtpicoprobe.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG +adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.picosdk=Pico SDK +adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.picosdk.build.usbstack_flags= +adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB +adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" + # ----------------------------------- # Generic RP2040 # ----------------------------------- diff --git a/tools/makeboards.py b/tools/makeboards.py index 9a1b8b34..20fd0b21 100755 --- a/tools/makeboards.py +++ b/tools/makeboards.py @@ -123,5 +123,7 @@ MakeBoard("rpipico", "Raspberry Pi", "Pico", "0x2e8a", "0x000a", "RASPBERRY_PI_P MakeBoard("adafruit_feather", "Adafruit", "Feather RP2040", "0x239a", "0x80f1", "ADAFRUIT_FEATHER_RP2040", 8, "boot2_w25x10cl_4_padded_checksum") MakeBoard("adafruit_itsybitsy", "Adafruit", "ItsyBitsy RP2040", "0x239a", "0x80fd", "ADAFRUIT_ITSYBITSY_RP2040", 8, "boot2_w25q080_2_padded_checksum") MakeBoard("adafruit_qtpy", "Adafruit", "QT Py RP2040", "0x239a", "0x80f7", "ADAFRUIT_QTPY_RP2040", 8, "boot2_generic_03h_4_padded_checksum") +MakeBoard("adafruit_stemmafriend", "Adafruit", "STEMMA Friend RP2040", "0x239a", "0x80e3", "ADAFRUIT_STEMMAFRIEND_RP2040", 8, "boot2_w25q080_2_padded_checksum") +MakeBoard("adafruit_trinkeyrp2040qt", "Adafruit", "Trinkey RP2040 QT", "0x239a", "0x8109", "ADAFRUIT_TRINKEYQT_RP2040", 8, "boot2_w25q080_2_padded_checksum") MakeBoard("generic", "Generic", "RP2040", "0x2e8a", "0xf00a", "GENERIC_RP2040", 16, "boot2_generic_03h_4_padded_checksum") -- 2.54.0 From a258e7fef06a47256d49b9e74712358fbe73db6f Mon Sep 17 00:00:00 2001 From: lady ada Date: Wed, 26 May 2021 14:55:52 -0400 Subject: [PATCH 5/9] run astyle on SPI library --- libraries/SPI/SPI.cpp | 48 +++++++++++++++++++++++++------------------ 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/libraries/SPI/SPI.cpp b/libraries/SPI/SPI.cpp index 77ea55f7..0cf0ca26 100644 --- a/libraries/SPI/SPI.cpp +++ b/libraries/SPI/SPI.cpp @@ -35,10 +35,14 @@ SPIClassRP2040::SPIClassRP2040(spi_inst_t *spi, pin_size_t rx, pin_size_t cs, pi inline spi_cpol_t SPIClassRP2040::cpol() { switch (_spis.getDataMode()) { - case SPI_MODE0: return SPI_CPOL_0; - case SPI_MODE1: return SPI_CPOL_0; - case SPI_MODE2: return SPI_CPOL_1; - case SPI_MODE3: return SPI_CPOL_1; + case SPI_MODE0: + return SPI_CPOL_0; + case SPI_MODE1: + return SPI_CPOL_0; + case SPI_MODE2: + return SPI_CPOL_1; + case SPI_MODE3: + return SPI_CPOL_1; } // Error return SPI_CPOL_0; @@ -46,10 +50,14 @@ inline spi_cpol_t SPIClassRP2040::cpol() { inline spi_cpha_t SPIClassRP2040::cpha() { switch (_spis.getDataMode()) { - case SPI_MODE0: return SPI_CPHA_0; - case SPI_MODE1: return SPI_CPHA_1; - case SPI_MODE2: return SPI_CPHA_0; - case SPI_MODE3: return SPI_CPHA_1; + case SPI_MODE0: + return SPI_CPHA_0; + case SPI_MODE1: + return SPI_CPHA_1; + case SPI_MODE2: + return SPI_CPHA_0; + case SPI_MODE3: + return SPI_CPHA_1; } // Error return SPI_CPHA_0; @@ -133,22 +141,22 @@ void SPIClassRP2040::transfer(void *txbuf, void *rxbuf, size_t count) { // MSB version is easy! if (_spis.getBitOrder() == MSBFIRST) { - spi_set_format(_spi, 8, cpol(), cpha(), SPI_MSB_FIRST); + spi_set_format(_spi, 8, cpol(), cpha(), SPI_MSB_FIRST); - if (rxbuf == NULL) { // transmit only! - spi_write_blocking(_spi, txbuff, count); + if (rxbuf == NULL) { // transmit only! + spi_write_blocking(_spi, txbuff, count); + return; + } + if (txbuf == NULL) { // receive only! + spi_read_blocking(_spi, 0xFF, rxbuff, count); + return; + } + // transmit and receive! + spi_write_read_blocking(_spi, txbuff, rxbuff, count); return; - } - if (txbuf == NULL) { // receive only! - spi_read_blocking(_spi, 0xFF, rxbuff, count); - return; - } - // transmit and receive! - spi_write_read_blocking(_spi, txbuff, rxbuff, count); - return; } - // If its LSB this isnt nearly as fun, we'll just let transfer(x) do it :( + // If its LSB this isn't nearly as fun, we'll just let transfer(x) do it :( for (auto i = 0; i < count; i++) { *rxbuff = transfer(*txbuff); *rxbuff = (_spis.getBitOrder() == MSBFIRST) ? *rxbuff : reverseByte(*rxbuff); -- 2.54.0 From 68fa0e952de47c9e43052faf7833b3d1aed62217 Mon Sep 17 00:00:00 2001 From: lady ada Date: Wed, 26 May 2021 14:58:30 -0400 Subject: [PATCH 6/9] fix auto -> ssize type --- libraries/SPI/SPI.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/SPI/SPI.cpp b/libraries/SPI/SPI.cpp index 0cf0ca26..109514ae 100644 --- a/libraries/SPI/SPI.cpp +++ b/libraries/SPI/SPI.cpp @@ -157,7 +157,7 @@ void SPIClassRP2040::transfer(void *txbuf, void *rxbuf, size_t count) { } // If its LSB this isn't nearly as fun, we'll just let transfer(x) do it :( - for (auto i = 0; i < count; i++) { + for (ssize_t i = 0; i < count; i++) { *rxbuff = transfer(*txbuff); *rxbuff = (_spis.getBitOrder() == MSBFIRST) ? *rxbuff : reverseByte(*rxbuff); txbuff++; -- 2.54.0 From 7e95b39856e40fdf8469f2aa55ac151f0a3cbd95 Mon Sep 17 00:00:00 2001 From: ladyada Date: Wed, 26 May 2021 17:52:25 -0400 Subject: [PATCH 7/9] astyled --- libraries/SPI/SPI.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libraries/SPI/SPI.cpp b/libraries/SPI/SPI.cpp index 109514ae..44dc0bb4 100644 --- a/libraries/SPI/SPI.cpp +++ b/libraries/SPI/SPI.cpp @@ -133,7 +133,9 @@ void SPIClassRP2040::transfer(void *buf, size_t count) { } void SPIClassRP2040::transfer(void *txbuf, void *rxbuf, size_t count) { - if (!_initted) return; + if (!_initted) { + return; + } DEBUGSPI("SPI::transfer(%p, %p, %d)\n", txbuf, rxbuf, count); uint8_t *txbuff = reinterpret_cast(txbuf); -- 2.54.0 From b74d90141f563d04eab78abcdac79e152081f019 Mon Sep 17 00:00:00 2001 From: ladyada Date: Wed, 26 May 2021 17:53:31 -0400 Subject: [PATCH 8/9] woops ssizet != sizet! --- libraries/SPI/SPI.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/SPI/SPI.cpp b/libraries/SPI/SPI.cpp index 44dc0bb4..79c36755 100644 --- a/libraries/SPI/SPI.cpp +++ b/libraries/SPI/SPI.cpp @@ -159,7 +159,7 @@ void SPIClassRP2040::transfer(void *txbuf, void *rxbuf, size_t count) { } // If its LSB this isn't nearly as fun, we'll just let transfer(x) do it :( - for (ssize_t i = 0; i < count; i++) { + for (size_t i = 0; i < count; i++) { *rxbuff = transfer(*txbuff); *rxbuff = (_spis.getBitOrder() == MSBFIRST) ? *rxbuff : reverseByte(*rxbuff); txbuff++; -- 2.54.0 From 0994485ace00656bcb2acab19363943c83374571 Mon Sep 17 00:00:00 2001 From: lady ada Date: Sun, 6 Jun 2021 14:09:33 -0400 Subject: [PATCH 9/9] a nice day for a new board definition! this is a macropad with 12 keys, oled and rotary encoder --- boards.txt | 292 ++++++++++++++++++ tools/makeboards.py | 1 + variants/adafruit_macropad2040/pins_arduino.h | 52 ++++ 3 files changed, 345 insertions(+) create mode 100644 variants/adafruit_macropad2040/pins_arduino.h diff --git a/boards.txt b/boards.txt index 1014c5cd..4693e2d3 100644 --- a/boards.txt +++ b/boards.txt @@ -1686,6 +1686,298 @@ adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.picosdk.build.usbstack_flags= adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" +# ----------------------------------- +# Adafruit MacroPad RP2040 +# ----------------------------------- +adafruit_macropad2040.name=Adafruit MacroPad RP2040 +adafruit_macropad2040.vid.0=0x239a +adafruit_macropad2040.pid.0=0x8107 +adafruit_macropad2040.build.usbpid=-DSERIALUSB_PID=0x8107 +adafruit_macropad2040.build.board=ADAFRUIT_MACROPAD_RP2040 +adafruit_macropad2040.build.mcu=cortex-m0plus +adafruit_macropad2040.build.variant=adafruit_macropad2040 +adafruit_macropad2040.upload.tool=uf2conv +adafruit_macropad2040.upload.maximum_size=8388608 +adafruit_macropad2040.upload.maximum_data_size=262144 +adafruit_macropad2040.upload.wait_for_upload_port=true +adafruit_macropad2040.upload.erase_cmd= +adafruit_macropad2040.serial.disableDTR=false +adafruit_macropad2040.serial.disableRTS=false +adafruit_macropad2040.build.f_cpu=125000000 +adafruit_macropad2040.build.led= +adafruit_macropad2040.build.core=rp2040 +adafruit_macropad2040.build.mcu=rp2040 +adafruit_macropad2040.build.ldscript=memmap_default.ld +adafruit_macropad2040.build.boot2=boot2_w25q080_2_padded_checksum +adafruit_macropad2040.build.vid=0x239a +adafruit_macropad2040.build.pid=0x8107 +adafruit_macropad2040.build.usb_manufacturer="Adafruit" +adafruit_macropad2040.build.usb_product="MacroPad RP2040" +adafruit_macropad2040.menu.flash.8388608_0=8MB (no FS) +adafruit_macropad2040.menu.flash.8388608_0.upload.maximum_size=8384512 +adafruit_macropad2040.menu.flash.8388608_0.build.flash_length=8384512 +adafruit_macropad2040.menu.flash.8388608_0.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_0.build.fs_start=276819968 +adafruit_macropad2040.menu.flash.8388608_0.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB) +adafruit_macropad2040.menu.flash.8388608_65536.upload.maximum_size=8318976 +adafruit_macropad2040.menu.flash.8388608_65536.build.flash_length=8318976 +adafruit_macropad2040.menu.flash.8388608_65536.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_65536.build.fs_start=276754432 +adafruit_macropad2040.menu.flash.8388608_65536.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB) +adafruit_macropad2040.menu.flash.8388608_131072.upload.maximum_size=8253440 +adafruit_macropad2040.menu.flash.8388608_131072.build.flash_length=8253440 +adafruit_macropad2040.menu.flash.8388608_131072.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_131072.build.fs_start=276688896 +adafruit_macropad2040.menu.flash.8388608_131072.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB) +adafruit_macropad2040.menu.flash.8388608_262144.upload.maximum_size=8122368 +adafruit_macropad2040.menu.flash.8388608_262144.build.flash_length=8122368 +adafruit_macropad2040.menu.flash.8388608_262144.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_262144.build.fs_start=276557824 +adafruit_macropad2040.menu.flash.8388608_262144.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB) +adafruit_macropad2040.menu.flash.8388608_524288.upload.maximum_size=7860224 +adafruit_macropad2040.menu.flash.8388608_524288.build.flash_length=7860224 +adafruit_macropad2040.menu.flash.8388608_524288.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_524288.build.fs_start=276295680 +adafruit_macropad2040.menu.flash.8388608_524288.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB) +adafruit_macropad2040.menu.flash.8388608_1048576.upload.maximum_size=7335936 +adafruit_macropad2040.menu.flash.8388608_1048576.build.flash_length=7335936 +adafruit_macropad2040.menu.flash.8388608_1048576.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_1048576.build.fs_start=275771392 +adafruit_macropad2040.menu.flash.8388608_1048576.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB) +adafruit_macropad2040.menu.flash.8388608_2097152.upload.maximum_size=6287360 +adafruit_macropad2040.menu.flash.8388608_2097152.build.flash_length=6287360 +adafruit_macropad2040.menu.flash.8388608_2097152.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_2097152.build.fs_start=274722816 +adafruit_macropad2040.menu.flash.8388608_2097152.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB) +adafruit_macropad2040.menu.flash.8388608_3145728.upload.maximum_size=5238784 +adafruit_macropad2040.menu.flash.8388608_3145728.build.flash_length=5238784 +adafruit_macropad2040.menu.flash.8388608_3145728.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_3145728.build.fs_start=273674240 +adafruit_macropad2040.menu.flash.8388608_3145728.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB) +adafruit_macropad2040.menu.flash.8388608_4194304.upload.maximum_size=4190208 +adafruit_macropad2040.menu.flash.8388608_4194304.build.flash_length=4190208 +adafruit_macropad2040.menu.flash.8388608_4194304.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_4194304.build.fs_start=272625664 +adafruit_macropad2040.menu.flash.8388608_4194304.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB) +adafruit_macropad2040.menu.flash.8388608_5242880.upload.maximum_size=3141632 +adafruit_macropad2040.menu.flash.8388608_5242880.build.flash_length=3141632 +adafruit_macropad2040.menu.flash.8388608_5242880.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_5242880.build.fs_start=271577088 +adafruit_macropad2040.menu.flash.8388608_5242880.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB) +adafruit_macropad2040.menu.flash.8388608_6291456.upload.maximum_size=2093056 +adafruit_macropad2040.menu.flash.8388608_6291456.build.flash_length=2093056 +adafruit_macropad2040.menu.flash.8388608_6291456.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_6291456.build.fs_start=270528512 +adafruit_macropad2040.menu.flash.8388608_6291456.build.fs_end=276819968 +adafruit_macropad2040.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB) +adafruit_macropad2040.menu.flash.8388608_7340032.upload.maximum_size=1044480 +adafruit_macropad2040.menu.flash.8388608_7340032.build.flash_length=1044480 +adafruit_macropad2040.menu.flash.8388608_7340032.build.eeprom_start=276819968 +adafruit_macropad2040.menu.flash.8388608_7340032.build.fs_start=269479936 +adafruit_macropad2040.menu.flash.8388608_7340032.build.fs_end=276819968 +adafruit_macropad2040.menu.freq.125=125 MHz +adafruit_macropad2040.menu.freq.125.build.f_cpu=125000000L +adafruit_macropad2040.menu.freq.50=50 MHz +adafruit_macropad2040.menu.freq.50.build.f_cpu=50000000L +adafruit_macropad2040.menu.freq.100=100 MHz +adafruit_macropad2040.menu.freq.100.build.f_cpu=100000000L +adafruit_macropad2040.menu.freq.133=133 MHz +adafruit_macropad2040.menu.freq.133.build.f_cpu=133000000L +adafruit_macropad2040.menu.freq.150=150 MHz (Overclock) +adafruit_macropad2040.menu.freq.150.build.f_cpu=150000000L +adafruit_macropad2040.menu.freq.175=175 MHz (Overclock) +adafruit_macropad2040.menu.freq.175.build.f_cpu=175000000L +adafruit_macropad2040.menu.freq.200=200 MHz (Overclock) +adafruit_macropad2040.menu.freq.200.build.f_cpu=200000000L +adafruit_macropad2040.menu.freq.225=225 MHz (Overclock) +adafruit_macropad2040.menu.freq.225.build.f_cpu=225000000L +adafruit_macropad2040.menu.freq.250=250 MHz (Overclock) +adafruit_macropad2040.menu.freq.250.build.f_cpu=250000000L +adafruit_macropad2040.menu.freq.275=275 MHz (Overclock) +adafruit_macropad2040.menu.freq.275.build.f_cpu=275000000L +adafruit_macropad2040.menu.freq.300=300 MHz (Overclock) +adafruit_macropad2040.menu.freq.300.build.f_cpu=300000000L +adafruit_macropad2040.menu.dbgport.Disabled=Disabled +adafruit_macropad2040.menu.dbgport.Disabled.build.debug_port= +adafruit_macropad2040.menu.dbgport.Serial=Serial +adafruit_macropad2040.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial +adafruit_macropad2040.menu.dbgport.Serial1=Serial1 +adafruit_macropad2040.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1 +adafruit_macropad2040.menu.dbgport.Serial2=Serial2 +adafruit_macropad2040.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2 +adafruit_macropad2040.menu.dbglvl.None=None +adafruit_macropad2040.menu.dbglvl.None.build.debug_level= +adafruit_macropad2040.menu.dbglvl.Core=Core +adafruit_macropad2040.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE +adafruit_macropad2040.menu.dbglvl.SPI=SPI +adafruit_macropad2040.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI +adafruit_macropad2040.menu.dbglvl.Wire=Wire +adafruit_macropad2040.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE +adafruit_macropad2040.menu.dbglvl.All=All +adafruit_macropad2040.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE +adafruit_macropad2040.menu.dbglvl.NDEBUG=NDEBUG +adafruit_macropad2040.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG +adafruit_macropad2040.menu.usbstack.picosdk=Pico SDK +adafruit_macropad2040.menu.usbstack.picosdk.build.usbstack_flags= +adafruit_macropad2040.menu.usbstack.tinyusb=Adafruit TinyUSB +adafruit_macropad2040.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" + +# ----------------------------------- +# Adafruit MacroPad RP2040 (Picoprobe) +# ----------------------------------- +adafruit_macropad2040picoprobe.name=Adafruit MacroPad RP2040 (Picoprobe) +adafruit_macropad2040picoprobe.vid.0=0x239a +adafruit_macropad2040picoprobe.pid.0=0x0004 +adafruit_macropad2040picoprobe.build.usbpid=-DSERIALUSB_PID=0x8107 +adafruit_macropad2040picoprobe.build.board=ADAFRUIT_MACROPAD_RP2040 +adafruit_macropad2040picoprobe.build.mcu=cortex-m0plus +adafruit_macropad2040picoprobe.build.variant=adafruit_macropad2040 +adafruit_macropad2040picoprobe.upload.tool=picoprobe +adafruit_macropad2040picoprobe.upload.maximum_size=8388608 +adafruit_macropad2040picoprobe.upload.maximum_data_size=262144 +adafruit_macropad2040picoprobe.upload.wait_for_upload_port=true +adafruit_macropad2040picoprobe.upload.erase_cmd= +adafruit_macropad2040picoprobe.serial.disableDTR=false +adafruit_macropad2040picoprobe.serial.disableRTS=false +adafruit_macropad2040picoprobe.build.f_cpu=125000000 +adafruit_macropad2040picoprobe.build.led= +adafruit_macropad2040picoprobe.build.core=rp2040 +adafruit_macropad2040picoprobe.build.mcu=rp2040 +adafruit_macropad2040picoprobe.build.ldscript=memmap_default.ld +adafruit_macropad2040picoprobe.build.boot2=boot2_w25q080_2_padded_checksum +adafruit_macropad2040picoprobe.build.vid=0x239a +adafruit_macropad2040picoprobe.build.pid=0x8107 +adafruit_macropad2040picoprobe.build.usb_manufacturer="Adafruit" +adafruit_macropad2040picoprobe.build.usb_product="MacroPad RP2040 (Picoprobe)" +adafruit_macropad2040picoprobe.menu.flash.8388608_0=8MB (no FS) +adafruit_macropad2040picoprobe.menu.flash.8388608_0.upload.maximum_size=8384512 +adafruit_macropad2040picoprobe.menu.flash.8388608_0.build.flash_length=8384512 +adafruit_macropad2040picoprobe.menu.flash.8388608_0.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_0.build.fs_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_0.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB) +adafruit_macropad2040picoprobe.menu.flash.8388608_65536.upload.maximum_size=8318976 +adafruit_macropad2040picoprobe.menu.flash.8388608_65536.build.flash_length=8318976 +adafruit_macropad2040picoprobe.menu.flash.8388608_65536.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_65536.build.fs_start=276754432 +adafruit_macropad2040picoprobe.menu.flash.8388608_65536.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB) +adafruit_macropad2040picoprobe.menu.flash.8388608_131072.upload.maximum_size=8253440 +adafruit_macropad2040picoprobe.menu.flash.8388608_131072.build.flash_length=8253440 +adafruit_macropad2040picoprobe.menu.flash.8388608_131072.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_131072.build.fs_start=276688896 +adafruit_macropad2040picoprobe.menu.flash.8388608_131072.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB) +adafruit_macropad2040picoprobe.menu.flash.8388608_262144.upload.maximum_size=8122368 +adafruit_macropad2040picoprobe.menu.flash.8388608_262144.build.flash_length=8122368 +adafruit_macropad2040picoprobe.menu.flash.8388608_262144.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_262144.build.fs_start=276557824 +adafruit_macropad2040picoprobe.menu.flash.8388608_262144.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB) +adafruit_macropad2040picoprobe.menu.flash.8388608_524288.upload.maximum_size=7860224 +adafruit_macropad2040picoprobe.menu.flash.8388608_524288.build.flash_length=7860224 +adafruit_macropad2040picoprobe.menu.flash.8388608_524288.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_524288.build.fs_start=276295680 +adafruit_macropad2040picoprobe.menu.flash.8388608_524288.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB) +adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.upload.maximum_size=7335936 +adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.build.flash_length=7335936 +adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.build.fs_start=275771392 +adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB) +adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.upload.maximum_size=6287360 +adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.build.flash_length=6287360 +adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.build.fs_start=274722816 +adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB) +adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.upload.maximum_size=5238784 +adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.build.flash_length=5238784 +adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.build.fs_start=273674240 +adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB) +adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.upload.maximum_size=4190208 +adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.build.flash_length=4190208 +adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.build.fs_start=272625664 +adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB) +adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.upload.maximum_size=3141632 +adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.build.flash_length=3141632 +adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.build.fs_start=271577088 +adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB) +adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.upload.maximum_size=2093056 +adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.build.flash_length=2093056 +adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.build.fs_start=270528512 +adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB) +adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.upload.maximum_size=1044480 +adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.build.flash_length=1044480 +adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.build.eeprom_start=276819968 +adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.build.fs_start=269479936 +adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.build.fs_end=276819968 +adafruit_macropad2040picoprobe.menu.freq.125=125 MHz +adafruit_macropad2040picoprobe.menu.freq.125.build.f_cpu=125000000L +adafruit_macropad2040picoprobe.menu.freq.50=50 MHz +adafruit_macropad2040picoprobe.menu.freq.50.build.f_cpu=50000000L +adafruit_macropad2040picoprobe.menu.freq.100=100 MHz +adafruit_macropad2040picoprobe.menu.freq.100.build.f_cpu=100000000L +adafruit_macropad2040picoprobe.menu.freq.133=133 MHz +adafruit_macropad2040picoprobe.menu.freq.133.build.f_cpu=133000000L +adafruit_macropad2040picoprobe.menu.freq.150=150 MHz (Overclock) +adafruit_macropad2040picoprobe.menu.freq.150.build.f_cpu=150000000L +adafruit_macropad2040picoprobe.menu.freq.175=175 MHz (Overclock) +adafruit_macropad2040picoprobe.menu.freq.175.build.f_cpu=175000000L +adafruit_macropad2040picoprobe.menu.freq.200=200 MHz (Overclock) +adafruit_macropad2040picoprobe.menu.freq.200.build.f_cpu=200000000L +adafruit_macropad2040picoprobe.menu.freq.225=225 MHz (Overclock) +adafruit_macropad2040picoprobe.menu.freq.225.build.f_cpu=225000000L +adafruit_macropad2040picoprobe.menu.freq.250=250 MHz (Overclock) +adafruit_macropad2040picoprobe.menu.freq.250.build.f_cpu=250000000L +adafruit_macropad2040picoprobe.menu.freq.275=275 MHz (Overclock) +adafruit_macropad2040picoprobe.menu.freq.275.build.f_cpu=275000000L +adafruit_macropad2040picoprobe.menu.freq.300=300 MHz (Overclock) +adafruit_macropad2040picoprobe.menu.freq.300.build.f_cpu=300000000L +adafruit_macropad2040picoprobe.menu.dbgport.Disabled=Disabled +adafruit_macropad2040picoprobe.menu.dbgport.Disabled.build.debug_port= +adafruit_macropad2040picoprobe.menu.dbgport.Serial=Serial +adafruit_macropad2040picoprobe.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial +adafruit_macropad2040picoprobe.menu.dbgport.Serial1=Serial1 +adafruit_macropad2040picoprobe.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1 +adafruit_macropad2040picoprobe.menu.dbgport.Serial2=Serial2 +adafruit_macropad2040picoprobe.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2 +adafruit_macropad2040picoprobe.menu.dbglvl.None=None +adafruit_macropad2040picoprobe.menu.dbglvl.None.build.debug_level= +adafruit_macropad2040picoprobe.menu.dbglvl.Core=Core +adafruit_macropad2040picoprobe.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE +adafruit_macropad2040picoprobe.menu.dbglvl.SPI=SPI +adafruit_macropad2040picoprobe.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI +adafruit_macropad2040picoprobe.menu.dbglvl.Wire=Wire +adafruit_macropad2040picoprobe.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE +adafruit_macropad2040picoprobe.menu.dbglvl.All=All +adafruit_macropad2040picoprobe.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE +adafruit_macropad2040picoprobe.menu.dbglvl.NDEBUG=NDEBUG +adafruit_macropad2040picoprobe.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG +adafruit_macropad2040picoprobe.menu.usbstack.picosdk=Pico SDK +adafruit_macropad2040picoprobe.menu.usbstack.picosdk.build.usbstack_flags= +adafruit_macropad2040picoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB +adafruit_macropad2040picoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" + # ----------------------------------- # Generic RP2040 # ----------------------------------- diff --git a/tools/makeboards.py b/tools/makeboards.py index 20fd0b21..ad5465b3 100755 --- a/tools/makeboards.py +++ b/tools/makeboards.py @@ -125,5 +125,6 @@ MakeBoard("adafruit_itsybitsy", "Adafruit", "ItsyBitsy RP2040", "0x239a", "0x80f MakeBoard("adafruit_qtpy", "Adafruit", "QT Py RP2040", "0x239a", "0x80f7", "ADAFRUIT_QTPY_RP2040", 8, "boot2_generic_03h_4_padded_checksum") MakeBoard("adafruit_stemmafriend", "Adafruit", "STEMMA Friend RP2040", "0x239a", "0x80e3", "ADAFRUIT_STEMMAFRIEND_RP2040", 8, "boot2_w25q080_2_padded_checksum") MakeBoard("adafruit_trinkeyrp2040qt", "Adafruit", "Trinkey RP2040 QT", "0x239a", "0x8109", "ADAFRUIT_TRINKEYQT_RP2040", 8, "boot2_w25q080_2_padded_checksum") +MakeBoard("adafruit_macropad2040", "Adafruit", "MacroPad RP2040", "0x239a", "0x8107", "ADAFRUIT_MACROPAD_RP2040", 8, "boot2_w25q080_2_padded_checksum") MakeBoard("generic", "Generic", "RP2040", "0x2e8a", "0xf00a", "GENERIC_RP2040", 16, "boot2_generic_03h_4_padded_checksum") diff --git a/variants/adafruit_macropad2040/pins_arduino.h b/variants/adafruit_macropad2040/pins_arduino.h new file mode 100644 index 00000000..036f8927 --- /dev/null +++ b/variants/adafruit_macropad2040/pins_arduino.h @@ -0,0 +1,52 @@ +#pragma once + + +// LEDs +#define PIN_LED (13u) + +// Extra hardware! +#define PIN_SWITCH 0 +#define PIN_SPEAKER_ENABLE 14 +#define PIN_SPEAKER 16 +#define PIN_ROTB 17 +#define PIN_ROTA 18 +#define OLED_CS 22 +#define OLED_RST 23 +#define OLED_DC 24 + +#define PIN_NEOPIXEL 19 +#define NUM_NEOPIXEL 12 + +// Not pinned out +#define PIN_SERIAL1_TX (31u) +#define PIN_SERIAL1_RX (31u) + +// Not pinned out +#define PIN_SERIAL2_TX (31u) +#define PIN_SERIAL2_RX (31u) + +// SPI +#define PIN_SPI1_MISO (28u) +#define PIN_SPI1_MOSI (27u) +#define PIN_SPI1_SCK (26u) +#define PIN_SPI1_SS (31u) // not pinned out + +// Not pinned out +#define PIN_SPI0_MISO (31u) +#define PIN_SPI0_MOSI (31u) +#define PIN_SPI0_SCK (31u) +#define PIN_SPI0_SS (31u) + +// Wire +#define PIN_WIRE0_SDA (20u) +#define PIN_WIRE0_SCL (21u) + +// Not pinned out +#define PIN_WIRE1_SDA (31u) +#define PIN_WIRE1_SCL (31u) + +#define SERIAL_HOWMANY (1u) +#define SPI_HOWMANY (1u) +#define WIRE_HOWMANY (1u) + +#include "../generic/common.h" -- 2.54.0