Compare commits

...
15 Commits
Author SHA1 Message Date
Earle F. Philhower, III 12f3505eea Update the platform release version 2022-01-05 12:16:21 -08:00
Earle F. Philhower, III 464ee85884 Make Wire buffer default to 256 for MBED compatibility (#412)
Fixes #411
2022-01-05 12:14:34 -08:00
Earle F. Philhower, III 87d745d5dc Add missing board names 2022-01-05 07:45:09 -08:00
Earle F. Philhower, III 576f8941d6 Add setFIFOSize to UART Serial ports (#410)
Allow setting the size of the receive buffer by the application using a
call to Serial1/2.setFIFOSize(xxx) before the begin() call.
2022-01-04 19:02:38 -08:00
Earle F. Philhower, III 039cbcf2cf Update package.json 2022-01-04 18:53:31 -08:00
arturo182 f91c4b3b9d Add the RP2040 Stamp board (#407) 2022-01-03 11:38:05 -08:00
Earle F. Philhower, III 83b9486985 Allow setting the SerialPIO FIFO depth in the constructor (#405)
Defaults to 32 bytes, like the HW Serial ports, but can be set to
any desired value when instantiated.
2022-01-02 11:31:06 -08:00
Earle F. Philhower, III dc54eeb8d0 Update package.json 2022-01-02 09:45:44 -08:00
Earle F. Philhower, III 3a2a7f8cf1 Fix hang on Serial overflow, PIOSerial stop bit handling (#401)
When the Serial software FIFOs overeflowed, the IRQ handler would not
read any more data from the hardware FIFOs.  This would cause the
IRQ handler to be continually called as soon as it exited since the
HW FIFOS were not empty.

Now always read every available HW FIFO entry and throw out any that
don't fit in the SW FIFO.

Also fix a too long by half stop bit timing in the PIOSerial receiver.
2022-01-02 05:46:33 -08:00
Khoi Hoang 52a22e5185 Fix Nano_RP2040_Connect pinout issue (#400)
Fix issues with [WiFiNINA](https://github.com/arduino-libraries/WiFiNINA) and [WiFiNINA_Generic](https://github.com/khoih-prog/WiFiNINA_Generic) libraries

Fixes #373
Fixes #375 
Fixes #376
2022-01-01 13:05:25 -08:00
Earle F. Philhower, III cae8c70e51 Add the PIO UARTs to the list 2021-12-30 16:02:15 -08:00
Earle F. Philhower, III 513bd81810 Add SDA/SCL variables like other cores export (#398)
Fixes #368.  Thanks @bperrybap!
2021-12-30 15:57:13 -08:00
Earle F. Philhower, III 891f653ead Update package.json 2021-12-30 09:56:59 -08:00
Ken Piper 5b270aab61 Fix A0-A3 pin definitions for Adafruit QT Py RP2040 (#397) 2021-12-30 09:56:38 -08:00
Maximilian Gerhardt 6591da9acf Fix PlatformIO build (#395)
Defines USBD_MAX_POWER_MA as a static 250mA, which is correct for all the boards supported in platform-raspberrypi (aka, RaspberryPi Pico and Nano RP2040 Connect)
2021-12-29 09:19:47 -08:00
19 changed files with 655 additions and 33 deletions
+2
View File
@@ -26,6 +26,7 @@ See https://arduino-pico.readthedocs.io/en/latest/ along with the examples for m
* Invector Labs Challenger RP2040 LTE
* Invector Labs RPICO32
* Melopero Shake RP2040
* Solder Party RP2040 Stamp
* SparkFun ProMicro RP2040
* uPesy RP2040 DevKit
* WIZnet W5100S-EVB-Pico
@@ -146,6 +147,7 @@ The RP2040 PIO state machines (SMs) are used to generate jitter-free:
* Servos
* Tones
* I2S Output
* Software UARTs (Serial ports)
# Tutorials from Across the Web
Here are some links to coverage and additional tutorials for using `arduino-pico`
+487
View File
@@ -8862,6 +8862,493 @@ melopero_shake_rp2040picodebug.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
melopero_shake_rp2040picodebug.menu.usbstack.nousb=No USB
melopero_shake_rp2040picodebug.menu.usbstack.nousb.build.usbstack_flags="-DNO_USB -DDISABLE_USB_SERIAL -I{runtime.platform.path}/tools/libpico"
# -----------------------------------
# Solder Party RP2040 Stamp
# -----------------------------------
solderparty_rp2040_stamp.name=Solder Party RP2040 Stamp
solderparty_rp2040_stamp.vid.0=0x1209
solderparty_rp2040_stamp.pid.0=0xa182
solderparty_rp2040_stamp.build.usbpid=-DSERIALUSB_PID=0xa182
solderparty_rp2040_stamp.build.usbpwr=-DUSBD_MAX_POWER_MA=500
solderparty_rp2040_stamp.build.board=SOLDERPARTY_RP2040_STAMP
solderparty_rp2040_stamp.build.mcu=cortex-m0plus
solderparty_rp2040_stamp.build.variant=solderparty_rp2040_stamp
solderparty_rp2040_stamp.upload.tool=uf2conv
solderparty_rp2040_stamp.upload.maximum_size=8388608
solderparty_rp2040_stamp.upload.maximum_data_size=262144
solderparty_rp2040_stamp.upload.wait_for_upload_port=true
solderparty_rp2040_stamp.upload.erase_cmd=
solderparty_rp2040_stamp.serial.disableDTR=false
solderparty_rp2040_stamp.serial.disableRTS=false
solderparty_rp2040_stamp.build.f_cpu=125000000
solderparty_rp2040_stamp.build.led=
solderparty_rp2040_stamp.build.core=rp2040
solderparty_rp2040_stamp.build.ldscript=memmap_default.ld
solderparty_rp2040_stamp.build.ram_length=256k
solderparty_rp2040_stamp.build.boot2=boot2_generic_03h_4_padded_checksum
solderparty_rp2040_stamp.build.vid=0x1209
solderparty_rp2040_stamp.build.pid=0xa182
solderparty_rp2040_stamp.build.usb_manufacturer="Solder Party"
solderparty_rp2040_stamp.build.usb_product="RP2040 Stamp"
solderparty_rp2040_stamp.menu.flash.8388608_0=8MB (no FS)
solderparty_rp2040_stamp.menu.flash.8388608_0.upload.maximum_size=8384512
solderparty_rp2040_stamp.menu.flash.8388608_0.build.flash_length=8384512
solderparty_rp2040_stamp.menu.flash.8388608_0.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_0.build.fs_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_0.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB)
solderparty_rp2040_stamp.menu.flash.8388608_65536.upload.maximum_size=8318976
solderparty_rp2040_stamp.menu.flash.8388608_65536.build.flash_length=8318976
solderparty_rp2040_stamp.menu.flash.8388608_65536.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_65536.build.fs_start=276754432
solderparty_rp2040_stamp.menu.flash.8388608_65536.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB)
solderparty_rp2040_stamp.menu.flash.8388608_131072.upload.maximum_size=8253440
solderparty_rp2040_stamp.menu.flash.8388608_131072.build.flash_length=8253440
solderparty_rp2040_stamp.menu.flash.8388608_131072.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_131072.build.fs_start=276688896
solderparty_rp2040_stamp.menu.flash.8388608_131072.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB)
solderparty_rp2040_stamp.menu.flash.8388608_262144.upload.maximum_size=8122368
solderparty_rp2040_stamp.menu.flash.8388608_262144.build.flash_length=8122368
solderparty_rp2040_stamp.menu.flash.8388608_262144.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_262144.build.fs_start=276557824
solderparty_rp2040_stamp.menu.flash.8388608_262144.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB)
solderparty_rp2040_stamp.menu.flash.8388608_524288.upload.maximum_size=7860224
solderparty_rp2040_stamp.menu.flash.8388608_524288.build.flash_length=7860224
solderparty_rp2040_stamp.menu.flash.8388608_524288.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_524288.build.fs_start=276295680
solderparty_rp2040_stamp.menu.flash.8388608_524288.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB)
solderparty_rp2040_stamp.menu.flash.8388608_1048576.upload.maximum_size=7335936
solderparty_rp2040_stamp.menu.flash.8388608_1048576.build.flash_length=7335936
solderparty_rp2040_stamp.menu.flash.8388608_1048576.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_1048576.build.fs_start=275771392
solderparty_rp2040_stamp.menu.flash.8388608_1048576.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB)
solderparty_rp2040_stamp.menu.flash.8388608_2097152.upload.maximum_size=6287360
solderparty_rp2040_stamp.menu.flash.8388608_2097152.build.flash_length=6287360
solderparty_rp2040_stamp.menu.flash.8388608_2097152.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_2097152.build.fs_start=274722816
solderparty_rp2040_stamp.menu.flash.8388608_2097152.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB)
solderparty_rp2040_stamp.menu.flash.8388608_3145728.upload.maximum_size=5238784
solderparty_rp2040_stamp.menu.flash.8388608_3145728.build.flash_length=5238784
solderparty_rp2040_stamp.menu.flash.8388608_3145728.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_3145728.build.fs_start=273674240
solderparty_rp2040_stamp.menu.flash.8388608_3145728.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB)
solderparty_rp2040_stamp.menu.flash.8388608_4194304.upload.maximum_size=4190208
solderparty_rp2040_stamp.menu.flash.8388608_4194304.build.flash_length=4190208
solderparty_rp2040_stamp.menu.flash.8388608_4194304.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_4194304.build.fs_start=272625664
solderparty_rp2040_stamp.menu.flash.8388608_4194304.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB)
solderparty_rp2040_stamp.menu.flash.8388608_5242880.upload.maximum_size=3141632
solderparty_rp2040_stamp.menu.flash.8388608_5242880.build.flash_length=3141632
solderparty_rp2040_stamp.menu.flash.8388608_5242880.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_5242880.build.fs_start=271577088
solderparty_rp2040_stamp.menu.flash.8388608_5242880.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB)
solderparty_rp2040_stamp.menu.flash.8388608_6291456.upload.maximum_size=2093056
solderparty_rp2040_stamp.menu.flash.8388608_6291456.build.flash_length=2093056
solderparty_rp2040_stamp.menu.flash.8388608_6291456.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_6291456.build.fs_start=270528512
solderparty_rp2040_stamp.menu.flash.8388608_6291456.build.fs_end=276819968
solderparty_rp2040_stamp.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB)
solderparty_rp2040_stamp.menu.flash.8388608_7340032.upload.maximum_size=1044480
solderparty_rp2040_stamp.menu.flash.8388608_7340032.build.flash_length=1044480
solderparty_rp2040_stamp.menu.flash.8388608_7340032.build.eeprom_start=276819968
solderparty_rp2040_stamp.menu.flash.8388608_7340032.build.fs_start=269479936
solderparty_rp2040_stamp.menu.flash.8388608_7340032.build.fs_end=276819968
solderparty_rp2040_stamp.menu.freq.125=125 MHz
solderparty_rp2040_stamp.menu.freq.125.build.f_cpu=125000000L
solderparty_rp2040_stamp.menu.freq.50=50 MHz
solderparty_rp2040_stamp.menu.freq.50.build.f_cpu=50000000L
solderparty_rp2040_stamp.menu.freq.100=100 MHz
solderparty_rp2040_stamp.menu.freq.100.build.f_cpu=100000000L
solderparty_rp2040_stamp.menu.freq.133=133 MHz
solderparty_rp2040_stamp.menu.freq.133.build.f_cpu=133000000L
solderparty_rp2040_stamp.menu.freq.150=150 MHz (Overclock)
solderparty_rp2040_stamp.menu.freq.150.build.f_cpu=150000000L
solderparty_rp2040_stamp.menu.freq.175=175 MHz (Overclock)
solderparty_rp2040_stamp.menu.freq.175.build.f_cpu=175000000L
solderparty_rp2040_stamp.menu.freq.200=200 MHz (Overclock)
solderparty_rp2040_stamp.menu.freq.200.build.f_cpu=200000000L
solderparty_rp2040_stamp.menu.freq.225=225 MHz (Overclock)
solderparty_rp2040_stamp.menu.freq.225.build.f_cpu=225000000L
solderparty_rp2040_stamp.menu.freq.250=250 MHz (Overclock)
solderparty_rp2040_stamp.menu.freq.250.build.f_cpu=250000000L
solderparty_rp2040_stamp.menu.freq.275=275 MHz (Overclock)
solderparty_rp2040_stamp.menu.freq.275.build.f_cpu=275000000L
solderparty_rp2040_stamp.menu.freq.300=300 MHz (Overclock)
solderparty_rp2040_stamp.menu.freq.300.build.f_cpu=300000000L
solderparty_rp2040_stamp.menu.opt.Small=Small (-Os) (standard)
solderparty_rp2040_stamp.menu.opt.Small.build.flags.optimize=-Os
solderparty_rp2040_stamp.menu.opt.Optimize=Optimize (-O)
solderparty_rp2040_stamp.menu.opt.Optimize.build.flags.optimize=-O
solderparty_rp2040_stamp.menu.opt.Optimize2=Optimize More (-O2)
solderparty_rp2040_stamp.menu.opt.Optimize2.build.flags.optimize=-O2
solderparty_rp2040_stamp.menu.opt.Optimize3=Optimize Even More (-O3)
solderparty_rp2040_stamp.menu.opt.Optimize3.build.flags.optimize=-O3
solderparty_rp2040_stamp.menu.opt.Fast=Fast (-Ofast) (maybe slower)
solderparty_rp2040_stamp.menu.opt.Fast.build.flags.optimize=-Ofast
solderparty_rp2040_stamp.menu.opt.Debug=Debug (-Og)
solderparty_rp2040_stamp.menu.opt.Debug.build.flags.optimize=-Og
solderparty_rp2040_stamp.menu.rtti.Disabled=Disabled
solderparty_rp2040_stamp.menu.rtti.Disabled.build.flags.rtti=-fno-rtti
solderparty_rp2040_stamp.menu.rtti.Enabled=Enabled
solderparty_rp2040_stamp.menu.rtti.Enabled.build.flags.rtti=
solderparty_rp2040_stamp.menu.dbgport.Disabled=Disabled
solderparty_rp2040_stamp.menu.dbgport.Disabled.build.debug_port=
solderparty_rp2040_stamp.menu.dbgport.Serial=Serial
solderparty_rp2040_stamp.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial
solderparty_rp2040_stamp.menu.dbgport.Serial1=Serial1
solderparty_rp2040_stamp.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1
solderparty_rp2040_stamp.menu.dbgport.Serial2=Serial2
solderparty_rp2040_stamp.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2
solderparty_rp2040_stamp.menu.dbglvl.None=None
solderparty_rp2040_stamp.menu.dbglvl.None.build.debug_level=
solderparty_rp2040_stamp.menu.dbglvl.Core=Core
solderparty_rp2040_stamp.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE
solderparty_rp2040_stamp.menu.dbglvl.SPI=SPI
solderparty_rp2040_stamp.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI
solderparty_rp2040_stamp.menu.dbglvl.Wire=Wire
solderparty_rp2040_stamp.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE
solderparty_rp2040_stamp.menu.dbglvl.All=All
solderparty_rp2040_stamp.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE
solderparty_rp2040_stamp.menu.dbglvl.NDEBUG=NDEBUG
solderparty_rp2040_stamp.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
solderparty_rp2040_stamp.menu.usbstack.picosdk=Pico SDK
solderparty_rp2040_stamp.menu.usbstack.picosdk.build.usbstack_flags="-I{runtime.platform.path}/tools/libpico"
solderparty_rp2040_stamp.menu.usbstack.tinyusb=Adafruit TinyUSB
solderparty_rp2040_stamp.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino"
# -----------------------------------
# Solder Party RP2040 Stamp (Picoprobe)
# -----------------------------------
solderparty_rp2040_stamppicoprobe.name=Solder Party RP2040 Stamp (Picoprobe)
solderparty_rp2040_stamppicoprobe.vid.0=0x1209
solderparty_rp2040_stamppicoprobe.pid.0=0x0004
solderparty_rp2040_stamppicoprobe.build.usbpid=-DSERIALUSB_PID=0xa182
solderparty_rp2040_stamppicoprobe.build.usbpwr=-DUSBD_MAX_POWER_MA=500
solderparty_rp2040_stamppicoprobe.build.board=SOLDERPARTY_RP2040_STAMP
solderparty_rp2040_stamppicoprobe.build.mcu=cortex-m0plus
solderparty_rp2040_stamppicoprobe.build.variant=solderparty_rp2040_stamp
solderparty_rp2040_stamppicoprobe.upload.tool=picoprobe
solderparty_rp2040_stamppicoprobe.upload.maximum_size=8388608
solderparty_rp2040_stamppicoprobe.upload.maximum_data_size=262144
solderparty_rp2040_stamppicoprobe.upload.wait_for_upload_port=true
solderparty_rp2040_stamppicoprobe.upload.erase_cmd=
solderparty_rp2040_stamppicoprobe.serial.disableDTR=false
solderparty_rp2040_stamppicoprobe.serial.disableRTS=false
solderparty_rp2040_stamppicoprobe.build.f_cpu=125000000
solderparty_rp2040_stamppicoprobe.build.led=
solderparty_rp2040_stamppicoprobe.build.core=rp2040
solderparty_rp2040_stamppicoprobe.build.ldscript=memmap_default.ld
solderparty_rp2040_stamppicoprobe.build.ram_length=256k
solderparty_rp2040_stamppicoprobe.build.boot2=boot2_generic_03h_4_padded_checksum
solderparty_rp2040_stamppicoprobe.build.vid=0x1209
solderparty_rp2040_stamppicoprobe.build.pid=0xa182
solderparty_rp2040_stamppicoprobe.build.usb_manufacturer="Solder Party"
solderparty_rp2040_stamppicoprobe.build.usb_product="RP2040 Stamp (Picoprobe)"
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_0=8MB (no FS)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_0.upload.maximum_size=8384512
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_0.build.flash_length=8384512
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_0.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_0.build.fs_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_0.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_65536.upload.maximum_size=8318976
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_65536.build.flash_length=8318976
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_65536.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_65536.build.fs_start=276754432
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_65536.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_131072.upload.maximum_size=8253440
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_131072.build.flash_length=8253440
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_131072.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_131072.build.fs_start=276688896
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_131072.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_262144.upload.maximum_size=8122368
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_262144.build.flash_length=8122368
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_262144.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_262144.build.fs_start=276557824
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_262144.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_524288.upload.maximum_size=7860224
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_524288.build.flash_length=7860224
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_524288.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_524288.build.fs_start=276295680
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_524288.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_1048576.upload.maximum_size=7335936
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_1048576.build.flash_length=7335936
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_1048576.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_1048576.build.fs_start=275771392
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_1048576.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_2097152.upload.maximum_size=6287360
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_2097152.build.flash_length=6287360
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_2097152.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_2097152.build.fs_start=274722816
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_2097152.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_3145728.upload.maximum_size=5238784
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_3145728.build.flash_length=5238784
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_3145728.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_3145728.build.fs_start=273674240
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_3145728.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_4194304.upload.maximum_size=4190208
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_4194304.build.flash_length=4190208
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_4194304.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_4194304.build.fs_start=272625664
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_4194304.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_5242880.upload.maximum_size=3141632
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_5242880.build.flash_length=3141632
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_5242880.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_5242880.build.fs_start=271577088
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_5242880.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_6291456.upload.maximum_size=2093056
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_6291456.build.flash_length=2093056
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_6291456.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_6291456.build.fs_start=270528512
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_6291456.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB)
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_7340032.upload.maximum_size=1044480
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_7340032.build.flash_length=1044480
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_7340032.build.eeprom_start=276819968
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_7340032.build.fs_start=269479936
solderparty_rp2040_stamppicoprobe.menu.flash.8388608_7340032.build.fs_end=276819968
solderparty_rp2040_stamppicoprobe.menu.freq.125=125 MHz
solderparty_rp2040_stamppicoprobe.menu.freq.125.build.f_cpu=125000000L
solderparty_rp2040_stamppicoprobe.menu.freq.50=50 MHz
solderparty_rp2040_stamppicoprobe.menu.freq.50.build.f_cpu=50000000L
solderparty_rp2040_stamppicoprobe.menu.freq.100=100 MHz
solderparty_rp2040_stamppicoprobe.menu.freq.100.build.f_cpu=100000000L
solderparty_rp2040_stamppicoprobe.menu.freq.133=133 MHz
solderparty_rp2040_stamppicoprobe.menu.freq.133.build.f_cpu=133000000L
solderparty_rp2040_stamppicoprobe.menu.freq.150=150 MHz (Overclock)
solderparty_rp2040_stamppicoprobe.menu.freq.150.build.f_cpu=150000000L
solderparty_rp2040_stamppicoprobe.menu.freq.175=175 MHz (Overclock)
solderparty_rp2040_stamppicoprobe.menu.freq.175.build.f_cpu=175000000L
solderparty_rp2040_stamppicoprobe.menu.freq.200=200 MHz (Overclock)
solderparty_rp2040_stamppicoprobe.menu.freq.200.build.f_cpu=200000000L
solderparty_rp2040_stamppicoprobe.menu.freq.225=225 MHz (Overclock)
solderparty_rp2040_stamppicoprobe.menu.freq.225.build.f_cpu=225000000L
solderparty_rp2040_stamppicoprobe.menu.freq.250=250 MHz (Overclock)
solderparty_rp2040_stamppicoprobe.menu.freq.250.build.f_cpu=250000000L
solderparty_rp2040_stamppicoprobe.menu.freq.275=275 MHz (Overclock)
solderparty_rp2040_stamppicoprobe.menu.freq.275.build.f_cpu=275000000L
solderparty_rp2040_stamppicoprobe.menu.freq.300=300 MHz (Overclock)
solderparty_rp2040_stamppicoprobe.menu.freq.300.build.f_cpu=300000000L
solderparty_rp2040_stamppicoprobe.menu.opt.Small=Small (-Os) (standard)
solderparty_rp2040_stamppicoprobe.menu.opt.Small.build.flags.optimize=-Os
solderparty_rp2040_stamppicoprobe.menu.opt.Optimize=Optimize (-O)
solderparty_rp2040_stamppicoprobe.menu.opt.Optimize.build.flags.optimize=-O
solderparty_rp2040_stamppicoprobe.menu.opt.Optimize2=Optimize More (-O2)
solderparty_rp2040_stamppicoprobe.menu.opt.Optimize2.build.flags.optimize=-O2
solderparty_rp2040_stamppicoprobe.menu.opt.Optimize3=Optimize Even More (-O3)
solderparty_rp2040_stamppicoprobe.menu.opt.Optimize3.build.flags.optimize=-O3
solderparty_rp2040_stamppicoprobe.menu.opt.Fast=Fast (-Ofast) (maybe slower)
solderparty_rp2040_stamppicoprobe.menu.opt.Fast.build.flags.optimize=-Ofast
solderparty_rp2040_stamppicoprobe.menu.opt.Debug=Debug (-Og)
solderparty_rp2040_stamppicoprobe.menu.opt.Debug.build.flags.optimize=-Og
solderparty_rp2040_stamppicoprobe.menu.rtti.Disabled=Disabled
solderparty_rp2040_stamppicoprobe.menu.rtti.Disabled.build.flags.rtti=-fno-rtti
solderparty_rp2040_stamppicoprobe.menu.rtti.Enabled=Enabled
solderparty_rp2040_stamppicoprobe.menu.rtti.Enabled.build.flags.rtti=
solderparty_rp2040_stamppicoprobe.menu.dbgport.Disabled=Disabled
solderparty_rp2040_stamppicoprobe.menu.dbgport.Disabled.build.debug_port=
solderparty_rp2040_stamppicoprobe.menu.dbgport.Serial=Serial
solderparty_rp2040_stamppicoprobe.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial
solderparty_rp2040_stamppicoprobe.menu.dbgport.Serial1=Serial1
solderparty_rp2040_stamppicoprobe.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1
solderparty_rp2040_stamppicoprobe.menu.dbgport.Serial2=Serial2
solderparty_rp2040_stamppicoprobe.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2
solderparty_rp2040_stamppicoprobe.menu.dbglvl.None=None
solderparty_rp2040_stamppicoprobe.menu.dbglvl.None.build.debug_level=
solderparty_rp2040_stamppicoprobe.menu.dbglvl.Core=Core
solderparty_rp2040_stamppicoprobe.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE
solderparty_rp2040_stamppicoprobe.menu.dbglvl.SPI=SPI
solderparty_rp2040_stamppicoprobe.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI
solderparty_rp2040_stamppicoprobe.menu.dbglvl.Wire=Wire
solderparty_rp2040_stamppicoprobe.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE
solderparty_rp2040_stamppicoprobe.menu.dbglvl.All=All
solderparty_rp2040_stamppicoprobe.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE
solderparty_rp2040_stamppicoprobe.menu.dbglvl.NDEBUG=NDEBUG
solderparty_rp2040_stamppicoprobe.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
solderparty_rp2040_stamppicoprobe.menu.usbstack.picosdk=Pico SDK
solderparty_rp2040_stamppicoprobe.menu.usbstack.picosdk.build.usbstack_flags="-I{runtime.platform.path}/tools/libpico"
solderparty_rp2040_stamppicoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB
solderparty_rp2040_stamppicoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino"
# -----------------------------------
# Solder Party RP2040 Stamp (pico-debug)
# -----------------------------------
solderparty_rp2040_stamppicodebug.name=Solder Party RP2040 Stamp (pico-debug)
solderparty_rp2040_stamppicodebug.vid.0=0x1209
solderparty_rp2040_stamppicodebug.pid.0=0x2488
solderparty_rp2040_stamppicodebug.build.usbpid=-DSERIALUSB_PID=0xa182
solderparty_rp2040_stamppicodebug.build.usbpwr=-DUSBD_MAX_POWER_MA=500
solderparty_rp2040_stamppicodebug.build.board=SOLDERPARTY_RP2040_STAMP
solderparty_rp2040_stamppicodebug.build.mcu=cortex-m0plus
solderparty_rp2040_stamppicodebug.build.variant=solderparty_rp2040_stamp
solderparty_rp2040_stamppicodebug.upload.tool=picodebug
solderparty_rp2040_stamppicodebug.upload.maximum_size=8388608
solderparty_rp2040_stamppicodebug.upload.maximum_data_size=245760
solderparty_rp2040_stamppicodebug.upload.wait_for_upload_port=true
solderparty_rp2040_stamppicodebug.upload.erase_cmd=
solderparty_rp2040_stamppicodebug.serial.disableDTR=false
solderparty_rp2040_stamppicodebug.serial.disableRTS=false
solderparty_rp2040_stamppicodebug.build.f_cpu=125000000
solderparty_rp2040_stamppicodebug.build.led=
solderparty_rp2040_stamppicodebug.build.core=rp2040
solderparty_rp2040_stamppicodebug.build.ldscript=memmap_default.ld
solderparty_rp2040_stamppicodebug.build.ram_length=240k
solderparty_rp2040_stamppicodebug.build.boot2=boot2_generic_03h_4_padded_checksum
solderparty_rp2040_stamppicodebug.build.vid=0x1209
solderparty_rp2040_stamppicodebug.build.pid=0xa182
solderparty_rp2040_stamppicodebug.build.usb_manufacturer="Solder Party"
solderparty_rp2040_stamppicodebug.build.usb_product="RP2040 Stamp (pico-debug)"
solderparty_rp2040_stamppicodebug.menu.flash.8388608_0=8MB (no FS)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_0.upload.maximum_size=8384512
solderparty_rp2040_stamppicodebug.menu.flash.8388608_0.build.flash_length=8384512
solderparty_rp2040_stamppicodebug.menu.flash.8388608_0.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_0.build.fs_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_0.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_65536.upload.maximum_size=8318976
solderparty_rp2040_stamppicodebug.menu.flash.8388608_65536.build.flash_length=8318976
solderparty_rp2040_stamppicodebug.menu.flash.8388608_65536.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_65536.build.fs_start=276754432
solderparty_rp2040_stamppicodebug.menu.flash.8388608_65536.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_131072.upload.maximum_size=8253440
solderparty_rp2040_stamppicodebug.menu.flash.8388608_131072.build.flash_length=8253440
solderparty_rp2040_stamppicodebug.menu.flash.8388608_131072.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_131072.build.fs_start=276688896
solderparty_rp2040_stamppicodebug.menu.flash.8388608_131072.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_262144.upload.maximum_size=8122368
solderparty_rp2040_stamppicodebug.menu.flash.8388608_262144.build.flash_length=8122368
solderparty_rp2040_stamppicodebug.menu.flash.8388608_262144.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_262144.build.fs_start=276557824
solderparty_rp2040_stamppicodebug.menu.flash.8388608_262144.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_524288.upload.maximum_size=7860224
solderparty_rp2040_stamppicodebug.menu.flash.8388608_524288.build.flash_length=7860224
solderparty_rp2040_stamppicodebug.menu.flash.8388608_524288.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_524288.build.fs_start=276295680
solderparty_rp2040_stamppicodebug.menu.flash.8388608_524288.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_1048576.upload.maximum_size=7335936
solderparty_rp2040_stamppicodebug.menu.flash.8388608_1048576.build.flash_length=7335936
solderparty_rp2040_stamppicodebug.menu.flash.8388608_1048576.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_1048576.build.fs_start=275771392
solderparty_rp2040_stamppicodebug.menu.flash.8388608_1048576.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_2097152.upload.maximum_size=6287360
solderparty_rp2040_stamppicodebug.menu.flash.8388608_2097152.build.flash_length=6287360
solderparty_rp2040_stamppicodebug.menu.flash.8388608_2097152.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_2097152.build.fs_start=274722816
solderparty_rp2040_stamppicodebug.menu.flash.8388608_2097152.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_3145728.upload.maximum_size=5238784
solderparty_rp2040_stamppicodebug.menu.flash.8388608_3145728.build.flash_length=5238784
solderparty_rp2040_stamppicodebug.menu.flash.8388608_3145728.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_3145728.build.fs_start=273674240
solderparty_rp2040_stamppicodebug.menu.flash.8388608_3145728.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_4194304.upload.maximum_size=4190208
solderparty_rp2040_stamppicodebug.menu.flash.8388608_4194304.build.flash_length=4190208
solderparty_rp2040_stamppicodebug.menu.flash.8388608_4194304.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_4194304.build.fs_start=272625664
solderparty_rp2040_stamppicodebug.menu.flash.8388608_4194304.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_5242880.upload.maximum_size=3141632
solderparty_rp2040_stamppicodebug.menu.flash.8388608_5242880.build.flash_length=3141632
solderparty_rp2040_stamppicodebug.menu.flash.8388608_5242880.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_5242880.build.fs_start=271577088
solderparty_rp2040_stamppicodebug.menu.flash.8388608_5242880.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_6291456.upload.maximum_size=2093056
solderparty_rp2040_stamppicodebug.menu.flash.8388608_6291456.build.flash_length=2093056
solderparty_rp2040_stamppicodebug.menu.flash.8388608_6291456.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_6291456.build.fs_start=270528512
solderparty_rp2040_stamppicodebug.menu.flash.8388608_6291456.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB)
solderparty_rp2040_stamppicodebug.menu.flash.8388608_7340032.upload.maximum_size=1044480
solderparty_rp2040_stamppicodebug.menu.flash.8388608_7340032.build.flash_length=1044480
solderparty_rp2040_stamppicodebug.menu.flash.8388608_7340032.build.eeprom_start=276819968
solderparty_rp2040_stamppicodebug.menu.flash.8388608_7340032.build.fs_start=269479936
solderparty_rp2040_stamppicodebug.menu.flash.8388608_7340032.build.fs_end=276819968
solderparty_rp2040_stamppicodebug.menu.freq.125=125 MHz
solderparty_rp2040_stamppicodebug.menu.freq.125.build.f_cpu=125000000L
solderparty_rp2040_stamppicodebug.menu.freq.50=50 MHz
solderparty_rp2040_stamppicodebug.menu.freq.50.build.f_cpu=50000000L
solderparty_rp2040_stamppicodebug.menu.freq.100=100 MHz
solderparty_rp2040_stamppicodebug.menu.freq.100.build.f_cpu=100000000L
solderparty_rp2040_stamppicodebug.menu.freq.133=133 MHz
solderparty_rp2040_stamppicodebug.menu.freq.133.build.f_cpu=133000000L
solderparty_rp2040_stamppicodebug.menu.freq.150=150 MHz (Overclock)
solderparty_rp2040_stamppicodebug.menu.freq.150.build.f_cpu=150000000L
solderparty_rp2040_stamppicodebug.menu.freq.175=175 MHz (Overclock)
solderparty_rp2040_stamppicodebug.menu.freq.175.build.f_cpu=175000000L
solderparty_rp2040_stamppicodebug.menu.freq.200=200 MHz (Overclock)
solderparty_rp2040_stamppicodebug.menu.freq.200.build.f_cpu=200000000L
solderparty_rp2040_stamppicodebug.menu.freq.225=225 MHz (Overclock)
solderparty_rp2040_stamppicodebug.menu.freq.225.build.f_cpu=225000000L
solderparty_rp2040_stamppicodebug.menu.freq.250=250 MHz (Overclock)
solderparty_rp2040_stamppicodebug.menu.freq.250.build.f_cpu=250000000L
solderparty_rp2040_stamppicodebug.menu.freq.275=275 MHz (Overclock)
solderparty_rp2040_stamppicodebug.menu.freq.275.build.f_cpu=275000000L
solderparty_rp2040_stamppicodebug.menu.freq.300=300 MHz (Overclock)
solderparty_rp2040_stamppicodebug.menu.freq.300.build.f_cpu=300000000L
solderparty_rp2040_stamppicodebug.menu.opt.Small=Small (-Os) (standard)
solderparty_rp2040_stamppicodebug.menu.opt.Small.build.flags.optimize=-Os
solderparty_rp2040_stamppicodebug.menu.opt.Optimize=Optimize (-O)
solderparty_rp2040_stamppicodebug.menu.opt.Optimize.build.flags.optimize=-O
solderparty_rp2040_stamppicodebug.menu.opt.Optimize2=Optimize More (-O2)
solderparty_rp2040_stamppicodebug.menu.opt.Optimize2.build.flags.optimize=-O2
solderparty_rp2040_stamppicodebug.menu.opt.Optimize3=Optimize Even More (-O3)
solderparty_rp2040_stamppicodebug.menu.opt.Optimize3.build.flags.optimize=-O3
solderparty_rp2040_stamppicodebug.menu.opt.Fast=Fast (-Ofast) (maybe slower)
solderparty_rp2040_stamppicodebug.menu.opt.Fast.build.flags.optimize=-Ofast
solderparty_rp2040_stamppicodebug.menu.opt.Debug=Debug (-Og)
solderparty_rp2040_stamppicodebug.menu.opt.Debug.build.flags.optimize=-Og
solderparty_rp2040_stamppicodebug.menu.rtti.Disabled=Disabled
solderparty_rp2040_stamppicodebug.menu.rtti.Disabled.build.flags.rtti=-fno-rtti
solderparty_rp2040_stamppicodebug.menu.rtti.Enabled=Enabled
solderparty_rp2040_stamppicodebug.menu.rtti.Enabled.build.flags.rtti=
solderparty_rp2040_stamppicodebug.menu.dbgport.Disabled=Disabled
solderparty_rp2040_stamppicodebug.menu.dbgport.Disabled.build.debug_port=
solderparty_rp2040_stamppicodebug.menu.dbgport.Serial=Serial
solderparty_rp2040_stamppicodebug.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial
solderparty_rp2040_stamppicodebug.menu.dbgport.Serial1=Serial1
solderparty_rp2040_stamppicodebug.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1
solderparty_rp2040_stamppicodebug.menu.dbgport.Serial2=Serial2
solderparty_rp2040_stamppicodebug.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2
solderparty_rp2040_stamppicodebug.menu.dbglvl.None=None
solderparty_rp2040_stamppicodebug.menu.dbglvl.None.build.debug_level=
solderparty_rp2040_stamppicodebug.menu.dbglvl.Core=Core
solderparty_rp2040_stamppicodebug.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE
solderparty_rp2040_stamppicodebug.menu.dbglvl.SPI=SPI
solderparty_rp2040_stamppicodebug.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI
solderparty_rp2040_stamppicodebug.menu.dbglvl.Wire=Wire
solderparty_rp2040_stamppicodebug.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE
solderparty_rp2040_stamppicodebug.menu.dbglvl.All=All
solderparty_rp2040_stamppicodebug.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE
solderparty_rp2040_stamppicodebug.menu.dbglvl.NDEBUG=NDEBUG
solderparty_rp2040_stamppicodebug.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
solderparty_rp2040_stamppicodebug.menu.usbstack.nousb=No USB
solderparty_rp2040_stamppicodebug.menu.usbstack.nousb.build.usbstack_flags="-DNO_USB -DDISABLE_USB_SERIAL -I{runtime.platform.path}/tools/libpico"
# -----------------------------------
# uPesy RP2040 DevKit
# -----------------------------------
+22 -8
View File
@@ -91,7 +91,7 @@ void __not_in_flash_func(SerialPIO::_handleIRQ)() {
if (_rx == NOPIN) {
return;
}
while ((!pio_sm_is_rx_fifo_empty(_rxPIO, _rxSM)) && ((_writer + 1) % sizeof(_queue) != _reader)) {
while (!pio_sm_is_rx_fifo_empty(_rxPIO, _rxSM)) {
uint32_t decode = _rxPIO->rxf[_rxSM];
decode >>= 32 - _rxBits;
uint32_t val = 0;
@@ -114,18 +114,29 @@ void __not_in_flash_func(SerialPIO::_handleIRQ)() {
}
}
_queue[_writer] = val & ((1 << _bits) - 1);
asm volatile("" ::: "memory"); // Ensure the queue is written before the written count advances
_writer = (_writer + 1) % sizeof(_queue);
if ((_writer + 1) % _fifosize != _reader) {
_queue[_writer] = val & ((1 << _bits) - 1);
asm volatile("" ::: "memory"); // Ensure the queue is written before the written count advances
_writer = (_writer + 1) % _fifosize;
} else {
// TODO: Overflow
}
}
}
SerialPIO::SerialPIO(pin_size_t tx, pin_size_t rx) {
SerialPIO::SerialPIO(pin_size_t tx, pin_size_t rx, size_t fifosize) {
_tx = tx;
_rx = rx;
_fifosize = fifosize + 1; // Always one unused entry
_queue = new uint8_t[_fifosize];
mutex_init(&_mutex);
}
SerialPIO::~SerialPIO() {
end();
delete[] _queue;
}
void SerialPIO::begin(unsigned long baud, uint16_t config) {
_baud = baud;
switch (config & SERIAL_PARITY_MASK) {
@@ -195,7 +206,7 @@ void SerialPIO::begin(unsigned long baud, uint16_t config) {
_writer = 0;
_reader = 0;
_rxBits = 2 * (_bits + _stop + (_parity != UART_PARITY_NONE ? 1 : 0) + 1);
_rxBits = 2 * (_bits + _stop + (_parity != UART_PARITY_NONE ? 1 : 0) + 1) - 1;
_rxPgm = _getRxProgram(_rxBits);
int off;
if (!_rxPgm->prepare(&_rxPIO, &_rxSM, &off)) {
@@ -213,6 +224,9 @@ void SerialPIO::begin(unsigned long baud, uint16_t config) {
pio_sm_put_blocking(_rxPIO, _rxSM, clock_get_hz(clk_sys) / (_baud * 2) - 2);
pio_sm_exec(_rxPIO, _rxSM, pio_encode_pull(false, false));
// Join the TX FIFO to the RX one now that we don't need it
_rxPIO->sm[_rxSM].shiftctrl |= 0x80000000;
// Enable interrupts on rxfifo
switch (_rxSM) {
case 0: pio_set_irq0_source_enabled(_rxPIO, pis_sm0_rx_fifo_not_empty, true); break;
@@ -266,7 +280,7 @@ int SerialPIO::read() {
while ((now - start) < _timeout) {
if (_writer != _reader) {
auto ret = _queue[_reader];
_reader = (_reader + 1) % sizeof(_queue);
_reader = (_reader + 1) % _fifosize;
return ret;
}
delay(1);
@@ -280,7 +294,7 @@ int SerialPIO::available() {
if (!_running || !m || (_rx == NOPIN)) {
return 0;
}
return (_writer - _reader) % sizeof(_queue);
return (_writer - _reader) % _fifosize;
}
int SerialPIO::availableForWrite() {
+4 -2
View File
@@ -32,7 +32,8 @@ extern "C" typedef struct uart_inst uart_inst_t;
class SerialPIO : public HardwareSerial {
public:
static const pin_size_t NOPIN = 0xff; // Use in constructor to disable RX or TX unit
SerialPIO(pin_size_t tx, pin_size_t rx);
SerialPIO(pin_size_t tx, pin_size_t rx, size_t fifosize = 32);
~SerialPIO();
void begin(unsigned long baud = 115200) override {
begin(baud, SERIAL_8N1);
@@ -72,7 +73,8 @@ private:
int _rxBits;
// Lockless, IRQ-handled circular queue
size_t _fifosize;
uint32_t _writer;
uint32_t _reader;
uint8_t _queue[32];
uint8_t *_queue;
};
+21 -6
View File
@@ -65,6 +65,14 @@ bool SerialUART::setTX(pin_size_t pin) {
return false;
}
bool SerialUART::setFIFOSize(size_t size) {
if (!size || _running) {
return false;
}
_fifoSize = size + 1; // Always 1 unused entry
return true;
}
SerialUART::SerialUART(uart_inst_t *uart, pin_size_t tx, pin_size_t rx) {
_uart = uart;
_tx = tx;
@@ -76,6 +84,7 @@ static void _uart0IRQ();
static void _uart1IRQ();
void SerialUART::begin(unsigned long baud, uint16_t config) {
_queue = new uint8_t[_fifoSize];
_baud = baud;
uart_init(_uart, baud);
int bits, stop;
@@ -140,6 +149,7 @@ void SerialUART::end() {
irq_set_enabled(UART1_IRQ, false);
}
uart_deinit(_uart);
delete[] _queue;
_running = false;
}
@@ -170,7 +180,7 @@ int SerialUART::read() {
while ((now - start) < _timeout) {
if (_writer != _reader) {
auto ret = _queue[_reader];
_reader = (_reader + 1) % sizeof(_queue);
_reader = (_reader + 1) % _fifoSize;
return ret;
}
delay(1);
@@ -184,7 +194,7 @@ int SerialUART::available() {
if (!_running || !m) {
return 0;
}
return (_writer - _reader) % sizeof(_queue);
return (_writer - _reader) % _fifoSize;
}
int SerialUART::availableForWrite() {
@@ -248,10 +258,15 @@ void arduino::serialEvent2Run(void) {
// IRQ handler, called when FIFO > 1/4 full or when it had held unread data for >32 bit times
void __not_in_flash_func(SerialUART::_handleIRQ)() {
uart_get_hw(_uart)->icr |= UART_UARTICR_RTIC_BITS | UART_UARTICR_RXIC_BITS;
while ((uart_is_readable(_uart)) && ((_writer + 1) % sizeof(_queue) != _reader)) {
_queue[_writer] = uart_getc(_uart);
asm volatile("" ::: "memory"); // Ensure the queue is written before the written count advances
_writer = (_writer + 1) % sizeof(_queue);
while (uart_is_readable(_uart)) {
auto val = uart_getc(_uart);
if ((_writer + 1) % _fifoSize != _reader) {
_queue[_writer] = val;
asm volatile("" ::: "memory"); // Ensure the queue is written before the written count advances
_writer = (_writer + 1) % _fifoSize;
} else {
// TODO: Overflow
}
}
}
+3 -1
View File
@@ -40,6 +40,7 @@ public:
ret &= setTX(tx);
return ret;
}
bool setFIFOSize(size_t size);
void begin(unsigned long baud = 115200) override {
begin(baud, SERIAL_8N1);
@@ -70,7 +71,8 @@ private:
// Lockless, IRQ-handled circular queue
uint32_t _writer;
uint32_t _reader;
uint8_t _queue[32];
size_t _fifoSize = 32;
uint8_t *_queue;
};
extern SerialUART Serial1; // HW UART 0
+3 -2
View File
@@ -6,9 +6,10 @@ one or two PIO state machines is included in the Arduino-Pico core. This
allows for up to 8 additional serial ports to be run from the RP2040 without
requiring additional CPU resources.
Instantiate a ``SerialPIO(txpin, rxpin)`` object in your sketch and then
Instantiate a ``SerialPIO(txpin, rxpin, fifosize)`` object in your sketch and then
use it the same as any other serial port. Even, odd, and no parity modes
are supported, as well as data sizes from 5- to 8-bits.
are supported, as well as data sizes from 5- to 8-bits. Fifosize, if not
specified, defaults to 32 bytes.
To instantiate only a serial transmit or receive unit, pass in
``SerialPIO::NOPIN`` as the ``txpin`` or ``rxpin``.
+7
View File
@@ -24,5 +24,12 @@ Configure their pins using the ``setXXX`` calls prior to calling ``begin()``
Serial1.setTX(pin);
Serial1.begin(baud);
The size of the receive FIFO may also be adjusted from the default 32 bytes by
using the ``setFIFOSize`` call prior to calling ``begin()``
.. code:: cpp
Serial1.setFIFOSize(128);
Serial1.begin(baud);
For detailed information about the Serial ports, see the
Arduino `Serial Reference <https://www.arduino.cc/reference/en/language/functions/communication/serial/>`_ .
+1
View File
@@ -34,3 +34,4 @@ resumeOtherCore KEYWORD2
PIOProgram KEYWORD2
prepare KEYWORD2
SerialPIO KEYWORD2
setFIFOSize KEYWORD2
+1 -1
View File
@@ -31,7 +31,7 @@
#define WIRE_HAS_END 1
#ifndef WIRE_BUFFER_SIZE
#define WIRE_BUFFER_SIZE 128
#define WIRE_BUFFER_SIZE 256
#endif
class TwoWire : public HardwareI2C {
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "framework-arduinopico",
"version": "1.10910.0",
"version": "1.10913.0",
"description": "Arduino Wiring-based Framework (RPi Pico RP2040)",
"keywords": [
"framework",
+22 -1
View File
@@ -26,6 +26,9 @@
{
"name": "Adafruit ItsyBitsy RP2040"
},
{
"name": "Adafruit KB2040"
},
{
"name": "Adafruit Macropad RP2040"
},
@@ -47,6 +50,21 @@
{
"name": "Cytron Maker Pi RP2040"
},
{
"name": "Invector Labs Challenger RP2040 WiFi"
},
{
"name": "Invector Labs Challenger NB RP2040 WiFi"
},
{
"name": "Invector Labs Challenger RP2040 LTE"
},
{
"name": "Invector Labs RPICO32"
},
{
"name": "Solder Party RP2040 Stamp"
},
{
"name": "SparkFun ProMicro RP2040"
},
@@ -56,6 +74,9 @@
{
"name": "uPesy RP2040 DevKit"
},
{
"name": "WIZnet W5100S-EVB-Pico"
},
{
"name": "Generic RP2040 Module"
}
@@ -438,4 +459,4 @@
]
}
]
}
}
+1 -1
View File
@@ -20,7 +20,7 @@
# https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5---3rd-party-Hardware-specification
name=Raspberry Pi RP2040 Boards
version=0.9.9
version=1.9.13
runtime.tools.pqt-gcc.path={runtime.platform.path}/system/arm-none-eabi
runtime.tools.pqt-python3.path={runtime.platform.path}/system/python3
runtime.tools.pqt-mklittlefs.path={runtime.platform.path}/system/mklittlefs
+1
View File
@@ -173,5 +173,6 @@ MakeBoard("challenger_2040_lte", "iLabs", "Challenger 2040 LTE", "0x2e8a", "0x10
MakeBoard("challenger_nb_2040_wifi", "iLabs", "Challenger NB 2040 WiFi", "0x2e8a", "0x100b", 500, "CHALLENGER_NB_2040_WIFI_RP2040", 8, "boot2_w25q080_2_padded_checksum")
MakeBoard("ilabs_rpico32", "iLabs", "RPICO32", "0x2e8a", "0x1010", 250, "ILABS_2040_RPICO32_RP2040", 8, "boot2_w25q080_2_padded_checksum")
MakeBoard("melopero_shake_rp2040", "Melopero", "Shake RP2040", "0x2e8a", "0x1005", 250, "MELOPERO_SHAKE_RP2040", 16, "boot2_w25q080_2_padded_checksum")
MakeBoard("solderparty_rp2040_stamp", "Solder Party", "RP2040 Stamp", "0x1209", "0xa182", 500, "SOLDERPARTY_RP2040_STAMP", 8, "boot2_generic_03h_4_padded_checksum")
MakeBoard("upesy_rp2040_devkit", "uPesy", "RP2040 DevKit", "0x2e8a", "0x1007", 250, "UPESY_RP2040_DEVKIT", 2, "boot2_w25q080_2_padded_checksum")
MakeBoard("wiznet_5100s_evb_pico", "WIZnet", "W5100S-EVB-Pico", "0x2e8a", "0x1008", 250, "WIZNET_5100S_EVB_PICO", 2, "boot2_w25q080_2_padded_checksum")
+2 -1
View File
@@ -142,7 +142,8 @@ def configure_usb_flags(cpp_defines):
("USB_PID", usb_pid),
("USB_MANUFACTURER", '\\"%s\\"' % usb_manufacturer),
("USB_PRODUCT", '\\"%s\\"' % usb_product),
("SERIALUSB_PID", usb_pid)
("SERIALUSB_PID", usb_pid),
("USBD_MAX_POWER_MA", 250)
])
# use vidtouse and pidtouse
+6
View File
@@ -38,4 +38,10 @@
#define SPI_HOWMANY (1u)
#define WIRE_HOWMANY (2u)
// Pin overrides specific to the QT Py RP2040
#define __PIN_A0 (29u)
#define __PIN_A1 (28u)
#define __PIN_A2 (27u)
#define __PIN_A3 (26u)
#include "../generic/common.h"
+5 -5
View File
@@ -56,19 +56,19 @@ static const uint8_t A5 = (13u);
#define PIN_SPI0_MISO (D12)
#define PIN_SPI0_MOSI (D11)
#define PIN_SPI0_SCK (D13)
#define PIN_SPI0_SS (13u)//(D10)
#define PIN_SPI0_SS (D10)
#define PIN_SPI1_MISO (D25)
#define PIN_SPI1_MOSI (D28)
#define PIN_SPI1_SCK (D29)
#define PIN_SPI1_SS (13u)
#define PIN_SPI1_SS (D10)
// Wire
#define PIN_WIRE0_SDA (D18)
#define PIN_WIRE0_SCL (D19)
#define PIN_WIRE1_SDA (26u) //Non c'è
#define PIN_WIRE1_SCL (27u) //Non c'è
#define PIN_WIRE1_SDA (D14)
#define PIN_WIRE1_SCL (D15)
#define SERIAL_HOWMANY (3u)
#define SPI_HOWMANY (2u)
@@ -95,7 +95,7 @@ static const uint8_t SCK = PIN_SPI0_SCK;
#define SerialHCI Serial2
//#define NINA_GPIOIRQ (21u) // LEDG pin (GPIO26 on NINA)
#define NINA_GPIO0 (20u) // real GPIO0 on NINA
#define NINA_GPIO0 (D20) // (2u), real GPIO0 on NINA
#define SPIWIFI_SS (D26)
#define SPIWIFI_ACK (D27)
+26 -4
View File
@@ -39,12 +39,34 @@ static const uint8_t D27 = (27u);
static const uint8_t D28 = (28u);
static const uint8_t D29 = (29u);
static const uint8_t A0 = (26u);
static const uint8_t A1 = (27u);
static const uint8_t A2 = (28u);
static const uint8_t A3 = (29u);
#ifdef __PIN_A0
static const uint8_t A0 = __PIN_A0;
#else
static const uint8_t A0 = (26u);
#endif
#ifdef __PIN_A1
static const uint8_t A1 = __PIN_A1;
#else
static const uint8_t A1 = (27u);
#endif
#ifdef __PIN_A2
static const uint8_t A2 = __PIN_A2;
#else
static const uint8_t A2 = (28u);
#endif
#ifdef __PIN_A3
static const uint8_t A3 = __PIN_A3;
#else
static const uint8_t A3 = (29u);
#endif
static const uint8_t SS = PIN_SPI0_SS;
static const uint8_t MOSI = PIN_SPI0_MOSI;
static const uint8_t MISO = PIN_SPI0_MISO;
static const uint8_t SCK = PIN_SPI0_SCK;
static const uint8_t SDA = PIN_WIRE0_SDA;
static const uint8_t SCL = PIN_WIRE0_SCL;
@@ -0,0 +1,40 @@
#pragma once
// Pin definitions taken from:
// https://rp2040-stamp.solder.party/carrier
// LEDs
#define PIN_LED (20u)
// Serial
#define PIN_SERIAL1_TX (0u)
#define PIN_SERIAL1_RX (1u)
#define PIN_SERIAL2_TX (24u)
#define PIN_SERIAL2_RX (25u)
// SPI
#define PIN_SPI0_MISO (16u)
#define PIN_SPI0_MOSI (19u)
#define PIN_SPI0_SCK (18u)
#define PIN_SPI0_SS (17u)
#define PIN_SPI1_MISO (8u)
#define PIN_SPI1_MOSI (11u)
#define PIN_SPI1_SCK (10u)
#define PIN_SPI1_SS (9u)
// Wire
#define PIN_WIRE0_SDA (4u)
#define PIN_WIRE0_SCL (5u)
#define PIN_WIRE1_SDA (2u)
#define PIN_WIRE1_SCL (3u)
#define SERIAL_HOWMANY (2u)
#define SPI_HOWMANY (2u)
#define WIRE_HOWMANY (2u)
#define PIN_NEOPIXEL (21u)
#include "../generic/common.h"