Compare commits

..
15 Commits
Author SHA1 Message Date
Earle F. Philhower, III 6afcf5881d Initial Arduino Nano RP2040 Connect support (#212)
Thanks to @Claupio for the bringup!
Reference #208
2021-06-14 08:59:52 -07:00
Earle F. Philhower, III 30704a7c5e Obey timeout value on SerialUART.read/.peek (#211)
Fixes a hang when reading from the Serial UART ports because before the
core would pause indefinitely for the next character.

Now, wait up to Serial.setTimeout() milliseconds and if it times out
return -1 to the app.

Fixes #210
2021-06-13 14:11:23 -07:00
Earle F. Philhower, III 08b6748d79 Update to PICO-SDK version 1.2.0 (#207)
Minor rev to the tinyUSB version used, new ID function.
2021-06-11 12:48:09 -07:00
Earle F. Philhower, III bedfbda372 Clear PIO FIFOs when updating Tone and Servos (#206)
The PIO programs that generate tone() and Servo() use the TX FIFO to
receive updates to the period/duty cycle.

The original code would push into the FIFO (potentially blocking the
app if the FIFO was full) and generate at least one cycle of every
value written into the control.  Basically, the output would
lag the changes by 1 cycle or more (which could be 20ms+ on Servo).

Fix this by clearing any old, ungrabbed values from the FIFO before
sending a new one to the program.  Instead of a FIFO, there is
effectively now just a control register and updates will be immediate.

Update the Siren.ino example with delays because now the tone() calls
will not block and run 10x+ faster.
2021-06-11 12:27:48 -07:00
Earle F. Philhower, III 9fbf6ab35d Clean up Arduino.h header, remove duplicates (#205)
Many functions are defined inside the api/Common.h, so remove them from
the Arduino.h header to have them appear only once.

Fix up the abs() macro to avoid macro problems, add round()
2021-06-11 12:23:23 -07:00
Earle F. Philhower, III 793496da98 Set GPIO digital output on digitalWrite (#203)
Fixes #202
2021-06-10 07:58:09 -07:00
Earle F. Philhower, III 81cbf8357d Update README.md 2021-06-08 08:39:58 -07:00
Earle F. Philhower, III 55a260e4e8 Update README.md 2021-06-08 08:35:32 -07:00
Earle F. Philhower, III 5c71564844 Add PIOASM online tool link, thanks @jake653! (#197) 2021-06-08 08:34:53 -07:00
Earle F. Philhower, III bf4f0454e1 Update README.md 2021-06-08 08:02:07 -07:00
Earle F. Philhower, III 33b9e915d9 Add new boards to package.json 2021-06-08 07:02:25 -07:00
Earle F. Philhower, III 77712f5904 Add SparkFun ProMicro RP2040 (#196)
It's still OOS, so hookup taken from their schematics.
2021-06-08 06:55:13 -07:00
Earle F. Philhower, III c02388dfbe Update README.md 2021-06-07 15:12:03 -07:00
Earle F. Philhower, III 56dae62b8e Add back Featherwing CI test (#195) 2021-06-07 13:54:25 -07:00
Earle F. Philhower, III 53b52a975a Update README.md 2021-06-07 07:10:41 -07:00
22 changed files with 1110 additions and 61 deletions
+7 -2
View File
@@ -1,8 +1,10 @@
# Arduino-Pico [![Join the chat at https://gitter.im/arduino-pico/community](https://badges.gitter.im/arduino-pico/community.svg)](https://gitter.im/arduino-pico/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
# Arduino-Pico
[![Release](https://img.shields.io/github/v/release/earlephilhower/arduino-pico?style=plastic)](https://github.com/earlephilhower/arduino-pico/releases)
[![Gitter](https://img.shields.io/gitter/room/earlephilhower/arduino-pico?style=plastic)](https://gitter.im/arduino-pico/community)
Raspberry Pi Pico Arduino core, for all RP2040 boards
This is a port of the RP2040 (Raspberry Pi Pico processor) to the Arduino ecosystem. It uses the bare Raspberry Pi Pico SDK and a custom GCC 10.2/Newlib 4.0 toolchain.
This is a port of the RP2040 (Raspberry Pi Pico processor) to the Arduino ecosystem. It uses the bare Raspberry Pi Pico SDK and a custom GCC 10.3/Newlib 4.0 toolchain.
# Documentation
See https://arduino-pico.readthedocs.io/en/latest/ along with the examples for more detailed usage information.
@@ -11,9 +13,12 @@ See https://arduino-pico.readthedocs.io/en/latest/ along with the examples for m
* Raspberry Pi Pico
* Adafruit Feather RP2040
* Adafruit ItsyBitsy RP2040
* Adafruit Macropad RP2040
* Adafruit QTPy RP2040
* Adafruit STEMMA Friend RP2040
* Adafruit Trinkey RP2040 QT
* Arduino Nano RP2040 Connect (preliminary)
* SparkFun ProMicro RP2040
* Generic (configurable flash, I/O pins)
# Installing via Arduino Boards Manager
+776
View File
@@ -1978,6 +1978,782 @@ 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"
# -----------------------------------
# Arduino Nano RP2040 Connect
# -----------------------------------
arduino_nano_connect.name=Arduino Nano RP2040 Connect
arduino_nano_connect.vid.0=0x2341
arduino_nano_connect.pid.0=0x0058
arduino_nano_connect.build.usbpid=-DSERIALUSB_PID=0x0058
arduino_nano_connect.build.board=ARDUINO_NANO_RP2040_CONNECT
arduino_nano_connect.build.mcu=cortex-m0plus
arduino_nano_connect.build.variant=arduino_nano_connect
arduino_nano_connect.upload.tool=uf2conv
arduino_nano_connect.upload.maximum_size=16777216
arduino_nano_connect.upload.maximum_data_size=262144
arduino_nano_connect.upload.wait_for_upload_port=true
arduino_nano_connect.upload.erase_cmd=
arduino_nano_connect.serial.disableDTR=false
arduino_nano_connect.serial.disableRTS=false
arduino_nano_connect.build.f_cpu=125000000
arduino_nano_connect.build.led=
arduino_nano_connect.build.core=rp2040
arduino_nano_connect.build.mcu=rp2040
arduino_nano_connect.build.ldscript=memmap_default.ld
arduino_nano_connect.build.boot2=boot2_w25q080_2_padded_checksum
arduino_nano_connect.build.vid=0x2341
arduino_nano_connect.build.pid=0x0058
arduino_nano_connect.build.usb_manufacturer="Arduino"
arduino_nano_connect.build.usb_product="Nano RP2040 Connect"
arduino_nano_connect.menu.flash.16777216_0=16MB (no FS)
arduino_nano_connect.menu.flash.16777216_0.upload.maximum_size=16773120
arduino_nano_connect.menu.flash.16777216_0.build.flash_length=16773120
arduino_nano_connect.menu.flash.16777216_0.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_0.build.fs_start=285208576
arduino_nano_connect.menu.flash.16777216_0.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_65536=16MB (Sketch: 16320KB, FS: 64KB)
arduino_nano_connect.menu.flash.16777216_65536.upload.maximum_size=16707584
arduino_nano_connect.menu.flash.16777216_65536.build.flash_length=16707584
arduino_nano_connect.menu.flash.16777216_65536.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_65536.build.fs_start=285143040
arduino_nano_connect.menu.flash.16777216_65536.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_131072=16MB (Sketch: 16256KB, FS: 128KB)
arduino_nano_connect.menu.flash.16777216_131072.upload.maximum_size=16642048
arduino_nano_connect.menu.flash.16777216_131072.build.flash_length=16642048
arduino_nano_connect.menu.flash.16777216_131072.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_131072.build.fs_start=285077504
arduino_nano_connect.menu.flash.16777216_131072.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_262144=16MB (Sketch: 16128KB, FS: 256KB)
arduino_nano_connect.menu.flash.16777216_262144.upload.maximum_size=16510976
arduino_nano_connect.menu.flash.16777216_262144.build.flash_length=16510976
arduino_nano_connect.menu.flash.16777216_262144.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_262144.build.fs_start=284946432
arduino_nano_connect.menu.flash.16777216_262144.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_524288=16MB (Sketch: 15872KB, FS: 512KB)
arduino_nano_connect.menu.flash.16777216_524288.upload.maximum_size=16248832
arduino_nano_connect.menu.flash.16777216_524288.build.flash_length=16248832
arduino_nano_connect.menu.flash.16777216_524288.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_524288.build.fs_start=284684288
arduino_nano_connect.menu.flash.16777216_524288.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_1048576=16MB (Sketch: 15MB, FS: 1MB)
arduino_nano_connect.menu.flash.16777216_1048576.upload.maximum_size=15724544
arduino_nano_connect.menu.flash.16777216_1048576.build.flash_length=15724544
arduino_nano_connect.menu.flash.16777216_1048576.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_1048576.build.fs_start=284160000
arduino_nano_connect.menu.flash.16777216_1048576.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_2097152=16MB (Sketch: 14MB, FS: 2MB)
arduino_nano_connect.menu.flash.16777216_2097152.upload.maximum_size=14675968
arduino_nano_connect.menu.flash.16777216_2097152.build.flash_length=14675968
arduino_nano_connect.menu.flash.16777216_2097152.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_2097152.build.fs_start=283111424
arduino_nano_connect.menu.flash.16777216_2097152.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_3145728=16MB (Sketch: 13MB, FS: 3MB)
arduino_nano_connect.menu.flash.16777216_3145728.upload.maximum_size=13627392
arduino_nano_connect.menu.flash.16777216_3145728.build.flash_length=13627392
arduino_nano_connect.menu.flash.16777216_3145728.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_3145728.build.fs_start=282062848
arduino_nano_connect.menu.flash.16777216_3145728.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_4194304=16MB (Sketch: 12MB, FS: 4MB)
arduino_nano_connect.menu.flash.16777216_4194304.upload.maximum_size=12578816
arduino_nano_connect.menu.flash.16777216_4194304.build.flash_length=12578816
arduino_nano_connect.menu.flash.16777216_4194304.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_4194304.build.fs_start=281014272
arduino_nano_connect.menu.flash.16777216_4194304.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_5242880=16MB (Sketch: 11MB, FS: 5MB)
arduino_nano_connect.menu.flash.16777216_5242880.upload.maximum_size=11530240
arduino_nano_connect.menu.flash.16777216_5242880.build.flash_length=11530240
arduino_nano_connect.menu.flash.16777216_5242880.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_5242880.build.fs_start=279965696
arduino_nano_connect.menu.flash.16777216_5242880.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_6291456=16MB (Sketch: 10MB, FS: 6MB)
arduino_nano_connect.menu.flash.16777216_6291456.upload.maximum_size=10481664
arduino_nano_connect.menu.flash.16777216_6291456.build.flash_length=10481664
arduino_nano_connect.menu.flash.16777216_6291456.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_6291456.build.fs_start=278917120
arduino_nano_connect.menu.flash.16777216_6291456.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_7340032=16MB (Sketch: 9MB, FS: 7MB)
arduino_nano_connect.menu.flash.16777216_7340032.upload.maximum_size=9433088
arduino_nano_connect.menu.flash.16777216_7340032.build.flash_length=9433088
arduino_nano_connect.menu.flash.16777216_7340032.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_7340032.build.fs_start=277868544
arduino_nano_connect.menu.flash.16777216_7340032.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_8388608=16MB (Sketch: 8MB, FS: 8MB)
arduino_nano_connect.menu.flash.16777216_8388608.upload.maximum_size=8384512
arduino_nano_connect.menu.flash.16777216_8388608.build.flash_length=8384512
arduino_nano_connect.menu.flash.16777216_8388608.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_8388608.build.fs_start=276819968
arduino_nano_connect.menu.flash.16777216_8388608.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_9437184=16MB (Sketch: 7MB, FS: 9MB)
arduino_nano_connect.menu.flash.16777216_9437184.upload.maximum_size=7335936
arduino_nano_connect.menu.flash.16777216_9437184.build.flash_length=7335936
arduino_nano_connect.menu.flash.16777216_9437184.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_9437184.build.fs_start=275771392
arduino_nano_connect.menu.flash.16777216_9437184.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_10485760=16MB (Sketch: 6MB, FS: 10MB)
arduino_nano_connect.menu.flash.16777216_10485760.upload.maximum_size=6287360
arduino_nano_connect.menu.flash.16777216_10485760.build.flash_length=6287360
arduino_nano_connect.menu.flash.16777216_10485760.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_10485760.build.fs_start=274722816
arduino_nano_connect.menu.flash.16777216_10485760.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_11534336=16MB (Sketch: 5MB, FS: 11MB)
arduino_nano_connect.menu.flash.16777216_11534336.upload.maximum_size=5238784
arduino_nano_connect.menu.flash.16777216_11534336.build.flash_length=5238784
arduino_nano_connect.menu.flash.16777216_11534336.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_11534336.build.fs_start=273674240
arduino_nano_connect.menu.flash.16777216_11534336.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_12582912=16MB (Sketch: 4MB, FS: 12MB)
arduino_nano_connect.menu.flash.16777216_12582912.upload.maximum_size=4190208
arduino_nano_connect.menu.flash.16777216_12582912.build.flash_length=4190208
arduino_nano_connect.menu.flash.16777216_12582912.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_12582912.build.fs_start=272625664
arduino_nano_connect.menu.flash.16777216_12582912.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_13631488=16MB (Sketch: 3MB, FS: 13MB)
arduino_nano_connect.menu.flash.16777216_13631488.upload.maximum_size=3141632
arduino_nano_connect.menu.flash.16777216_13631488.build.flash_length=3141632
arduino_nano_connect.menu.flash.16777216_13631488.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_13631488.build.fs_start=271577088
arduino_nano_connect.menu.flash.16777216_13631488.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_14680064=16MB (Sketch: 2MB, FS: 14MB)
arduino_nano_connect.menu.flash.16777216_14680064.upload.maximum_size=2093056
arduino_nano_connect.menu.flash.16777216_14680064.build.flash_length=2093056
arduino_nano_connect.menu.flash.16777216_14680064.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_14680064.build.fs_start=270528512
arduino_nano_connect.menu.flash.16777216_14680064.build.fs_end=285208576
arduino_nano_connect.menu.flash.16777216_15728640=16MB (Sketch: 1MB, FS: 15MB)
arduino_nano_connect.menu.flash.16777216_15728640.upload.maximum_size=1044480
arduino_nano_connect.menu.flash.16777216_15728640.build.flash_length=1044480
arduino_nano_connect.menu.flash.16777216_15728640.build.eeprom_start=285208576
arduino_nano_connect.menu.flash.16777216_15728640.build.fs_start=269479936
arduino_nano_connect.menu.flash.16777216_15728640.build.fs_end=285208576
arduino_nano_connect.menu.freq.125=125 MHz
arduino_nano_connect.menu.freq.125.build.f_cpu=125000000L
arduino_nano_connect.menu.freq.50=50 MHz
arduino_nano_connect.menu.freq.50.build.f_cpu=50000000L
arduino_nano_connect.menu.freq.100=100 MHz
arduino_nano_connect.menu.freq.100.build.f_cpu=100000000L
arduino_nano_connect.menu.freq.133=133 MHz
arduino_nano_connect.menu.freq.133.build.f_cpu=133000000L
arduino_nano_connect.menu.freq.150=150 MHz (Overclock)
arduino_nano_connect.menu.freq.150.build.f_cpu=150000000L
arduino_nano_connect.menu.freq.175=175 MHz (Overclock)
arduino_nano_connect.menu.freq.175.build.f_cpu=175000000L
arduino_nano_connect.menu.freq.200=200 MHz (Overclock)
arduino_nano_connect.menu.freq.200.build.f_cpu=200000000L
arduino_nano_connect.menu.freq.225=225 MHz (Overclock)
arduino_nano_connect.menu.freq.225.build.f_cpu=225000000L
arduino_nano_connect.menu.freq.250=250 MHz (Overclock)
arduino_nano_connect.menu.freq.250.build.f_cpu=250000000L
arduino_nano_connect.menu.freq.275=275 MHz (Overclock)
arduino_nano_connect.menu.freq.275.build.f_cpu=275000000L
arduino_nano_connect.menu.freq.300=300 MHz (Overclock)
arduino_nano_connect.menu.freq.300.build.f_cpu=300000000L
arduino_nano_connect.menu.dbgport.Disabled=Disabled
arduino_nano_connect.menu.dbgport.Disabled.build.debug_port=
arduino_nano_connect.menu.dbgport.Serial=Serial
arduino_nano_connect.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial
arduino_nano_connect.menu.dbgport.Serial1=Serial1
arduino_nano_connect.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1
arduino_nano_connect.menu.dbgport.Serial2=Serial2
arduino_nano_connect.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2
arduino_nano_connect.menu.dbglvl.None=None
arduino_nano_connect.menu.dbglvl.None.build.debug_level=
arduino_nano_connect.menu.dbglvl.Core=Core
arduino_nano_connect.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE
arduino_nano_connect.menu.dbglvl.SPI=SPI
arduino_nano_connect.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI
arduino_nano_connect.menu.dbglvl.Wire=Wire
arduino_nano_connect.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE
arduino_nano_connect.menu.dbglvl.All=All
arduino_nano_connect.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE
arduino_nano_connect.menu.dbglvl.NDEBUG=NDEBUG
arduino_nano_connect.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
arduino_nano_connect.menu.usbstack.picosdk=Pico SDK
arduino_nano_connect.menu.usbstack.picosdk.build.usbstack_flags=
arduino_nano_connect.menu.usbstack.tinyusb=Adafruit TinyUSB
arduino_nano_connect.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino"
# -----------------------------------
# Arduino Nano RP2040 Connect (Picoprobe)
# -----------------------------------
arduino_nano_connectpicoprobe.name=Arduino Nano RP2040 Connect (Picoprobe)
arduino_nano_connectpicoprobe.vid.0=0x2341
arduino_nano_connectpicoprobe.pid.0=0x0004
arduino_nano_connectpicoprobe.build.usbpid=-DSERIALUSB_PID=0x0058
arduino_nano_connectpicoprobe.build.board=ARDUINO_NANO_RP2040_CONNECT
arduino_nano_connectpicoprobe.build.mcu=cortex-m0plus
arduino_nano_connectpicoprobe.build.variant=arduino_nano_connect
arduino_nano_connectpicoprobe.upload.tool=picoprobe
arduino_nano_connectpicoprobe.upload.maximum_size=16777216
arduino_nano_connectpicoprobe.upload.maximum_data_size=262144
arduino_nano_connectpicoprobe.upload.wait_for_upload_port=true
arduino_nano_connectpicoprobe.upload.erase_cmd=
arduino_nano_connectpicoprobe.serial.disableDTR=false
arduino_nano_connectpicoprobe.serial.disableRTS=false
arduino_nano_connectpicoprobe.build.f_cpu=125000000
arduino_nano_connectpicoprobe.build.led=
arduino_nano_connectpicoprobe.build.core=rp2040
arduino_nano_connectpicoprobe.build.mcu=rp2040
arduino_nano_connectpicoprobe.build.ldscript=memmap_default.ld
arduino_nano_connectpicoprobe.build.boot2=boot2_w25q080_2_padded_checksum
arduino_nano_connectpicoprobe.build.vid=0x2341
arduino_nano_connectpicoprobe.build.pid=0x0058
arduino_nano_connectpicoprobe.build.usb_manufacturer="Arduino"
arduino_nano_connectpicoprobe.build.usb_product="Nano RP2040 Connect (Picoprobe)"
arduino_nano_connectpicoprobe.menu.flash.16777216_0=16MB (no FS)
arduino_nano_connectpicoprobe.menu.flash.16777216_0.upload.maximum_size=16773120
arduino_nano_connectpicoprobe.menu.flash.16777216_0.build.flash_length=16773120
arduino_nano_connectpicoprobe.menu.flash.16777216_0.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_0.build.fs_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_0.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_65536=16MB (Sketch: 16320KB, FS: 64KB)
arduino_nano_connectpicoprobe.menu.flash.16777216_65536.upload.maximum_size=16707584
arduino_nano_connectpicoprobe.menu.flash.16777216_65536.build.flash_length=16707584
arduino_nano_connectpicoprobe.menu.flash.16777216_65536.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_65536.build.fs_start=285143040
arduino_nano_connectpicoprobe.menu.flash.16777216_65536.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_131072=16MB (Sketch: 16256KB, FS: 128KB)
arduino_nano_connectpicoprobe.menu.flash.16777216_131072.upload.maximum_size=16642048
arduino_nano_connectpicoprobe.menu.flash.16777216_131072.build.flash_length=16642048
arduino_nano_connectpicoprobe.menu.flash.16777216_131072.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_131072.build.fs_start=285077504
arduino_nano_connectpicoprobe.menu.flash.16777216_131072.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_262144=16MB (Sketch: 16128KB, FS: 256KB)
arduino_nano_connectpicoprobe.menu.flash.16777216_262144.upload.maximum_size=16510976
arduino_nano_connectpicoprobe.menu.flash.16777216_262144.build.flash_length=16510976
arduino_nano_connectpicoprobe.menu.flash.16777216_262144.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_262144.build.fs_start=284946432
arduino_nano_connectpicoprobe.menu.flash.16777216_262144.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_524288=16MB (Sketch: 15872KB, FS: 512KB)
arduino_nano_connectpicoprobe.menu.flash.16777216_524288.upload.maximum_size=16248832
arduino_nano_connectpicoprobe.menu.flash.16777216_524288.build.flash_length=16248832
arduino_nano_connectpicoprobe.menu.flash.16777216_524288.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_524288.build.fs_start=284684288
arduino_nano_connectpicoprobe.menu.flash.16777216_524288.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_1048576=16MB (Sketch: 15MB, FS: 1MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_1048576.upload.maximum_size=15724544
arduino_nano_connectpicoprobe.menu.flash.16777216_1048576.build.flash_length=15724544
arduino_nano_connectpicoprobe.menu.flash.16777216_1048576.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_1048576.build.fs_start=284160000
arduino_nano_connectpicoprobe.menu.flash.16777216_1048576.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_2097152=16MB (Sketch: 14MB, FS: 2MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_2097152.upload.maximum_size=14675968
arduino_nano_connectpicoprobe.menu.flash.16777216_2097152.build.flash_length=14675968
arduino_nano_connectpicoprobe.menu.flash.16777216_2097152.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_2097152.build.fs_start=283111424
arduino_nano_connectpicoprobe.menu.flash.16777216_2097152.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_3145728=16MB (Sketch: 13MB, FS: 3MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_3145728.upload.maximum_size=13627392
arduino_nano_connectpicoprobe.menu.flash.16777216_3145728.build.flash_length=13627392
arduino_nano_connectpicoprobe.menu.flash.16777216_3145728.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_3145728.build.fs_start=282062848
arduino_nano_connectpicoprobe.menu.flash.16777216_3145728.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_4194304=16MB (Sketch: 12MB, FS: 4MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_4194304.upload.maximum_size=12578816
arduino_nano_connectpicoprobe.menu.flash.16777216_4194304.build.flash_length=12578816
arduino_nano_connectpicoprobe.menu.flash.16777216_4194304.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_4194304.build.fs_start=281014272
arduino_nano_connectpicoprobe.menu.flash.16777216_4194304.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_5242880=16MB (Sketch: 11MB, FS: 5MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_5242880.upload.maximum_size=11530240
arduino_nano_connectpicoprobe.menu.flash.16777216_5242880.build.flash_length=11530240
arduino_nano_connectpicoprobe.menu.flash.16777216_5242880.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_5242880.build.fs_start=279965696
arduino_nano_connectpicoprobe.menu.flash.16777216_5242880.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_6291456=16MB (Sketch: 10MB, FS: 6MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_6291456.upload.maximum_size=10481664
arduino_nano_connectpicoprobe.menu.flash.16777216_6291456.build.flash_length=10481664
arduino_nano_connectpicoprobe.menu.flash.16777216_6291456.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_6291456.build.fs_start=278917120
arduino_nano_connectpicoprobe.menu.flash.16777216_6291456.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_7340032=16MB (Sketch: 9MB, FS: 7MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_7340032.upload.maximum_size=9433088
arduino_nano_connectpicoprobe.menu.flash.16777216_7340032.build.flash_length=9433088
arduino_nano_connectpicoprobe.menu.flash.16777216_7340032.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_7340032.build.fs_start=277868544
arduino_nano_connectpicoprobe.menu.flash.16777216_7340032.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_8388608=16MB (Sketch: 8MB, FS: 8MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_8388608.upload.maximum_size=8384512
arduino_nano_connectpicoprobe.menu.flash.16777216_8388608.build.flash_length=8384512
arduino_nano_connectpicoprobe.menu.flash.16777216_8388608.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_8388608.build.fs_start=276819968
arduino_nano_connectpicoprobe.menu.flash.16777216_8388608.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_9437184=16MB (Sketch: 7MB, FS: 9MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_9437184.upload.maximum_size=7335936
arduino_nano_connectpicoprobe.menu.flash.16777216_9437184.build.flash_length=7335936
arduino_nano_connectpicoprobe.menu.flash.16777216_9437184.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_9437184.build.fs_start=275771392
arduino_nano_connectpicoprobe.menu.flash.16777216_9437184.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_10485760=16MB (Sketch: 6MB, FS: 10MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_10485760.upload.maximum_size=6287360
arduino_nano_connectpicoprobe.menu.flash.16777216_10485760.build.flash_length=6287360
arduino_nano_connectpicoprobe.menu.flash.16777216_10485760.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_10485760.build.fs_start=274722816
arduino_nano_connectpicoprobe.menu.flash.16777216_10485760.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_11534336=16MB (Sketch: 5MB, FS: 11MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_11534336.upload.maximum_size=5238784
arduino_nano_connectpicoprobe.menu.flash.16777216_11534336.build.flash_length=5238784
arduino_nano_connectpicoprobe.menu.flash.16777216_11534336.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_11534336.build.fs_start=273674240
arduino_nano_connectpicoprobe.menu.flash.16777216_11534336.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_12582912=16MB (Sketch: 4MB, FS: 12MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_12582912.upload.maximum_size=4190208
arduino_nano_connectpicoprobe.menu.flash.16777216_12582912.build.flash_length=4190208
arduino_nano_connectpicoprobe.menu.flash.16777216_12582912.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_12582912.build.fs_start=272625664
arduino_nano_connectpicoprobe.menu.flash.16777216_12582912.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_13631488=16MB (Sketch: 3MB, FS: 13MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_13631488.upload.maximum_size=3141632
arduino_nano_connectpicoprobe.menu.flash.16777216_13631488.build.flash_length=3141632
arduino_nano_connectpicoprobe.menu.flash.16777216_13631488.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_13631488.build.fs_start=271577088
arduino_nano_connectpicoprobe.menu.flash.16777216_13631488.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_14680064=16MB (Sketch: 2MB, FS: 14MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_14680064.upload.maximum_size=2093056
arduino_nano_connectpicoprobe.menu.flash.16777216_14680064.build.flash_length=2093056
arduino_nano_connectpicoprobe.menu.flash.16777216_14680064.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_14680064.build.fs_start=270528512
arduino_nano_connectpicoprobe.menu.flash.16777216_14680064.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_15728640=16MB (Sketch: 1MB, FS: 15MB)
arduino_nano_connectpicoprobe.menu.flash.16777216_15728640.upload.maximum_size=1044480
arduino_nano_connectpicoprobe.menu.flash.16777216_15728640.build.flash_length=1044480
arduino_nano_connectpicoprobe.menu.flash.16777216_15728640.build.eeprom_start=285208576
arduino_nano_connectpicoprobe.menu.flash.16777216_15728640.build.fs_start=269479936
arduino_nano_connectpicoprobe.menu.flash.16777216_15728640.build.fs_end=285208576
arduino_nano_connectpicoprobe.menu.freq.125=125 MHz
arduino_nano_connectpicoprobe.menu.freq.125.build.f_cpu=125000000L
arduino_nano_connectpicoprobe.menu.freq.50=50 MHz
arduino_nano_connectpicoprobe.menu.freq.50.build.f_cpu=50000000L
arduino_nano_connectpicoprobe.menu.freq.100=100 MHz
arduino_nano_connectpicoprobe.menu.freq.100.build.f_cpu=100000000L
arduino_nano_connectpicoprobe.menu.freq.133=133 MHz
arduino_nano_connectpicoprobe.menu.freq.133.build.f_cpu=133000000L
arduino_nano_connectpicoprobe.menu.freq.150=150 MHz (Overclock)
arduino_nano_connectpicoprobe.menu.freq.150.build.f_cpu=150000000L
arduino_nano_connectpicoprobe.menu.freq.175=175 MHz (Overclock)
arduino_nano_connectpicoprobe.menu.freq.175.build.f_cpu=175000000L
arduino_nano_connectpicoprobe.menu.freq.200=200 MHz (Overclock)
arduino_nano_connectpicoprobe.menu.freq.200.build.f_cpu=200000000L
arduino_nano_connectpicoprobe.menu.freq.225=225 MHz (Overclock)
arduino_nano_connectpicoprobe.menu.freq.225.build.f_cpu=225000000L
arduino_nano_connectpicoprobe.menu.freq.250=250 MHz (Overclock)
arduino_nano_connectpicoprobe.menu.freq.250.build.f_cpu=250000000L
arduino_nano_connectpicoprobe.menu.freq.275=275 MHz (Overclock)
arduino_nano_connectpicoprobe.menu.freq.275.build.f_cpu=275000000L
arduino_nano_connectpicoprobe.menu.freq.300=300 MHz (Overclock)
arduino_nano_connectpicoprobe.menu.freq.300.build.f_cpu=300000000L
arduino_nano_connectpicoprobe.menu.dbgport.Disabled=Disabled
arduino_nano_connectpicoprobe.menu.dbgport.Disabled.build.debug_port=
arduino_nano_connectpicoprobe.menu.dbgport.Serial=Serial
arduino_nano_connectpicoprobe.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial
arduino_nano_connectpicoprobe.menu.dbgport.Serial1=Serial1
arduino_nano_connectpicoprobe.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1
arduino_nano_connectpicoprobe.menu.dbgport.Serial2=Serial2
arduino_nano_connectpicoprobe.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2
arduino_nano_connectpicoprobe.menu.dbglvl.None=None
arduino_nano_connectpicoprobe.menu.dbglvl.None.build.debug_level=
arduino_nano_connectpicoprobe.menu.dbglvl.Core=Core
arduino_nano_connectpicoprobe.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE
arduino_nano_connectpicoprobe.menu.dbglvl.SPI=SPI
arduino_nano_connectpicoprobe.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI
arduino_nano_connectpicoprobe.menu.dbglvl.Wire=Wire
arduino_nano_connectpicoprobe.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE
arduino_nano_connectpicoprobe.menu.dbglvl.All=All
arduino_nano_connectpicoprobe.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE
arduino_nano_connectpicoprobe.menu.dbglvl.NDEBUG=NDEBUG
arduino_nano_connectpicoprobe.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
arduino_nano_connectpicoprobe.menu.usbstack.picosdk=Pico SDK
arduino_nano_connectpicoprobe.menu.usbstack.picosdk.build.usbstack_flags=
arduino_nano_connectpicoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB
arduino_nano_connectpicoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino"
# -----------------------------------
# SparkFun ProMicro RP2040
# -----------------------------------
sparkfun_promicrorp2040.name=SparkFun ProMicro RP2040
sparkfun_promicrorp2040.vid.0=0x1b4f
sparkfun_promicrorp2040.pid.0=0x0026
sparkfun_promicrorp2040.build.usbpid=-DSERIALUSB_PID=0x0026
sparkfun_promicrorp2040.build.board=SPARKFUN_PROMICRO_RP2040
sparkfun_promicrorp2040.build.mcu=cortex-m0plus
sparkfun_promicrorp2040.build.variant=sparkfun_promicrorp2040
sparkfun_promicrorp2040.upload.tool=uf2conv
sparkfun_promicrorp2040.upload.maximum_size=16777216
sparkfun_promicrorp2040.upload.maximum_data_size=262144
sparkfun_promicrorp2040.upload.wait_for_upload_port=true
sparkfun_promicrorp2040.upload.erase_cmd=
sparkfun_promicrorp2040.serial.disableDTR=false
sparkfun_promicrorp2040.serial.disableRTS=false
sparkfun_promicrorp2040.build.f_cpu=125000000
sparkfun_promicrorp2040.build.led=
sparkfun_promicrorp2040.build.core=rp2040
sparkfun_promicrorp2040.build.mcu=rp2040
sparkfun_promicrorp2040.build.ldscript=memmap_default.ld
sparkfun_promicrorp2040.build.boot2=boot2_generic_03h_4_padded_checksum
sparkfun_promicrorp2040.build.vid=0x1b4f
sparkfun_promicrorp2040.build.pid=0x0026
sparkfun_promicrorp2040.build.usb_manufacturer="SparkFun"
sparkfun_promicrorp2040.build.usb_product="ProMicro RP2040"
sparkfun_promicrorp2040.menu.flash.16777216_0=16MB (no FS)
sparkfun_promicrorp2040.menu.flash.16777216_0.upload.maximum_size=16773120
sparkfun_promicrorp2040.menu.flash.16777216_0.build.flash_length=16773120
sparkfun_promicrorp2040.menu.flash.16777216_0.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_0.build.fs_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_0.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_65536=16MB (Sketch: 16320KB, FS: 64KB)
sparkfun_promicrorp2040.menu.flash.16777216_65536.upload.maximum_size=16707584
sparkfun_promicrorp2040.menu.flash.16777216_65536.build.flash_length=16707584
sparkfun_promicrorp2040.menu.flash.16777216_65536.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_65536.build.fs_start=285143040
sparkfun_promicrorp2040.menu.flash.16777216_65536.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_131072=16MB (Sketch: 16256KB, FS: 128KB)
sparkfun_promicrorp2040.menu.flash.16777216_131072.upload.maximum_size=16642048
sparkfun_promicrorp2040.menu.flash.16777216_131072.build.flash_length=16642048
sparkfun_promicrorp2040.menu.flash.16777216_131072.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_131072.build.fs_start=285077504
sparkfun_promicrorp2040.menu.flash.16777216_131072.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_262144=16MB (Sketch: 16128KB, FS: 256KB)
sparkfun_promicrorp2040.menu.flash.16777216_262144.upload.maximum_size=16510976
sparkfun_promicrorp2040.menu.flash.16777216_262144.build.flash_length=16510976
sparkfun_promicrorp2040.menu.flash.16777216_262144.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_262144.build.fs_start=284946432
sparkfun_promicrorp2040.menu.flash.16777216_262144.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_524288=16MB (Sketch: 15872KB, FS: 512KB)
sparkfun_promicrorp2040.menu.flash.16777216_524288.upload.maximum_size=16248832
sparkfun_promicrorp2040.menu.flash.16777216_524288.build.flash_length=16248832
sparkfun_promicrorp2040.menu.flash.16777216_524288.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_524288.build.fs_start=284684288
sparkfun_promicrorp2040.menu.flash.16777216_524288.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_1048576=16MB (Sketch: 15MB, FS: 1MB)
sparkfun_promicrorp2040.menu.flash.16777216_1048576.upload.maximum_size=15724544
sparkfun_promicrorp2040.menu.flash.16777216_1048576.build.flash_length=15724544
sparkfun_promicrorp2040.menu.flash.16777216_1048576.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_1048576.build.fs_start=284160000
sparkfun_promicrorp2040.menu.flash.16777216_1048576.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_2097152=16MB (Sketch: 14MB, FS: 2MB)
sparkfun_promicrorp2040.menu.flash.16777216_2097152.upload.maximum_size=14675968
sparkfun_promicrorp2040.menu.flash.16777216_2097152.build.flash_length=14675968
sparkfun_promicrorp2040.menu.flash.16777216_2097152.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_2097152.build.fs_start=283111424
sparkfun_promicrorp2040.menu.flash.16777216_2097152.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_3145728=16MB (Sketch: 13MB, FS: 3MB)
sparkfun_promicrorp2040.menu.flash.16777216_3145728.upload.maximum_size=13627392
sparkfun_promicrorp2040.menu.flash.16777216_3145728.build.flash_length=13627392
sparkfun_promicrorp2040.menu.flash.16777216_3145728.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_3145728.build.fs_start=282062848
sparkfun_promicrorp2040.menu.flash.16777216_3145728.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_4194304=16MB (Sketch: 12MB, FS: 4MB)
sparkfun_promicrorp2040.menu.flash.16777216_4194304.upload.maximum_size=12578816
sparkfun_promicrorp2040.menu.flash.16777216_4194304.build.flash_length=12578816
sparkfun_promicrorp2040.menu.flash.16777216_4194304.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_4194304.build.fs_start=281014272
sparkfun_promicrorp2040.menu.flash.16777216_4194304.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_5242880=16MB (Sketch: 11MB, FS: 5MB)
sparkfun_promicrorp2040.menu.flash.16777216_5242880.upload.maximum_size=11530240
sparkfun_promicrorp2040.menu.flash.16777216_5242880.build.flash_length=11530240
sparkfun_promicrorp2040.menu.flash.16777216_5242880.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_5242880.build.fs_start=279965696
sparkfun_promicrorp2040.menu.flash.16777216_5242880.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_6291456=16MB (Sketch: 10MB, FS: 6MB)
sparkfun_promicrorp2040.menu.flash.16777216_6291456.upload.maximum_size=10481664
sparkfun_promicrorp2040.menu.flash.16777216_6291456.build.flash_length=10481664
sparkfun_promicrorp2040.menu.flash.16777216_6291456.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_6291456.build.fs_start=278917120
sparkfun_promicrorp2040.menu.flash.16777216_6291456.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_7340032=16MB (Sketch: 9MB, FS: 7MB)
sparkfun_promicrorp2040.menu.flash.16777216_7340032.upload.maximum_size=9433088
sparkfun_promicrorp2040.menu.flash.16777216_7340032.build.flash_length=9433088
sparkfun_promicrorp2040.menu.flash.16777216_7340032.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_7340032.build.fs_start=277868544
sparkfun_promicrorp2040.menu.flash.16777216_7340032.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_8388608=16MB (Sketch: 8MB, FS: 8MB)
sparkfun_promicrorp2040.menu.flash.16777216_8388608.upload.maximum_size=8384512
sparkfun_promicrorp2040.menu.flash.16777216_8388608.build.flash_length=8384512
sparkfun_promicrorp2040.menu.flash.16777216_8388608.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_8388608.build.fs_start=276819968
sparkfun_promicrorp2040.menu.flash.16777216_8388608.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_9437184=16MB (Sketch: 7MB, FS: 9MB)
sparkfun_promicrorp2040.menu.flash.16777216_9437184.upload.maximum_size=7335936
sparkfun_promicrorp2040.menu.flash.16777216_9437184.build.flash_length=7335936
sparkfun_promicrorp2040.menu.flash.16777216_9437184.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_9437184.build.fs_start=275771392
sparkfun_promicrorp2040.menu.flash.16777216_9437184.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_10485760=16MB (Sketch: 6MB, FS: 10MB)
sparkfun_promicrorp2040.menu.flash.16777216_10485760.upload.maximum_size=6287360
sparkfun_promicrorp2040.menu.flash.16777216_10485760.build.flash_length=6287360
sparkfun_promicrorp2040.menu.flash.16777216_10485760.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_10485760.build.fs_start=274722816
sparkfun_promicrorp2040.menu.flash.16777216_10485760.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_11534336=16MB (Sketch: 5MB, FS: 11MB)
sparkfun_promicrorp2040.menu.flash.16777216_11534336.upload.maximum_size=5238784
sparkfun_promicrorp2040.menu.flash.16777216_11534336.build.flash_length=5238784
sparkfun_promicrorp2040.menu.flash.16777216_11534336.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_11534336.build.fs_start=273674240
sparkfun_promicrorp2040.menu.flash.16777216_11534336.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_12582912=16MB (Sketch: 4MB, FS: 12MB)
sparkfun_promicrorp2040.menu.flash.16777216_12582912.upload.maximum_size=4190208
sparkfun_promicrorp2040.menu.flash.16777216_12582912.build.flash_length=4190208
sparkfun_promicrorp2040.menu.flash.16777216_12582912.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_12582912.build.fs_start=272625664
sparkfun_promicrorp2040.menu.flash.16777216_12582912.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_13631488=16MB (Sketch: 3MB, FS: 13MB)
sparkfun_promicrorp2040.menu.flash.16777216_13631488.upload.maximum_size=3141632
sparkfun_promicrorp2040.menu.flash.16777216_13631488.build.flash_length=3141632
sparkfun_promicrorp2040.menu.flash.16777216_13631488.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_13631488.build.fs_start=271577088
sparkfun_promicrorp2040.menu.flash.16777216_13631488.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_14680064=16MB (Sketch: 2MB, FS: 14MB)
sparkfun_promicrorp2040.menu.flash.16777216_14680064.upload.maximum_size=2093056
sparkfun_promicrorp2040.menu.flash.16777216_14680064.build.flash_length=2093056
sparkfun_promicrorp2040.menu.flash.16777216_14680064.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_14680064.build.fs_start=270528512
sparkfun_promicrorp2040.menu.flash.16777216_14680064.build.fs_end=285208576
sparkfun_promicrorp2040.menu.flash.16777216_15728640=16MB (Sketch: 1MB, FS: 15MB)
sparkfun_promicrorp2040.menu.flash.16777216_15728640.upload.maximum_size=1044480
sparkfun_promicrorp2040.menu.flash.16777216_15728640.build.flash_length=1044480
sparkfun_promicrorp2040.menu.flash.16777216_15728640.build.eeprom_start=285208576
sparkfun_promicrorp2040.menu.flash.16777216_15728640.build.fs_start=269479936
sparkfun_promicrorp2040.menu.flash.16777216_15728640.build.fs_end=285208576
sparkfun_promicrorp2040.menu.freq.125=125 MHz
sparkfun_promicrorp2040.menu.freq.125.build.f_cpu=125000000L
sparkfun_promicrorp2040.menu.freq.50=50 MHz
sparkfun_promicrorp2040.menu.freq.50.build.f_cpu=50000000L
sparkfun_promicrorp2040.menu.freq.100=100 MHz
sparkfun_promicrorp2040.menu.freq.100.build.f_cpu=100000000L
sparkfun_promicrorp2040.menu.freq.133=133 MHz
sparkfun_promicrorp2040.menu.freq.133.build.f_cpu=133000000L
sparkfun_promicrorp2040.menu.freq.150=150 MHz (Overclock)
sparkfun_promicrorp2040.menu.freq.150.build.f_cpu=150000000L
sparkfun_promicrorp2040.menu.freq.175=175 MHz (Overclock)
sparkfun_promicrorp2040.menu.freq.175.build.f_cpu=175000000L
sparkfun_promicrorp2040.menu.freq.200=200 MHz (Overclock)
sparkfun_promicrorp2040.menu.freq.200.build.f_cpu=200000000L
sparkfun_promicrorp2040.menu.freq.225=225 MHz (Overclock)
sparkfun_promicrorp2040.menu.freq.225.build.f_cpu=225000000L
sparkfun_promicrorp2040.menu.freq.250=250 MHz (Overclock)
sparkfun_promicrorp2040.menu.freq.250.build.f_cpu=250000000L
sparkfun_promicrorp2040.menu.freq.275=275 MHz (Overclock)
sparkfun_promicrorp2040.menu.freq.275.build.f_cpu=275000000L
sparkfun_promicrorp2040.menu.freq.300=300 MHz (Overclock)
sparkfun_promicrorp2040.menu.freq.300.build.f_cpu=300000000L
sparkfun_promicrorp2040.menu.dbgport.Disabled=Disabled
sparkfun_promicrorp2040.menu.dbgport.Disabled.build.debug_port=
sparkfun_promicrorp2040.menu.dbgport.Serial=Serial
sparkfun_promicrorp2040.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial
sparkfun_promicrorp2040.menu.dbgport.Serial1=Serial1
sparkfun_promicrorp2040.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1
sparkfun_promicrorp2040.menu.dbgport.Serial2=Serial2
sparkfun_promicrorp2040.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2
sparkfun_promicrorp2040.menu.dbglvl.None=None
sparkfun_promicrorp2040.menu.dbglvl.None.build.debug_level=
sparkfun_promicrorp2040.menu.dbglvl.Core=Core
sparkfun_promicrorp2040.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE
sparkfun_promicrorp2040.menu.dbglvl.SPI=SPI
sparkfun_promicrorp2040.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI
sparkfun_promicrorp2040.menu.dbglvl.Wire=Wire
sparkfun_promicrorp2040.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE
sparkfun_promicrorp2040.menu.dbglvl.All=All
sparkfun_promicrorp2040.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE
sparkfun_promicrorp2040.menu.dbglvl.NDEBUG=NDEBUG
sparkfun_promicrorp2040.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
sparkfun_promicrorp2040.menu.usbstack.picosdk=Pico SDK
sparkfun_promicrorp2040.menu.usbstack.picosdk.build.usbstack_flags=
sparkfun_promicrorp2040.menu.usbstack.tinyusb=Adafruit TinyUSB
sparkfun_promicrorp2040.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino"
# -----------------------------------
# SparkFun ProMicro RP2040 (Picoprobe)
# -----------------------------------
sparkfun_promicrorp2040picoprobe.name=SparkFun ProMicro RP2040 (Picoprobe)
sparkfun_promicrorp2040picoprobe.vid.0=0x1b4f
sparkfun_promicrorp2040picoprobe.pid.0=0x0004
sparkfun_promicrorp2040picoprobe.build.usbpid=-DSERIALUSB_PID=0x0026
sparkfun_promicrorp2040picoprobe.build.board=SPARKFUN_PROMICRO_RP2040
sparkfun_promicrorp2040picoprobe.build.mcu=cortex-m0plus
sparkfun_promicrorp2040picoprobe.build.variant=sparkfun_promicrorp2040
sparkfun_promicrorp2040picoprobe.upload.tool=picoprobe
sparkfun_promicrorp2040picoprobe.upload.maximum_size=16777216
sparkfun_promicrorp2040picoprobe.upload.maximum_data_size=262144
sparkfun_promicrorp2040picoprobe.upload.wait_for_upload_port=true
sparkfun_promicrorp2040picoprobe.upload.erase_cmd=
sparkfun_promicrorp2040picoprobe.serial.disableDTR=false
sparkfun_promicrorp2040picoprobe.serial.disableRTS=false
sparkfun_promicrorp2040picoprobe.build.f_cpu=125000000
sparkfun_promicrorp2040picoprobe.build.led=
sparkfun_promicrorp2040picoprobe.build.core=rp2040
sparkfun_promicrorp2040picoprobe.build.mcu=rp2040
sparkfun_promicrorp2040picoprobe.build.ldscript=memmap_default.ld
sparkfun_promicrorp2040picoprobe.build.boot2=boot2_generic_03h_4_padded_checksum
sparkfun_promicrorp2040picoprobe.build.vid=0x1b4f
sparkfun_promicrorp2040picoprobe.build.pid=0x0026
sparkfun_promicrorp2040picoprobe.build.usb_manufacturer="SparkFun"
sparkfun_promicrorp2040picoprobe.build.usb_product="ProMicro RP2040 (Picoprobe)"
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_0=16MB (no FS)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_0.upload.maximum_size=16773120
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_0.build.flash_length=16773120
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_0.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_0.build.fs_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_0.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_65536=16MB (Sketch: 16320KB, FS: 64KB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_65536.upload.maximum_size=16707584
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_65536.build.flash_length=16707584
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_65536.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_65536.build.fs_start=285143040
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_65536.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_131072=16MB (Sketch: 16256KB, FS: 128KB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_131072.upload.maximum_size=16642048
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_131072.build.flash_length=16642048
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_131072.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_131072.build.fs_start=285077504
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_131072.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_262144=16MB (Sketch: 16128KB, FS: 256KB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_262144.upload.maximum_size=16510976
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_262144.build.flash_length=16510976
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_262144.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_262144.build.fs_start=284946432
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_262144.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_524288=16MB (Sketch: 15872KB, FS: 512KB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_524288.upload.maximum_size=16248832
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_524288.build.flash_length=16248832
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_524288.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_524288.build.fs_start=284684288
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_524288.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_1048576=16MB (Sketch: 15MB, FS: 1MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_1048576.upload.maximum_size=15724544
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_1048576.build.flash_length=15724544
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_1048576.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_1048576.build.fs_start=284160000
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_1048576.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_2097152=16MB (Sketch: 14MB, FS: 2MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_2097152.upload.maximum_size=14675968
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_2097152.build.flash_length=14675968
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_2097152.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_2097152.build.fs_start=283111424
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_2097152.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_3145728=16MB (Sketch: 13MB, FS: 3MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_3145728.upload.maximum_size=13627392
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_3145728.build.flash_length=13627392
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_3145728.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_3145728.build.fs_start=282062848
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_3145728.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_4194304=16MB (Sketch: 12MB, FS: 4MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_4194304.upload.maximum_size=12578816
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_4194304.build.flash_length=12578816
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_4194304.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_4194304.build.fs_start=281014272
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_4194304.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_5242880=16MB (Sketch: 11MB, FS: 5MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_5242880.upload.maximum_size=11530240
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_5242880.build.flash_length=11530240
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_5242880.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_5242880.build.fs_start=279965696
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_5242880.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_6291456=16MB (Sketch: 10MB, FS: 6MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_6291456.upload.maximum_size=10481664
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_6291456.build.flash_length=10481664
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_6291456.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_6291456.build.fs_start=278917120
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_6291456.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_7340032=16MB (Sketch: 9MB, FS: 7MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_7340032.upload.maximum_size=9433088
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_7340032.build.flash_length=9433088
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_7340032.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_7340032.build.fs_start=277868544
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_7340032.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_8388608=16MB (Sketch: 8MB, FS: 8MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_8388608.upload.maximum_size=8384512
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_8388608.build.flash_length=8384512
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_8388608.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_8388608.build.fs_start=276819968
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_8388608.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_9437184=16MB (Sketch: 7MB, FS: 9MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_9437184.upload.maximum_size=7335936
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_9437184.build.flash_length=7335936
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_9437184.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_9437184.build.fs_start=275771392
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_9437184.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_10485760=16MB (Sketch: 6MB, FS: 10MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_10485760.upload.maximum_size=6287360
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_10485760.build.flash_length=6287360
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_10485760.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_10485760.build.fs_start=274722816
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_10485760.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_11534336=16MB (Sketch: 5MB, FS: 11MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_11534336.upload.maximum_size=5238784
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_11534336.build.flash_length=5238784
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_11534336.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_11534336.build.fs_start=273674240
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_11534336.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_12582912=16MB (Sketch: 4MB, FS: 12MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_12582912.upload.maximum_size=4190208
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_12582912.build.flash_length=4190208
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_12582912.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_12582912.build.fs_start=272625664
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_12582912.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_13631488=16MB (Sketch: 3MB, FS: 13MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_13631488.upload.maximum_size=3141632
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_13631488.build.flash_length=3141632
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_13631488.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_13631488.build.fs_start=271577088
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_13631488.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_14680064=16MB (Sketch: 2MB, FS: 14MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_14680064.upload.maximum_size=2093056
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_14680064.build.flash_length=2093056
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_14680064.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_14680064.build.fs_start=270528512
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_14680064.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_15728640=16MB (Sketch: 1MB, FS: 15MB)
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_15728640.upload.maximum_size=1044480
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_15728640.build.flash_length=1044480
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_15728640.build.eeprom_start=285208576
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_15728640.build.fs_start=269479936
sparkfun_promicrorp2040picoprobe.menu.flash.16777216_15728640.build.fs_end=285208576
sparkfun_promicrorp2040picoprobe.menu.freq.125=125 MHz
sparkfun_promicrorp2040picoprobe.menu.freq.125.build.f_cpu=125000000L
sparkfun_promicrorp2040picoprobe.menu.freq.50=50 MHz
sparkfun_promicrorp2040picoprobe.menu.freq.50.build.f_cpu=50000000L
sparkfun_promicrorp2040picoprobe.menu.freq.100=100 MHz
sparkfun_promicrorp2040picoprobe.menu.freq.100.build.f_cpu=100000000L
sparkfun_promicrorp2040picoprobe.menu.freq.133=133 MHz
sparkfun_promicrorp2040picoprobe.menu.freq.133.build.f_cpu=133000000L
sparkfun_promicrorp2040picoprobe.menu.freq.150=150 MHz (Overclock)
sparkfun_promicrorp2040picoprobe.menu.freq.150.build.f_cpu=150000000L
sparkfun_promicrorp2040picoprobe.menu.freq.175=175 MHz (Overclock)
sparkfun_promicrorp2040picoprobe.menu.freq.175.build.f_cpu=175000000L
sparkfun_promicrorp2040picoprobe.menu.freq.200=200 MHz (Overclock)
sparkfun_promicrorp2040picoprobe.menu.freq.200.build.f_cpu=200000000L
sparkfun_promicrorp2040picoprobe.menu.freq.225=225 MHz (Overclock)
sparkfun_promicrorp2040picoprobe.menu.freq.225.build.f_cpu=225000000L
sparkfun_promicrorp2040picoprobe.menu.freq.250=250 MHz (Overclock)
sparkfun_promicrorp2040picoprobe.menu.freq.250.build.f_cpu=250000000L
sparkfun_promicrorp2040picoprobe.menu.freq.275=275 MHz (Overclock)
sparkfun_promicrorp2040picoprobe.menu.freq.275.build.f_cpu=275000000L
sparkfun_promicrorp2040picoprobe.menu.freq.300=300 MHz (Overclock)
sparkfun_promicrorp2040picoprobe.menu.freq.300.build.f_cpu=300000000L
sparkfun_promicrorp2040picoprobe.menu.dbgport.Disabled=Disabled
sparkfun_promicrorp2040picoprobe.menu.dbgport.Disabled.build.debug_port=
sparkfun_promicrorp2040picoprobe.menu.dbgport.Serial=Serial
sparkfun_promicrorp2040picoprobe.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial
sparkfun_promicrorp2040picoprobe.menu.dbgport.Serial1=Serial1
sparkfun_promicrorp2040picoprobe.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1
sparkfun_promicrorp2040picoprobe.menu.dbgport.Serial2=Serial2
sparkfun_promicrorp2040picoprobe.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2
sparkfun_promicrorp2040picoprobe.menu.dbglvl.None=None
sparkfun_promicrorp2040picoprobe.menu.dbglvl.None.build.debug_level=
sparkfun_promicrorp2040picoprobe.menu.dbglvl.Core=Core
sparkfun_promicrorp2040picoprobe.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE
sparkfun_promicrorp2040picoprobe.menu.dbglvl.SPI=SPI
sparkfun_promicrorp2040picoprobe.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI
sparkfun_promicrorp2040picoprobe.menu.dbglvl.Wire=Wire
sparkfun_promicrorp2040picoprobe.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE
sparkfun_promicrorp2040picoprobe.menu.dbglvl.All=All
sparkfun_promicrorp2040picoprobe.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE
sparkfun_promicrorp2040picoprobe.menu.dbglvl.NDEBUG=NDEBUG
sparkfun_promicrorp2040picoprobe.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
sparkfun_promicrorp2040picoprobe.menu.usbstack.picosdk=Pico SDK
sparkfun_promicrorp2040picoprobe.menu.usbstack.picosdk.build.usbstack_flags=
sparkfun_promicrorp2040picoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB
sparkfun_promicrorp2040picoprobe.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
# -----------------------------------
+8 -33
View File
@@ -24,16 +24,11 @@
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
// Wacky deprecated AVR compatibility functions
#include "stdlib_noniso.h"
#include "stdlib_noniso.h" // Wacky deprecated AVR compatibility functions
#include "api/ArduinoAPI.h"
#include "api/itoa.h" // ARM toolchain doesn't provide itoa etc, provide them
#include <pins_arduino.h>
// Required for the port*Register macros
#include "hardware/gpio.h"
#include "hardware/gpio.h" // Required for the port*Register macros
#include "debug_internal.h"
// Try and make the best of the old Arduino abs() macro. When in C++, use
@@ -44,8 +39,10 @@
#endif // abs
#ifdef __cplusplus
using std::abs;
using std::round;
#else
#define abs(x) ((x)>0?(x):-(x))
#define abs(x) ({ __typeof__(x) _x = (x); _x >= 0 ? _x : -_x; })
#define round(x) ({ __typeof__(x) _x = (x); _x >= 0 ? (long)(_x + 0.5) : (long)(_x - 0.5); })
#endif
#ifdef __cplusplus
@@ -61,10 +58,6 @@ extern "C" {
void interrupts();
void noInterrupts();
// GPIO change/value interrupts
void attachInterrupt(pin_size_t pin, voidFuncPtr callback, PinStatus mode);
void detachInterrupt(pin_size_t pin);
// AVR compatibility macros...naughty and accesses the HW directly
#define digitalPinToPort(pin) (0)
#define digitalPinToBitMask(pin) (1UL << (pin))
@@ -75,28 +68,14 @@ void detachInterrupt(pin_size_t pin);
#define portInputRegister(port) ((volatile uint32_t*) sio_hw->gpio_in)
#define portModeRegister(port) ((volatile uint32_t*) sio_hw->gpio_oe)
// IO config
void pinMode(pin_size_t pinNumber, PinMode pinMode);
// SIO (GPIO)
void digitalWrite(pin_size_t pinNumber, PinStatus status);
PinStatus digitalRead(pin_size_t pinNumber);
// ADC
int analogRead(pin_size_t pinNumber);
// ADC RP2040-specific calls
float analogReadTemp(); // Returns core temp in Centigrade
// PWM
void analogWrite(pin_size_t pinNumber, int value);
// PWM RP2040-specific calls
void analogWriteFreq(uint32_t freq);
void analogWriteRange(uint32_t range);
void analogWriteResolution(int res);
// Timing
void delay(unsigned long);
void delayMicroseconds(unsigned int us);
unsigned long millis();
#ifdef __cplusplus
} // extern "C"
#endif
@@ -127,8 +106,4 @@ constexpr uint32_t __bitset(const int (&a)[N], size_t i = 0U) {
}
#endif
// ARM toolchain doesn't provide itoa etc, provide them
#include "api/itoa.h"
#endif // Arduino_h
+9 -15
View File
@@ -153,7 +153,8 @@ static uint8_t *GetDescHIDReport(int *len) {
// Invoked when received GET HID REPORT DESCRIPTOR
// Application return pointer to descriptor
// Descriptor contents must exist long enough for transfer to complete
uint8_t const * tud_hid_descriptor_report_cb(void) {
uint8_t const * tud_hid_descriptor_report_cb(uint8_t instance) {
(void) instance;
return GetDescHIDReport(nullptr);
}
@@ -177,7 +178,7 @@ const uint8_t *tud_descriptor_configuration_cb(uint8_t index) {
uint8_t hid_itf = __USBInstallSerial ? 2 : 0;
static uint8_t hid_desc[TUD_HID_DESC_LEN] = {
// Interface number, string index, protocol, report descriptor len, EP In & Out address, size & polling interval
TUD_HID_DESCRIPTOR(hid_itf, 0, HID_PROTOCOL_NONE, hid_report_len, EPNUM_HID, CFG_TUD_HID_EP_BUFSIZE, 10)
TUD_HID_DESCRIPTOR(hid_itf, 0, HID_ITF_PROTOCOL_NONE, hid_report_len, EPNUM_HID, CFG_TUD_HID_EP_BUFSIZE, 10)
};
uint8_t midi_itf = hid_itf + (hasHID ? 1 : 0);
@@ -230,15 +231,7 @@ const uint16_t *tud_descriptor_string_cb(uint8_t index, uint16_t langid) {
};
if (!idString[0]) {
// Get ID string into human readable serial number on the first pass
pico_unique_board_id_t id;
pico_get_unique_board_id(&id);
idString[0] = 0;
for (auto i = 0; i < PICO_UNIQUE_BOARD_ID_SIZE_BYTES; i++) {
char hx[3];
sprintf(hx, "%02X", id.id[i]);
strcat(idString, hx);
}
pico_get_unique_board_id_string(idString, sizeof(idString));
}
uint8_t len;
@@ -296,8 +289,9 @@ void __USBStart() {
// Invoked when received GET_REPORT control request
// Application must fill buffer report's content and return its length.
// Return zero will cause the stack to STALL request
uint16_t tud_hid_get_report_cb(uint8_t report_id, hid_report_type_t report_type, uint8_t* buffer, uint16_t reqlen) {
// TODO not Implemented
extern "C" uint16_t tud_hid_get_report_cb(uint8_t instance, uint8_t report_id, hid_report_type_t report_type, uint8_t* buffer, uint16_t reqlen) {
// TODO not implemented
(void) instance;
(void) report_id;
(void) report_type;
(void) buffer;
@@ -308,8 +302,9 @@ uint16_t tud_hid_get_report_cb(uint8_t report_id, hid_report_type_t report_type,
// Invoked when received SET_REPORT control request or
// received data on OUT endpoint ( Report ID = 0, Type = 0 )
void tud_hid_set_report_cb(uint8_t report_id, hid_report_type_t report_type, uint8_t const* buffer, uint16_t bufsize) {
extern "C" void tud_hid_set_report_cb(uint8_t instance, uint8_t report_id, hid_report_type_t report_type, uint8_t const* buffer, uint16_t bufsize) {
// TODO set LED based on CAPLOCK, NUMLOCK etc...
(void) instance;
(void) report_id;
(void) report_type;
(void) buffer;
@@ -317,4 +312,3 @@ void tud_hid_set_report_cb(uint8_t report_id, hid_report_type_t report_type, uin
}
#endif
+10 -2
View File
@@ -115,7 +115,11 @@ int SerialUART::peek() {
if (_peek >= 0) {
return _peek;
}
_peek = uart_getc(_uart);
if (uart_is_readable_within_us(_uart, _timeout * 1000)) {
_peek = uart_getc(_uart);
} else {
_peek = -1; // Timeout
}
return _peek;
}
@@ -129,7 +133,11 @@ int SerialUART::read() {
_peek = -1;
return ret;
}
return uart_getc(_uart);
if (uart_is_readable_within_us(_uart, _timeout * 1000)) {
return uart_getc(_uart);
} else {
return -1; // Timeout
}
}
int SerialUART::available() {
+1 -1
View File
@@ -70,7 +70,7 @@ int SerialUSB::peek() {
}
uint8_t c;
return tud_cdc_peek(0, &c) ? (int) c : -1;
return tud_cdc_peek(&c) ? (int) c : -1;
}
int SerialUSB::read() {
+1
View File
@@ -88,6 +88,7 @@ void tone(uint8_t pin, unsigned int frequency, unsigned long duration) {
newTone->alarm = 0;
}
}
pio_sm_clear_fifos(newTone->pio, newTone->sm); // Remove any old updates that haven't yet taken effect
pio_sm_put_blocking(newTone->pio, newTone->sm, RP2040::usToPIOCycles(us));
pio_sm_set_enabled(newTone->pio, newTone->sm, true);
+1
View File
@@ -63,6 +63,7 @@ extern "C" void digitalWrite(pin_size_t ulPin, PinStatus ulVal) {
DEBUGCORE("ERROR: Illegal pin in pinMode (%d)\n", ulPin);
return;
}
gpio_set_function(ulPin, GPIO_FUNC_SIO);
if (_pm[ulPin] == INPUT_PULLDOWN) {
if (ulVal == LOW) {
gpio_set_dir(ulPin, false);
+12
View File
@@ -38,3 +38,15 @@ using the SDK, the Arduino core may have issues running properly with
them. In particular, anything involving flash writes (i.e. EEPROM,
filesystems) will probably crash due to CORE1 attempting to read from
flash while CORE0 is writing to it.
PIOASM (Compiling for the PIO processors)
-----------------------------------------
A precompiled version of the PIOASM tool is included in the download
package and can be run from the CLI.
There is also a fully online version of PIOASM that runs in a web
browser without any CLI required, thanks to @jake653: https://wokwi.com/tools/pioasm
(GitHub source: https://github.com/wokwi/pioasm-wasm)
There is also Docker code available for the tool at:
https://github.com/kahara/pioasm-docker
BIN
View File
Binary file not shown.
+3 -3
View File
@@ -12,8 +12,8 @@
#define _PICO_VERSION_H
#define PICO_SDK_VERSION_MAJOR 1
#define PICO_SDK_VERSION_MINOR 1
#define PICO_SDK_VERSION_REVISION 2
#define PICO_SDK_VERSION_STRING "1.1.2"
#define PICO_SDK_VERSION_MINOR 2
#define PICO_SDK_VERSION_REVISION 0
#define PICO_SDK_VERSION_STRING "1.2.0"
#endif
+1
View File
@@ -135,6 +135,7 @@ void Servo::writeMicroseconds(int value) {
value = constrain(value, _minUs, _maxUs);
_valueUs = value;
if (_attached) {
pio_sm_clear_fifos(_pio, _smIdx); // Remove any old updates that haven't yet taken effect
pio_sm_put_blocking(_pio, _smIdx, RP2040::usToPIOCycles(value) / 3);
}
}
+2 -1
View File
@@ -7,7 +7,8 @@ void setup() {
}
void loop() {
for (int i = 100; i < 10000; i += 5) {
for (int i = 100; i < 10000; i += 1) {
tone(TONEPIN, i);
delayMicroseconds(20);
}
}
+22 -1
View File
@@ -23,6 +23,27 @@
{
"name": "Adafruit Feather RP2040"
},
{
"name": "Adafruit ItsyBitsy RP2040"
},
{
"name": "Adafruit Macropad RP2040"
},
{
"name": "Adafruit QTPy RP2040"
},
{
"name": "Adafruit STEMMA Friend RP2040"
},
{
"name": "Adafruit Trinkey RP2040 QT"
},
{
"name": "Arduino Nano RP2040 Connect"
},
{
"name": "SparkFun ProMicro RP2040"
},
{
"name": "Generic RP2040 Module"
}
@@ -405,4 +426,4 @@
]
}
]
}
}
-1
View File
@@ -22,7 +22,6 @@ function skip_ino()
/msc_sdfat/
/msc_sd/
/midi_pizza_box_dj/
/hid_composite_joy_featherwing/
EOL
echo $ino | grep -q -F "$skiplist"
echo $(( 1 - $? ))
+1 -1
View File
@@ -152,7 +152,7 @@ function install_libraries()
# install ArduinoJson library
{ test -r ArduinoJson-v6.11.0.zip || curl -sS --output ArduinoJson-v6.11.0.zip -L https://github.com/bblanchon/ArduinoJson/releases/download/v6.11.0/ArduinoJson-v6.11.0.zip; } && unzip -qo ArduinoJson-v6.11.0.zip
{ test -r Adafruit_SPIFlash-3.4.1.zip || curl -sS --output Adafruit_SPIFlash-3.4.1.zip -L https://github.com/adafruit/Adafruit_SPIFlash/archive/refs/tags/3.4.1.zip; } && unzip -qo Adafruit_SPIFlash-3.4.1.zip
{ test -r Adafruit_Seesaw-1.4.3.zip || curl -sS --output Adafruit_Seesaw-1.4.3.zip -L https://github.com/adafruit/Adafruit_Seesaw/archive/refs/tags/1.4.3.zip; } && unzip -qo Adafruit_Seesaw-1.4.3.zip
{ test -r Adafruit_Seesaw-1.4.4.zip || curl -sS --output Adafruit_Seesaw-1.4.4.zip -L https://github.com/adafruit/Adafruit_Seesaw/archive/refs/tags/1.4.4.zip; } && unzip -qo Adafruit_Seesaw-1.4.4.zip
{ test -r Adafruit_BusIO-1.7.3.zip || curl -sS --output Adafruit_BusIO-1.7.3.zip -L https://github.com/adafruit/Adafruit_BusIO/archive/refs/tags/1.7.3.zip; } && unzip -qo Adafruit_BusIO-1.7.3.zip
{ test -r Adafruit_CircuitPlayground-1.11.3.zip || curl -sS --output Adafruit_CircuitPlayground-1.11.3.zip -L https://github.com/adafruit/Adafruit_CircuitPlayground/archive/refs/tags/1.11.3.zip; } && unzip -qo Adafruit_CircuitPlayground-1.11.3.zip
{ test -r Adafruit_NeoPixel-1.8.1.zip || curl -sS --output Adafruit_NeoPixel-1.8.1.zip -L https://github.com/adafruit/Adafruit_NeoPixel/archive/refs/tags/1.8.1.zip; } && unzip -qo Adafruit_NeoPixel-1.8.1.zip
+2
View File
@@ -126,5 +126,7 @@ MakeBoard("adafruit_qtpy", "Adafruit", "QT Py RP2040", "0x239a", "0x80f7", "ADAF
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("arduino_nano_connect", "Arduino", "Nano RP2040 Connect", "0x2341", "0x0058", "ARDUINO_NANO_RP2040_CONNECT", 16, "boot2_w25q080_2_padded_checksum")
MakeBoard("sparkfun_promicrorp2040", "SparkFun", "ProMicro RP2040", "0x1b4f", "0x0026", "SPARKFUN_PROMICRO_RP2040", 16, "boot2_generic_03h_4_padded_checksum")
MakeBoard("generic", "Generic", "RP2040", "0x2e8a", "0xf00a", "GENERIC_RP2040", 16, "boot2_generic_03h_4_padded_checksum")
@@ -0,0 +1,53 @@
/* Taken from https://github.com/arduino/ArduinoCore-mbed/tree/master/variants/NANO_RP2040_CONNECT */
AnalogPinDescription g_AAnalogPinDescription[] = {
{ p26, NULL }, // A0
{ p27, NULL }, // A1
{ p28, NULL }, // A2
{ p29, NULL }, // A3
};
PinDescription g_APinDescription[] = {
// D0 - D7
{ p1, NULL, NULL, NULL }, // D0
{ p0, NULL, NULL, NULL }, // D1
{ p25, NULL, NULL, NULL }, // D2
{ p15, NULL, NULL, NULL }, // D3
{ p16, NULL, NULL, NULL }, // D4
{ p17, NULL, NULL, NULL }, // D5
{ p18, NULL, NULL, NULL }, // D6
{ p19, NULL, NULL, NULL }, // D7
// D8 - D13
{ p20, NULL, NULL, NULL }, // D8
{ p21, NULL, NULL, NULL }, // D9
{ p5, NULL, NULL, NULL }, // D10
{ p7, NULL, NULL, NULL }, // D11 / SPITX
{ p4, NULL, NULL, NULL }, // D12 / SPIRX
{ p6, NULL, NULL, NULL }, // D13 / SPICLK / LEDB
// Analog as digital
// A4 to A7 are controlled by Nina module and exposed via different APIs
{ p26, NULL, NULL, NULL }, // A0 -> D14
{ p27, NULL, NULL, NULL }, // A1 -> D15
{ p28, NULL, NULL, NULL }, // A2 -> D16
{ p29, NULL, NULL, NULL }, // A3 -> D17
// I2C
{ p12, NULL, NULL, NULL }, // A4 / SDA -> D18
{ p13, NULL, NULL, NULL }, // A5 / SCL -> D19
// Internal pins - D20 - D23
{ p2, NULL, NULL, NULL }, // GPIO0
{ p24, NULL, NULL, NULL }, // IMU IRQ
{ p22, NULL, NULL, NULL }, // PDM DATA IN
{ p23, NULL, NULL, NULL }, // PDM CLOCK
// Internal pins Nina - D24 - D29
{ p3, NULL, NULL, NULL }, // RESET_NINA
{ p8, NULL, NULL, NULL }, // SPI1_CIPO / UART1_TX
{ p9, NULL, NULL, NULL }, // SPI1_CS / UART1_RX
{ p10, NULL, NULL, NULL }, // SPI1_ACK / UART1_CTS
{ p11, NULL, NULL, NULL }, // SPI1_COPI / UART1_RTS
{ p14, NULL, NULL, NULL }, // SPI1_SCK
};
+48
View File
@@ -0,0 +1,48 @@
/* Taken from https://github.com/arduino/ArduinoCore-mbed/tree/master/variants/NANO_RP2040_CONNECT */
#ifndef _NINA_PINS_
#define _NINA_PINS_
/******************************************************************************
* INCLUDE
******************************************************************************/
#include "Arduino.h"
//#include "WiFiNINA.h"
/******************************************************************************
* PREPROCESSOR-MAGIC
******************************************************************************/
#if __has_include("WiFiNINA.h")
# define NINA_ATTRIBUTE
#else
# define NINA_ATTRIBUTE __attribute__ ((error("Please include WiFiNINA.h to use this pin")))
#endif
/******************************************************************************
* TYPEDEF
******************************************************************************/
enum NinaPin {
LEDR = 27,
LEDG = 25,
LEDB = 26//,
//A4 = 34,
//A5 = 39,
//A6 = 36,
//A7 = 35
};
/******************************************************************************
* FUNCTION DECLARATION
******************************************************************************/
void NINA_ATTRIBUTE pinMode (NinaPin pin, PinMode mode);
PinStatus NINA_ATTRIBUTE digitalRead (NinaPin pin);
void NINA_ATTRIBUTE digitalWrite(NinaPin pin, PinStatus value);
int NINA_ATTRIBUTE analogRead (NinaPin pin);
void NINA_ATTRIBUTE analogWrite (NinaPin pin, int value);
#undef NINA_ATTRIBUTE
#endif /* _NINA_PINS_ */
@@ -0,0 +1,115 @@
/* Taken from https://github.com/arduino/ArduinoCore-mbed/tree/master/variants/NANO_RP2040_CONNECT */
#pragma once
// Pin definitions taken from:
// https://datasheets.raspberrypi.org/pico/pico-datasheet.pdf
static const uint8_t D0 = (1u);
static const uint8_t D1 = (0u);
static const uint8_t D2 = (25u);
static const uint8_t D3 = (15u);
static const uint8_t D4 = (16u);
static const uint8_t D5 = (17u);
static const uint8_t D6 = (18u);
static const uint8_t D7 = (19u);
static const uint8_t D8 = (20u);
static const uint8_t D9 = (21u);
static const uint8_t D10 = (5u);
static const uint8_t D11 = (7u);
static const uint8_t D12 = (4u);
static const uint8_t D13 = (6u);
static const uint8_t D14 = (26u);
static const uint8_t D15 = (27u);
static const uint8_t D16 = (28u);
static const uint8_t D17 = (29u);
static const uint8_t D18 = (12u);
static const uint8_t D19 = (13u);
static const uint8_t D20 = (2u);
static const uint8_t D21 = (24u);
static const uint8_t D22 = (22u);
static const uint8_t D23 = (23u);
static const uint8_t D24 = (3u);
static const uint8_t D25 = (8u);
static const uint8_t D26 = (9u);
static const uint8_t D27 = (10u);
static const uint8_t D28 = (11u);
static const uint8_t D29 = (14u);
static const uint8_t A0 = (26u);
static const uint8_t A1 = (27u);
static const uint8_t A2 = (28u);
static const uint8_t A3 = (29u);
static const uint8_t A4 = (12u);
static const uint8_t A5 = (13u);
// LEDs
#define PIN_LED (D13)
// Serial
#define PIN_SERIAL1_TX (D1)
#define PIN_SERIAL1_RX (D0)
#define PIN_SERIAL2_TX (D25)
#define PIN_SERIAL2_RX (D26)
// SPI
#define PIN_SPI0_MISO (D12)
#define PIN_SPI0_MOSI (D11)
#define PIN_SPI0_SCK (D13)
#define PIN_SPI0_SS (13u)//(D10)
#define PIN_SPI1_MISO (D25)
#define PIN_SPI1_MOSI (D28)
#define PIN_SPI1_SCK (D29)
#define PIN_SPI1_SS (13u)
// 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 SERIAL_HOWMANY (3u)
#define SPI_HOWMANY (2u)
#define WIRE_HOWMANY (1u)
#define PINS_COUNT (30u)
#define NUM_DIGITAL_PINS (30u)
#define NUM_ANALOG_INPUTS (4u)
#define NUM_ANALOG_OUTPUTS (0u)
#define ADC_RESOLUTION (12u)
#define LED_BUILTIN PIN_LED
#define DigitalPinToPinName(p) (p)
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;
//Nina support
#define NINA_RESETN (D24)
#define SerialNina Serial3
#define SerialHCI Serial2
//#define NINA_GPIOIRQ (21u) // LEDG pin (GPIO26 on NINA)
#define NINA_GPIO0 (20u) // real GPIO0 on NINA
#define SPIWIFI_SS (D26)
#define SPIWIFI_ACK (D27)
#define SPIWIFI_RESET (NINA_RESETN)
#define SPIWIFI (SPI1)
//Cose copiate a caso
#define SERIAL_PORT_USBVIRTUAL SerialUSB
#define SERIAL_PORT_MONITOR SerialUSB
#define SERIAL_PORT_HARDWARE Serial1
#define SERIAL_PORT_HARDWARE_OPEN Serial2
#define CRYPTO_WIRE Wire
#define USB_MAX_POWER (500)
#include "nina_pins.h"
@@ -0,0 +1,37 @@
#pragma once
// Taken from schematic at https://cdn.sparkfun.com/assets/e/2/7/6/b/ProMicroRP2040_Graphical_Datasheet.pdf
// LEDs
#define PIN_LED (25u)
#define PIN_NEOPIXEL (25)
#define NUM_NEOPIXEL (1)
// UARTs
#define PIN_SERIAL1_TX (0u)
#define PIN_SERIAL1_RX (1u)
#define PIN_SERIAL2_TX (8u)
#define PIN_SERIAL2_RX (9u)
// SPI
#define PIN_SPI0_MISO (20u)
#define PIN_SPI0_MOSI (23u)
#define PIN_SPI0_SCK (22u)
#define PIN_SPI0_SS (21u)
#define PIN_SPI1_MISO (31u)
#define PIN_SPI1_MOSI (31u)
#define PIN_SPI1_SCK (31u)
#define PIN_SPI1_SS (31u) // not pinned out
// Wire
#define PIN_WIRE0_SDA (16u)
#define PIN_WIRE0_SCL (17u)
#define PIN_WIRE1_SDA (31u)
#define PIN_WIRE1_SCL (31u)
#define SERIAL_HOWMANY (3u)
#define SPI_HOWMANY (1u)
#define WIRE_HOWMANY (1u)
#include "../generic/common.h"