Compare commits

...
16 Commits
Author SHA1 Message Date
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
Earle F. Philhower, III f87ccacdb1 Upgrade to GCC 10.3. Fix OpenOCD packaging (#194)
GCC 10.2 has a bug which causes Windows to rebuild every library on every
compile, instead of caching the first results.

Upgrade to GCC 10.3 which has this fixed.

Add proper OpenOCD executables for non-Linux x86_64 archs.
2021-06-06 22:43:26 -07:00
Limor "Ladyada" Friedandhathach d2a2fcb89d Add a new board - the Adafruit Macropad w/RP2040 (#191)
* add two variant files

* add trinkey and stemma friend

* add fast SPI transfer using pico-sdk blocks

* update makeboards.py for new variants

- STEMMA Friend RP2040
- Trinkey RP2040 QT

* run astyle on SPI library

* fix auto -> ssize type

* astyled

* woops ssizet != sizet!

* a nice day for a new board definition! this is a macropad with 12 keys, oled and rotary encoder

Co-authored-by: hathach <thach@tinyusb.org>
2021-06-06 12:53:06 -07:00
20 changed files with 992 additions and 207 deletions
+6 -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,11 @@ 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
* SparkFun ProMicro RP2040
* Generic (configurable flash, I/O pins)
# Installing via Arduino Boards Manager
+680
View File
@@ -1686,6 +1686,686 @@ adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.picosdk.build.usbstack_flags=
adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB
adafruit_trinkeyrp2040qtpicoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino"
# -----------------------------------
# Adafruit MacroPad RP2040
# -----------------------------------
adafruit_macropad2040.name=Adafruit MacroPad RP2040
adafruit_macropad2040.vid.0=0x239a
adafruit_macropad2040.pid.0=0x8107
adafruit_macropad2040.build.usbpid=-DSERIALUSB_PID=0x8107
adafruit_macropad2040.build.board=ADAFRUIT_MACROPAD_RP2040
adafruit_macropad2040.build.mcu=cortex-m0plus
adafruit_macropad2040.build.variant=adafruit_macropad2040
adafruit_macropad2040.upload.tool=uf2conv
adafruit_macropad2040.upload.maximum_size=8388608
adafruit_macropad2040.upload.maximum_data_size=262144
adafruit_macropad2040.upload.wait_for_upload_port=true
adafruit_macropad2040.upload.erase_cmd=
adafruit_macropad2040.serial.disableDTR=false
adafruit_macropad2040.serial.disableRTS=false
adafruit_macropad2040.build.f_cpu=125000000
adafruit_macropad2040.build.led=
adafruit_macropad2040.build.core=rp2040
adafruit_macropad2040.build.mcu=rp2040
adafruit_macropad2040.build.ldscript=memmap_default.ld
adafruit_macropad2040.build.boot2=boot2_w25q080_2_padded_checksum
adafruit_macropad2040.build.vid=0x239a
adafruit_macropad2040.build.pid=0x8107
adafruit_macropad2040.build.usb_manufacturer="Adafruit"
adafruit_macropad2040.build.usb_product="MacroPad RP2040"
adafruit_macropad2040.menu.flash.8388608_0=8MB (no FS)
adafruit_macropad2040.menu.flash.8388608_0.upload.maximum_size=8384512
adafruit_macropad2040.menu.flash.8388608_0.build.flash_length=8384512
adafruit_macropad2040.menu.flash.8388608_0.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_0.build.fs_start=276819968
adafruit_macropad2040.menu.flash.8388608_0.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB)
adafruit_macropad2040.menu.flash.8388608_65536.upload.maximum_size=8318976
adafruit_macropad2040.menu.flash.8388608_65536.build.flash_length=8318976
adafruit_macropad2040.menu.flash.8388608_65536.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_65536.build.fs_start=276754432
adafruit_macropad2040.menu.flash.8388608_65536.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB)
adafruit_macropad2040.menu.flash.8388608_131072.upload.maximum_size=8253440
adafruit_macropad2040.menu.flash.8388608_131072.build.flash_length=8253440
adafruit_macropad2040.menu.flash.8388608_131072.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_131072.build.fs_start=276688896
adafruit_macropad2040.menu.flash.8388608_131072.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB)
adafruit_macropad2040.menu.flash.8388608_262144.upload.maximum_size=8122368
adafruit_macropad2040.menu.flash.8388608_262144.build.flash_length=8122368
adafruit_macropad2040.menu.flash.8388608_262144.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_262144.build.fs_start=276557824
adafruit_macropad2040.menu.flash.8388608_262144.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB)
adafruit_macropad2040.menu.flash.8388608_524288.upload.maximum_size=7860224
adafruit_macropad2040.menu.flash.8388608_524288.build.flash_length=7860224
adafruit_macropad2040.menu.flash.8388608_524288.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_524288.build.fs_start=276295680
adafruit_macropad2040.menu.flash.8388608_524288.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB)
adafruit_macropad2040.menu.flash.8388608_1048576.upload.maximum_size=7335936
adafruit_macropad2040.menu.flash.8388608_1048576.build.flash_length=7335936
adafruit_macropad2040.menu.flash.8388608_1048576.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_1048576.build.fs_start=275771392
adafruit_macropad2040.menu.flash.8388608_1048576.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB)
adafruit_macropad2040.menu.flash.8388608_2097152.upload.maximum_size=6287360
adafruit_macropad2040.menu.flash.8388608_2097152.build.flash_length=6287360
adafruit_macropad2040.menu.flash.8388608_2097152.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_2097152.build.fs_start=274722816
adafruit_macropad2040.menu.flash.8388608_2097152.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB)
adafruit_macropad2040.menu.flash.8388608_3145728.upload.maximum_size=5238784
adafruit_macropad2040.menu.flash.8388608_3145728.build.flash_length=5238784
adafruit_macropad2040.menu.flash.8388608_3145728.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_3145728.build.fs_start=273674240
adafruit_macropad2040.menu.flash.8388608_3145728.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB)
adafruit_macropad2040.menu.flash.8388608_4194304.upload.maximum_size=4190208
adafruit_macropad2040.menu.flash.8388608_4194304.build.flash_length=4190208
adafruit_macropad2040.menu.flash.8388608_4194304.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_4194304.build.fs_start=272625664
adafruit_macropad2040.menu.flash.8388608_4194304.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB)
adafruit_macropad2040.menu.flash.8388608_5242880.upload.maximum_size=3141632
adafruit_macropad2040.menu.flash.8388608_5242880.build.flash_length=3141632
adafruit_macropad2040.menu.flash.8388608_5242880.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_5242880.build.fs_start=271577088
adafruit_macropad2040.menu.flash.8388608_5242880.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB)
adafruit_macropad2040.menu.flash.8388608_6291456.upload.maximum_size=2093056
adafruit_macropad2040.menu.flash.8388608_6291456.build.flash_length=2093056
adafruit_macropad2040.menu.flash.8388608_6291456.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_6291456.build.fs_start=270528512
adafruit_macropad2040.menu.flash.8388608_6291456.build.fs_end=276819968
adafruit_macropad2040.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB)
adafruit_macropad2040.menu.flash.8388608_7340032.upload.maximum_size=1044480
adafruit_macropad2040.menu.flash.8388608_7340032.build.flash_length=1044480
adafruit_macropad2040.menu.flash.8388608_7340032.build.eeprom_start=276819968
adafruit_macropad2040.menu.flash.8388608_7340032.build.fs_start=269479936
adafruit_macropad2040.menu.flash.8388608_7340032.build.fs_end=276819968
adafruit_macropad2040.menu.freq.125=125 MHz
adafruit_macropad2040.menu.freq.125.build.f_cpu=125000000L
adafruit_macropad2040.menu.freq.50=50 MHz
adafruit_macropad2040.menu.freq.50.build.f_cpu=50000000L
adafruit_macropad2040.menu.freq.100=100 MHz
adafruit_macropad2040.menu.freq.100.build.f_cpu=100000000L
adafruit_macropad2040.menu.freq.133=133 MHz
adafruit_macropad2040.menu.freq.133.build.f_cpu=133000000L
adafruit_macropad2040.menu.freq.150=150 MHz (Overclock)
adafruit_macropad2040.menu.freq.150.build.f_cpu=150000000L
adafruit_macropad2040.menu.freq.175=175 MHz (Overclock)
adafruit_macropad2040.menu.freq.175.build.f_cpu=175000000L
adafruit_macropad2040.menu.freq.200=200 MHz (Overclock)
adafruit_macropad2040.menu.freq.200.build.f_cpu=200000000L
adafruit_macropad2040.menu.freq.225=225 MHz (Overclock)
adafruit_macropad2040.menu.freq.225.build.f_cpu=225000000L
adafruit_macropad2040.menu.freq.250=250 MHz (Overclock)
adafruit_macropad2040.menu.freq.250.build.f_cpu=250000000L
adafruit_macropad2040.menu.freq.275=275 MHz (Overclock)
adafruit_macropad2040.menu.freq.275.build.f_cpu=275000000L
adafruit_macropad2040.menu.freq.300=300 MHz (Overclock)
adafruit_macropad2040.menu.freq.300.build.f_cpu=300000000L
adafruit_macropad2040.menu.dbgport.Disabled=Disabled
adafruit_macropad2040.menu.dbgport.Disabled.build.debug_port=
adafruit_macropad2040.menu.dbgport.Serial=Serial
adafruit_macropad2040.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial
adafruit_macropad2040.menu.dbgport.Serial1=Serial1
adafruit_macropad2040.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1
adafruit_macropad2040.menu.dbgport.Serial2=Serial2
adafruit_macropad2040.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2
adafruit_macropad2040.menu.dbglvl.None=None
adafruit_macropad2040.menu.dbglvl.None.build.debug_level=
adafruit_macropad2040.menu.dbglvl.Core=Core
adafruit_macropad2040.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE
adafruit_macropad2040.menu.dbglvl.SPI=SPI
adafruit_macropad2040.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI
adafruit_macropad2040.menu.dbglvl.Wire=Wire
adafruit_macropad2040.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE
adafruit_macropad2040.menu.dbglvl.All=All
adafruit_macropad2040.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE
adafruit_macropad2040.menu.dbglvl.NDEBUG=NDEBUG
adafruit_macropad2040.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
adafruit_macropad2040.menu.usbstack.picosdk=Pico SDK
adafruit_macropad2040.menu.usbstack.picosdk.build.usbstack_flags=
adafruit_macropad2040.menu.usbstack.tinyusb=Adafruit TinyUSB
adafruit_macropad2040.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino"
# -----------------------------------
# Adafruit MacroPad RP2040 (Picoprobe)
# -----------------------------------
adafruit_macropad2040picoprobe.name=Adafruit MacroPad RP2040 (Picoprobe)
adafruit_macropad2040picoprobe.vid.0=0x239a
adafruit_macropad2040picoprobe.pid.0=0x0004
adafruit_macropad2040picoprobe.build.usbpid=-DSERIALUSB_PID=0x8107
adafruit_macropad2040picoprobe.build.board=ADAFRUIT_MACROPAD_RP2040
adafruit_macropad2040picoprobe.build.mcu=cortex-m0plus
adafruit_macropad2040picoprobe.build.variant=adafruit_macropad2040
adafruit_macropad2040picoprobe.upload.tool=picoprobe
adafruit_macropad2040picoprobe.upload.maximum_size=8388608
adafruit_macropad2040picoprobe.upload.maximum_data_size=262144
adafruit_macropad2040picoprobe.upload.wait_for_upload_port=true
adafruit_macropad2040picoprobe.upload.erase_cmd=
adafruit_macropad2040picoprobe.serial.disableDTR=false
adafruit_macropad2040picoprobe.serial.disableRTS=false
adafruit_macropad2040picoprobe.build.f_cpu=125000000
adafruit_macropad2040picoprobe.build.led=
adafruit_macropad2040picoprobe.build.core=rp2040
adafruit_macropad2040picoprobe.build.mcu=rp2040
adafruit_macropad2040picoprobe.build.ldscript=memmap_default.ld
adafruit_macropad2040picoprobe.build.boot2=boot2_w25q080_2_padded_checksum
adafruit_macropad2040picoprobe.build.vid=0x239a
adafruit_macropad2040picoprobe.build.pid=0x8107
adafruit_macropad2040picoprobe.build.usb_manufacturer="Adafruit"
adafruit_macropad2040picoprobe.build.usb_product="MacroPad RP2040 (Picoprobe)"
adafruit_macropad2040picoprobe.menu.flash.8388608_0=8MB (no FS)
adafruit_macropad2040picoprobe.menu.flash.8388608_0.upload.maximum_size=8384512
adafruit_macropad2040picoprobe.menu.flash.8388608_0.build.flash_length=8384512
adafruit_macropad2040picoprobe.menu.flash.8388608_0.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_0.build.fs_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_0.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_65536=8MB (Sketch: 8128KB, FS: 64KB)
adafruit_macropad2040picoprobe.menu.flash.8388608_65536.upload.maximum_size=8318976
adafruit_macropad2040picoprobe.menu.flash.8388608_65536.build.flash_length=8318976
adafruit_macropad2040picoprobe.menu.flash.8388608_65536.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_65536.build.fs_start=276754432
adafruit_macropad2040picoprobe.menu.flash.8388608_65536.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_131072=8MB (Sketch: 8064KB, FS: 128KB)
adafruit_macropad2040picoprobe.menu.flash.8388608_131072.upload.maximum_size=8253440
adafruit_macropad2040picoprobe.menu.flash.8388608_131072.build.flash_length=8253440
adafruit_macropad2040picoprobe.menu.flash.8388608_131072.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_131072.build.fs_start=276688896
adafruit_macropad2040picoprobe.menu.flash.8388608_131072.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_262144=8MB (Sketch: 7936KB, FS: 256KB)
adafruit_macropad2040picoprobe.menu.flash.8388608_262144.upload.maximum_size=8122368
adafruit_macropad2040picoprobe.menu.flash.8388608_262144.build.flash_length=8122368
adafruit_macropad2040picoprobe.menu.flash.8388608_262144.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_262144.build.fs_start=276557824
adafruit_macropad2040picoprobe.menu.flash.8388608_262144.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_524288=8MB (Sketch: 7680KB, FS: 512KB)
adafruit_macropad2040picoprobe.menu.flash.8388608_524288.upload.maximum_size=7860224
adafruit_macropad2040picoprobe.menu.flash.8388608_524288.build.flash_length=7860224
adafruit_macropad2040picoprobe.menu.flash.8388608_524288.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_524288.build.fs_start=276295680
adafruit_macropad2040picoprobe.menu.flash.8388608_524288.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_1048576=8MB (Sketch: 7MB, FS: 1MB)
adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.upload.maximum_size=7335936
adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.build.flash_length=7335936
adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.build.fs_start=275771392
adafruit_macropad2040picoprobe.menu.flash.8388608_1048576.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_2097152=8MB (Sketch: 6MB, FS: 2MB)
adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.upload.maximum_size=6287360
adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.build.flash_length=6287360
adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.build.fs_start=274722816
adafruit_macropad2040picoprobe.menu.flash.8388608_2097152.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_3145728=8MB (Sketch: 5MB, FS: 3MB)
adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.upload.maximum_size=5238784
adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.build.flash_length=5238784
adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.build.fs_start=273674240
adafruit_macropad2040picoprobe.menu.flash.8388608_3145728.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_4194304=8MB (Sketch: 4MB, FS: 4MB)
adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.upload.maximum_size=4190208
adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.build.flash_length=4190208
adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.build.fs_start=272625664
adafruit_macropad2040picoprobe.menu.flash.8388608_4194304.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_5242880=8MB (Sketch: 3MB, FS: 5MB)
adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.upload.maximum_size=3141632
adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.build.flash_length=3141632
adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.build.fs_start=271577088
adafruit_macropad2040picoprobe.menu.flash.8388608_5242880.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_6291456=8MB (Sketch: 2MB, FS: 6MB)
adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.upload.maximum_size=2093056
adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.build.flash_length=2093056
adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.build.fs_start=270528512
adafruit_macropad2040picoprobe.menu.flash.8388608_6291456.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_7340032=8MB (Sketch: 1MB, FS: 7MB)
adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.upload.maximum_size=1044480
adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.build.flash_length=1044480
adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.build.eeprom_start=276819968
adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.build.fs_start=269479936
adafruit_macropad2040picoprobe.menu.flash.8388608_7340032.build.fs_end=276819968
adafruit_macropad2040picoprobe.menu.freq.125=125 MHz
adafruit_macropad2040picoprobe.menu.freq.125.build.f_cpu=125000000L
adafruit_macropad2040picoprobe.menu.freq.50=50 MHz
adafruit_macropad2040picoprobe.menu.freq.50.build.f_cpu=50000000L
adafruit_macropad2040picoprobe.menu.freq.100=100 MHz
adafruit_macropad2040picoprobe.menu.freq.100.build.f_cpu=100000000L
adafruit_macropad2040picoprobe.menu.freq.133=133 MHz
adafruit_macropad2040picoprobe.menu.freq.133.build.f_cpu=133000000L
adafruit_macropad2040picoprobe.menu.freq.150=150 MHz (Overclock)
adafruit_macropad2040picoprobe.menu.freq.150.build.f_cpu=150000000L
adafruit_macropad2040picoprobe.menu.freq.175=175 MHz (Overclock)
adafruit_macropad2040picoprobe.menu.freq.175.build.f_cpu=175000000L
adafruit_macropad2040picoprobe.menu.freq.200=200 MHz (Overclock)
adafruit_macropad2040picoprobe.menu.freq.200.build.f_cpu=200000000L
adafruit_macropad2040picoprobe.menu.freq.225=225 MHz (Overclock)
adafruit_macropad2040picoprobe.menu.freq.225.build.f_cpu=225000000L
adafruit_macropad2040picoprobe.menu.freq.250=250 MHz (Overclock)
adafruit_macropad2040picoprobe.menu.freq.250.build.f_cpu=250000000L
adafruit_macropad2040picoprobe.menu.freq.275=275 MHz (Overclock)
adafruit_macropad2040picoprobe.menu.freq.275.build.f_cpu=275000000L
adafruit_macropad2040picoprobe.menu.freq.300=300 MHz (Overclock)
adafruit_macropad2040picoprobe.menu.freq.300.build.f_cpu=300000000L
adafruit_macropad2040picoprobe.menu.dbgport.Disabled=Disabled
adafruit_macropad2040picoprobe.menu.dbgport.Disabled.build.debug_port=
adafruit_macropad2040picoprobe.menu.dbgport.Serial=Serial
adafruit_macropad2040picoprobe.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial
adafruit_macropad2040picoprobe.menu.dbgport.Serial1=Serial1
adafruit_macropad2040picoprobe.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1
adafruit_macropad2040picoprobe.menu.dbgport.Serial2=Serial2
adafruit_macropad2040picoprobe.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2
adafruit_macropad2040picoprobe.menu.dbglvl.None=None
adafruit_macropad2040picoprobe.menu.dbglvl.None.build.debug_level=
adafruit_macropad2040picoprobe.menu.dbglvl.Core=Core
adafruit_macropad2040picoprobe.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE
adafruit_macropad2040picoprobe.menu.dbglvl.SPI=SPI
adafruit_macropad2040picoprobe.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI
adafruit_macropad2040picoprobe.menu.dbglvl.Wire=Wire
adafruit_macropad2040picoprobe.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE
adafruit_macropad2040picoprobe.menu.dbglvl.All=All
adafruit_macropad2040picoprobe.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE
adafruit_macropad2040picoprobe.menu.dbglvl.NDEBUG=NDEBUG
adafruit_macropad2040picoprobe.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG
adafruit_macropad2040picoprobe.menu.usbstack.picosdk=Pico SDK
adafruit_macropad2040picoprobe.menu.usbstack.picosdk.build.usbstack_flags=
adafruit_macropad2040picoprobe.menu.usbstack.tinyusb=Adafruit TinyUSB
adafruit_macropad2040picoprobe.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{build.core.path}/TinyUSB" "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino"
# -----------------------------------
# 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);
}
}
+165 -147
View File
@@ -23,6 +23,24 @@
{
"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": "SparkFun ProMicro RP2040"
},
{
"name": "Generic RP2040 Module"
}
@@ -30,22 +48,22 @@
"toolsDependencies": [
{
"packager": "rp2040",
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-gcc"
},
{
"packager": "rp2040",
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-mklittlefs"
},
{
"packager": "rp2040",
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-elf2uf2"
},
{
"packager": "rp2040",
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-pioasm"
},
{
@@ -55,7 +73,7 @@
},
{
"packager": "rp2040",
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-openocd"
}
],
@@ -66,57 +84,57 @@
],
"tools": [
{
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-openocd",
"systems": [
{
"host": "aarch64-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/aarch64-linux-gnu.openocd-d58c2ef5e.210328.tar.gz",
"archiveFileName": "aarch64-linux-gnu.openocd-d58c2ef5e.210328.tar.gz",
"checksum": "SHA-256:5064727a074c8bc8dff988e82bc2460c5f5610a04ec0a61ba233bdabe0499a24",
"size": "6075189"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/aarch64-linux-gnu.openocd-d58c2ef5e.210607.tar.gz",
"archiveFileName": "aarch64-linux-gnu.openocd-d58c2ef5e.210607.tar.gz",
"checksum": "SHA-256:a85f1df05614ac0bba3742df0aa36b0a87b9bbef0fbadd4d0ccfa1938801ae98",
"size": "6144933"
},
{
"host": "arm-linux-gnueabihf",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/arm-linux-gnueabihf.openocd-d58c2ef5e.210328.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.openocd-d58c2ef5e.210328.tar.gz",
"checksum": "SHA-256:12e61ebe727cb188fab25af174f0696ef86d629701f03f189965a725bd51275b",
"size": "6076094"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/arm-linux-gnueabihf.openocd-d58c2ef5e.210607.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.openocd-d58c2ef5e.210607.tar.gz",
"checksum": "SHA-256:f79ffe70110512ce41c61477910e33fa5ef986fbc142aedfd89f7009f132b237",
"size": "5849262"
},
{
"host": "i686-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-linux-gnu.openocd-d58c2ef5e.210328.tar.gz",
"archiveFileName": "i686-linux-gnu.openocd-d58c2ef5e.210328.tar.gz",
"checksum": "SHA-256:eaa89ac30556aaed5cd09fff4f46435f5a79c58d2060069db7606f9ecc9529ef",
"size": "6076262"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-linux-gnu.openocd-d58c2ef5e.210607.tar.gz",
"archiveFileName": "i686-linux-gnu.openocd-d58c2ef5e.210607.tar.gz",
"checksum": "SHA-256:b4a8af73539ae2e2a653f8fbe029a5b52db80580c942f0399cafb7d3829498c0",
"size": "5651754"
},
{
"host": "i686-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-w64-mingw32.openocd-d58c2ef5e.210328.zip",
"archiveFileName": "i686-w64-mingw32.openocd-d58c2ef5e.210328.zip",
"checksum": "SHA-256:65b8c96b94f1cc3ff13eb853138efb3a465150fb02d07c792f8b235d43b05061",
"size": "6378934"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-w64-mingw32.openocd-d58c2ef5e.210607.zip",
"archiveFileName": "i686-w64-mingw32.openocd-d58c2ef5e.210607.zip",
"checksum": "SHA-256:7156af6e650df6fc4bfc8541f2f1fd05bfe136b3547b4a0aef91668af88f8b6d",
"size": "8330281"
},
{
"host": "x86_64-apple-darwin",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-apple-darwin14.openocd-d58c2ef5e.210328.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.openocd-d58c2ef5e.210328.tar.gz",
"checksum": "SHA-256:b8a759d7ac20643641285b0b05473b853e50739dd254b2294f5d1802ff0e15ca",
"size": "6076324"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-apple-darwin14.openocd-d58c2ef5e.210607.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.openocd-d58c2ef5e.210607.tar.gz",
"checksum": "SHA-256:965e35faf4a93396c4f4a22a504fd6b4f639752922996447d5c1e0e65d7329de",
"size": "1981786"
},
{
"host": "x86_64-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-linux-gnu.openocd-d58c2ef5e.210328.tar.gz",
"archiveFileName": "x86_64-linux-gnu.openocd-d58c2ef5e.210328.tar.gz",
"checksum": "SHA-256:9ff31fc92d6f86503d1750d009fec7e7c8c185c7956b140c4b78ee029d31c19c",
"size": "6076342"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-linux-gnu.openocd-d58c2ef5e.210607.tar.gz",
"archiveFileName": "x86_64-linux-gnu.openocd-d58c2ef5e.210607.tar.gz",
"checksum": "SHA-256:c54390c9464bcf2a32265ecbafaec6d68cdd41471fa14ba4afabe43fe0a11645",
"size": "6076479"
},
{
"host": "x86_64-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-w64-mingw32.openocd-d58c2ef5e.210328.zip",
"archiveFileName": "x86_64-w64-mingw32.openocd-d58c2ef5e.210328.zip",
"checksum": "SHA-256:8f1ddd64b0a6f83f94437d509bb28cdd45ad481bb161c170d57a6736f75087ec",
"size": "6378956"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-w64-mingw32.openocd-d58c2ef5e.210607.zip",
"archiveFileName": "x86_64-w64-mingw32.openocd-d58c2ef5e.210607.zip",
"checksum": "SHA-256:4b481449371b39b4e0e87bd5e5a247f99c025b97ccd186c3b1ca58ff2cb44875",
"size": "8719676"
}
]
},
@@ -183,221 +201,221 @@
]
},
{
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-gcc",
"systems": [
{
"host": "aarch64-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/aarch64-linux-gnu.arm-none-eabi-81a1771.210328.tar.gz",
"archiveFileName": "aarch64-linux-gnu.arm-none-eabi-81a1771.210328.tar.gz",
"checksum": "SHA-256:04eaa4a1c0596b1a47252150323af0a4def791cb9da20634872becbdbdfef979",
"size": "101469960"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/aarch64-linux-gnu.arm-none-eabi-407f016.210607.tar.gz",
"archiveFileName": "aarch64-linux-gnu.arm-none-eabi-407f016.210607.tar.gz",
"checksum": "SHA-256:fc30b07b98fe965db814178b71f368895790f6789d503d71c8af70ff92451d5c",
"size": "103186508"
},
{
"host": "arm-linux-gnueabihf",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/arm-linux-gnueabihf.arm-none-eabi-81a1771.210328.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.arm-none-eabi-81a1771.210328.tar.gz",
"checksum": "SHA-256:43e739a2219ef9e9d16d1c81d4252c22a7392315325046d450542a3df6b35b96",
"size": "94164344"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/arm-linux-gnueabihf.arm-none-eabi-407f016.210607.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.arm-none-eabi-407f016.210607.tar.gz",
"checksum": "SHA-256:4a6ecfaf485ab428e233cc06e853b91dc272146ca0200fbbcdcb87f1930239b8",
"size": "95858053"
},
{
"host": "i686-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-linux-gnu.arm-none-eabi-81a1771.210328.tar.gz",
"archiveFileName": "i686-linux-gnu.arm-none-eabi-81a1771.210328.tar.gz",
"checksum": "SHA-256:b5961edde0d58b7dbc5c7b1c8fbf9d461fe2a7204f5282f6b5336a5d435efd3b",
"size": "104228428"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-linux-gnu.arm-none-eabi-407f016.210607.tar.gz",
"archiveFileName": "i686-linux-gnu.arm-none-eabi-407f016.210607.tar.gz",
"checksum": "SHA-256:8f97c67d20077c551b13344c1a96a9f51dd3a91b178a4731cd9dcc27a19217e6",
"size": "105954517"
},
{
"host": "i686-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-w64-mingw32.arm-none-eabi-81a1771.210328.zip",
"archiveFileName": "i686-w64-mingw32.arm-none-eabi-81a1771.210328.zip",
"checksum": "SHA-256:347fdc73b9f99e529c70598f9bf2ebc85adad098a24206cf89f8297a40e44d60",
"size": "103803990"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-w64-mingw32.arm-none-eabi-407f016.210607.zip",
"archiveFileName": "i686-w64-mingw32.arm-none-eabi-407f016.210607.zip",
"checksum": "SHA-256:c30e8b67d16ae6f29bcca84c166ecc3fced209d73b1b8925d5dd0e79b850f923",
"size": "105487629"
},
{
"host": "x86_64-apple-darwin",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-apple-darwin14.arm-none-eabi-81a1771.210328.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.arm-none-eabi-81a1771.210328.tar.gz",
"checksum": "SHA-256:c035b48e0a42b90c9a356b43813671597a6c0f1cab4fb97a0dfcb2bbc7eb5390",
"size": "105653466"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-apple-darwin14.arm-none-eabi-407f016.210607.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.arm-none-eabi-407f016.210607.tar.gz",
"checksum": "SHA-256:5c617ffcf86518a6451701bd5756e28f9b7587acc0cb2cd503b6c600b8cf417d",
"size": "107365915"
},
{
"host": "x86_64-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-linux-gnu.arm-none-eabi-81a1771.210328.tar.gz",
"archiveFileName": "x86_64-linux-gnu.arm-none-eabi-81a1771.210328.tar.gz",
"checksum": "SHA-256:b13ea47f3c62b65eda3acd40f43a392e8799696d821bc5c114e60950ab125bc0",
"size": "106132177"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-linux-gnu.arm-none-eabi-407f016.210607.tar.gz",
"archiveFileName": "x86_64-linux-gnu.arm-none-eabi-407f016.210607.tar.gz",
"checksum": "SHA-256:0a2b7d03f79f723d62255595f9af862807feee601456bb0e2477ce188a4a975f",
"size": "107847587"
},
{
"host": "x86_64-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-w64-mingw32.arm-none-eabi-81a1771.210328.zip",
"archiveFileName": "x86_64-w64-mingw32.arm-none-eabi-81a1771.210328.zip",
"checksum": "SHA-256:06b19d7f9e9e2c1c3fc87d85af144b02591e3c5643c67521ff9807cdb5f6ecc7",
"size": "108657552"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-w64-mingw32.arm-none-eabi-407f016.210607.zip",
"archiveFileName": "x86_64-w64-mingw32.arm-none-eabi-407f016.210607.zip",
"checksum": "SHA-256:675ee78477afc5f2daf1e25f3c0560a3adbaa7f2d73d99059e549835b4022bf8",
"size": "110334002"
}
]
},
{
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-elf2uf2",
"systems": [
{
"host": "aarch64-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/aarch64-linux-gnu.elf2uf2-0f3b795.210328.tar.gz",
"archiveFileName": "aarch64-linux-gnu.elf2uf2-0f3b795.210328.tar.gz",
"checksum": "SHA-256:5df8c7c132bc0f469c6610162d3c9836530acf4ace9bf4c3a849c80218f1855d",
"size": "104572"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/aarch64-linux-gnu.elf2uf2-fc10a97.210607.tar.gz",
"archiveFileName": "aarch64-linux-gnu.elf2uf2-fc10a97.210607.tar.gz",
"checksum": "SHA-256:59f6c2f08f1809987bf40df51808f848146a00c626dff06d3cabafb726db8830",
"size": "79850"
},
{
"host": "arm-linux-gnueabihf",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/arm-linux-gnueabihf.elf2uf2-0f3b795.210328.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.elf2uf2-0f3b795.210328.tar.gz",
"checksum": "SHA-256:dc311e18fac1e474804c044d194224267a729a16b34940c2e1ff23ab03207d98",
"size": "80513"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/arm-linux-gnueabihf.elf2uf2-fc10a97.210607.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.elf2uf2-fc10a97.210607.tar.gz",
"checksum": "SHA-256:fb6d4270aaa017b5fa60937f82674e5e55cf12da392fd23cc5d1f6de279bcd04",
"size": "54220"
},
{
"host": "i686-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-linux-gnu.elf2uf2-0f3b795.210328.tar.gz",
"archiveFileName": "i686-linux-gnu.elf2uf2-0f3b795.210328.tar.gz",
"checksum": "SHA-256:c39f24206e69230166fa15154b76d9553e732815cea59ee00b822b5acf2257db",
"size": "110686"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-linux-gnu.elf2uf2-fc10a97.210607.tar.gz",
"archiveFileName": "i686-linux-gnu.elf2uf2-fc10a97.210607.tar.gz",
"checksum": "SHA-256:b55b823e59b7fa4d1ea130621c6144d84a96f3cb9571109f878472fecbcda7f8",
"size": "87882"
},
{
"host": "i686-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-w64-mingw32.elf2uf2-0f3b795.210328.zip",
"archiveFileName": "i686-w64-mingw32.elf2uf2-0f3b795.210328.zip",
"checksum": "SHA-256:d239f7b5d7d71e646bb7cd3c59ddef593b3e564968e262b9290353a0d8102d7d",
"size": "247162"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-w64-mingw32.elf2uf2-fc10a97.210607.zip",
"archiveFileName": "i686-w64-mingw32.elf2uf2-fc10a97.210607.zip",
"checksum": "SHA-256:e66f3959fcdc2874dd4074d6e5205715235551062d5283da22906e369dc24bf0",
"size": "70429"
},
{
"host": "x86_64-apple-darwin",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-apple-darwin14.elf2uf2-0f3b795.210328.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.elf2uf2-0f3b795.210328.tar.gz",
"checksum": "SHA-256:3c776891300a3626ab4704808c61a15b653d58ff4f02398b492c12aed268f6aa",
"size": "106610"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-apple-darwin14.elf2uf2-fc10a97.210607.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.elf2uf2-fc10a97.210607.tar.gz",
"checksum": "SHA-256:f85403c39741498547448f40fa6ae323519452af7ab0118c4cf7408340c20e07",
"size": "81920"
},
{
"host": "x86_64-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-linux-gnu.elf2uf2-0f3b795.210328.tar.gz",
"archiveFileName": "x86_64-linux-gnu.elf2uf2-0f3b795.210328.tar.gz",
"checksum": "SHA-256:90c57b7cc68323e84e4cdc7d6da44c0aeb11a1c102c51d03fb42179d6162d3f3",
"size": "101265"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-linux-gnu.elf2uf2-fc10a97.210607.tar.gz",
"archiveFileName": "x86_64-linux-gnu.elf2uf2-fc10a97.210607.tar.gz",
"checksum": "SHA-256:5e9155cea5639b3716f5149e5a98fa864fe3abd9281f53f1dec65fdbe24d8f28",
"size": "79515"
},
{
"host": "x86_64-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-w64-mingw32.elf2uf2-0f3b795.210328.zip",
"archiveFileName": "x86_64-w64-mingw32.elf2uf2-0f3b795.210328.zip",
"checksum": "SHA-256:a9afa2f04eb5510c8f39ea91d90b63a0dfe0b8037c6bca4d65de8905ca87175f",
"size": "275914"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-w64-mingw32.elf2uf2-fc10a97.210607.zip",
"archiveFileName": "x86_64-w64-mingw32.elf2uf2-fc10a97.210607.zip",
"checksum": "SHA-256:e48b9e8d1c238f29e078056f6fedce715b773b042e52bf63df3759822fa66e64",
"size": "78298"
}
]
},
{
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-pioasm",
"systems": [
{
"host": "aarch64-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/aarch64-linux-gnu.pioasm-0f3b795.210328.tar.gz",
"archiveFileName": "aarch64-linux-gnu.pioasm-0f3b795.210328.tar.gz",
"checksum": "SHA-256:28cd0813a46d81becb6b743ca6c7a53da0ed15f4da61ccee422f66eeb427912b",
"size": "619033"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/aarch64-linux-gnu.pioasm-fc10a97.210607.tar.gz",
"archiveFileName": "aarch64-linux-gnu.pioasm-fc10a97.210607.tar.gz",
"checksum": "SHA-256:6076ec3624c40cb59c456b501450621c57097bd83af4ebcbd03e3b46333fa745",
"size": "453301"
},
{
"host": "arm-linux-gnueabihf",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/arm-linux-gnueabihf.pioasm-0f3b795.210328.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.pioasm-0f3b795.210328.tar.gz",
"checksum": "SHA-256:d1c8f3b208aa00e801dad594c9d0425c9615b1531fb3f86adb95a6188868462c",
"size": "536769"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/arm-linux-gnueabihf.pioasm-fc10a97.210607.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.pioasm-fc10a97.210607.tar.gz",
"checksum": "SHA-256:a6fe07241fb913e846c74855165e038b327705d75d2ca576dd714b42e17749c4",
"size": "360370"
},
{
"host": "i686-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-linux-gnu.pioasm-0f3b795.210328.tar.gz",
"archiveFileName": "i686-linux-gnu.pioasm-0f3b795.210328.tar.gz",
"checksum": "SHA-256:d09a70558acabf343ae04c783eac622e9bd1a6cfb74f42ebee03c0cfde5093c7",
"size": "658587"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-linux-gnu.pioasm-fc10a97.210607.tar.gz",
"archiveFileName": "i686-linux-gnu.pioasm-fc10a97.210607.tar.gz",
"checksum": "SHA-256:47808419d4a6019e527a0aec8c13b5a8bad7d838547fbb97abcddca866f3fc6b",
"size": "511410"
},
{
"host": "i686-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-w64-mingw32.pioasm-0f3b795.210328.zip",
"archiveFileName": "i686-w64-mingw32.pioasm-0f3b795.210328.zip",
"checksum": "SHA-256:c2ab0c8f3d54886838abb0c40910113e2e1e891068b205ec23944eecd0ce8037",
"size": "756780"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-w64-mingw32.pioasm-fc10a97.210607.zip",
"archiveFileName": "i686-w64-mingw32.pioasm-fc10a97.210607.zip",
"checksum": "SHA-256:c815d6845d374133c346e3ae3e40746217be3a6313190a9b4cdc43a4cd2e2bea",
"size": "385662"
},
{
"host": "x86_64-apple-darwin",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-apple-darwin14.pioasm-0f3b795.210328.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.pioasm-0f3b795.210328.tar.gz",
"checksum": "SHA-256:f48d729582eda8d95c16d2f5fd76ba452a6dd2ae3a47ea9dace01a130e4fb897",
"size": "609240"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-apple-darwin14.pioasm-fc10a97.210607.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.pioasm-fc10a97.210607.tar.gz",
"checksum": "SHA-256:cd19c8ff52ebed430e039b18fd5bf5bfa33f60727a51ca1c81ad3bbcbb6ec763",
"size": "480403"
},
{
"host": "x86_64-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-linux-gnu.pioasm-0f3b795.210328.tar.gz",
"archiveFileName": "x86_64-linux-gnu.pioasm-0f3b795.210328.tar.gz",
"checksum": "SHA-256:ca089e67effb47dec2a9acdf1490052d096335a8b8ffa46eaa33c205eec87b7b",
"size": "605194"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-linux-gnu.pioasm-fc10a97.210607.tar.gz",
"archiveFileName": "x86_64-linux-gnu.pioasm-fc10a97.210607.tar.gz",
"checksum": "SHA-256:9b8d778a2b3dd5b6bc110dac86e4f9a8321e0bd43f8149bd2722b992b3684515",
"size": "458642"
},
{
"host": "x86_64-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-w64-mingw32.pioasm-0f3b795.210328.zip",
"archiveFileName": "x86_64-w64-mingw32.pioasm-0f3b795.210328.zip",
"checksum": "SHA-256:f02509d1a75b68f14a3c3089029a0f16d185b07af598a4786b3bb6b357b88fa1",
"size": "886179"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-w64-mingw32.pioasm-fc10a97.210607.zip",
"archiveFileName": "x86_64-w64-mingw32.pioasm-fc10a97.210607.zip",
"checksum": "SHA-256:87b5f6cd9c760e5091d1d6e6383028a4255c07d054e6eab0583590dbdc05de69",
"size": "408341"
}
]
},
{
"version": "1.1.0-a-81a1771",
"version": "1.2.0-a-407f016",
"name": "pqt-mklittlefs",
"systems": [
{
"host": "aarch64-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/aarch64-linux-gnu.mklittlefs-6b5c62d.210328.tar.gz",
"archiveFileName": "aarch64-linux-gnu.mklittlefs-6b5c62d.210328.tar.gz",
"checksum": "SHA-256:e8a77602a78ff51ed1588e0aef23c75f54dc3b8415a489ae700c90306da81701",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/aarch64-linux-gnu.mklittlefs-6b5c62d.210607.tar.gz",
"archiveFileName": "aarch64-linux-gnu.mklittlefs-6b5c62d.210607.tar.gz",
"checksum": "SHA-256:6475b7cb24ba165fa97e5ae9e66e56901e3609b57b0edb359b75c810b8267d73",
"size": "44791"
},
{
"host": "arm-linux-gnueabihf",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/arm-linux-gnueabihf.mklittlefs-6b5c62d.210328.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.mklittlefs-6b5c62d.210328.tar.gz",
"checksum": "SHA-256:6faa9ec2dfc9c6ef58df2e0fd0a990be923ce87a1f36f3e0766af2168b095d50",
"size": "38250"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/arm-linux-gnueabihf.mklittlefs-6b5c62d.210607.tar.gz",
"archiveFileName": "arm-linux-gnueabihf.mklittlefs-6b5c62d.210607.tar.gz",
"checksum": "SHA-256:39bfd76f25b5da89244f708de856a5e9548db37eec7c5a88e4832dc5c3d0ee1f",
"size": "38247"
},
{
"host": "i686-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-linux-gnu.mklittlefs-6b5c62d.210328.tar.gz",
"archiveFileName": "i686-linux-gnu.mklittlefs-6b5c62d.210328.tar.gz",
"checksum": "SHA-256:6aa70b5953e76cc9561b77a8092b14a33c9850c42dd9b306a052fc2d056a89a8",
"size": "48237"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-linux-gnu.mklittlefs-6b5c62d.210607.tar.gz",
"archiveFileName": "i686-linux-gnu.mklittlefs-6b5c62d.210607.tar.gz",
"checksum": "SHA-256:9b6841d1c5070fb1f2b4a5b6c6850395740ac997aa3fbf888f8cd6e7628200e8",
"size": "48240"
},
{
"host": "i686-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/i686-w64-mingw32.mklittlefs-6b5c62d.210328.zip",
"archiveFileName": "i686-w64-mingw32.mklittlefs-6b5c62d.210328.zip",
"checksum": "SHA-256:34e0a84d0f562e6f9bfd91090f9064164062f7c68b4dbd65d7f154987f7940e3",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/i686-w64-mingw32.mklittlefs-6b5c62d.210607.zip",
"archiveFileName": "i686-w64-mingw32.mklittlefs-6b5c62d.210607.zip",
"checksum": "SHA-256:9b6d7ab130c1f07d63a045e987f69496bfc5e3bb4bf6edc9bf4cd04d363c2ac4",
"size": "332804"
},
{
"host": "x86_64-apple-darwin",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-apple-darwin14.mklittlefs-6b5c62d.210328.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.mklittlefs-6b5c62d.210328.tar.gz",
"checksum": "SHA-256:5289f7cde14a5b65a572ddb3b2b0e24f2ea692365787438586f60929750dc395",
"size": "362804"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-apple-darwin14.mklittlefs-6b5c62d.210607.tar.gz",
"archiveFileName": "x86_64-apple-darwin14.mklittlefs-6b5c62d.210607.tar.gz",
"checksum": "SHA-256:538c30d2a072845873d2e3552ac725dcef022f9ac9a873925c218d5564615321",
"size": "362807"
},
{
"host": "x86_64-pc-linux-gnu",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-linux-gnu.mklittlefs-6b5c62d.210328.tar.gz",
"archiveFileName": "x86_64-linux-gnu.mklittlefs-6b5c62d.210328.tar.gz",
"checksum": "SHA-256:07331f6a171010790986bbd6e98cef028dd9f95733226ebab68096e28b3ef8ef",
"size": "46917"
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-linux-gnu.mklittlefs-6b5c62d.210607.tar.gz",
"archiveFileName": "x86_64-linux-gnu.mklittlefs-6b5c62d.210607.tar.gz",
"checksum": "SHA-256:f2b4d849a2146e54fec52abdfc4391894addfbf1e904094424fb5a2a22873e58",
"size": "46918"
},
{
"host": "x86_64-mingw32",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.1.0-a/x86_64-w64-mingw32.mklittlefs-6b5c62d.210328.zip",
"archiveFileName": "x86_64-w64-mingw32.mklittlefs-6b5c62d.210328.zip",
"checksum": "SHA-256:17889e9ab6d199baed2c1532926c8508310524f9ba6b1db0816be5ee5d39a2f6",
"url": "https://github.com/earlephilhower/pico-quick-toolchain/releases/download/1.2.0-a/x86_64-w64-mingw32.mklittlefs-6b5c62d.210607.zip",
"archiveFileName": "x86_64-w64-mingw32.mklittlefs-6b5c62d.210607.zip",
"checksum": "SHA-256:c1105383c2c694978aee521dc1d921fb2e2c3452015c5456f323ffad09595725",
"size": "345250"
}
]
-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
@@ -125,5 +125,7 @@ MakeBoard("adafruit_itsybitsy", "Adafruit", "ItsyBitsy RP2040", "0x239a", "0x80f
MakeBoard("adafruit_qtpy", "Adafruit", "QT Py RP2040", "0x239a", "0x80f7", "ADAFRUIT_QTPY_RP2040", 8, "boot2_generic_03h_4_padded_checksum")
MakeBoard("adafruit_stemmafriend", "Adafruit", "STEMMA Friend RP2040", "0x239a", "0x80e3", "ADAFRUIT_STEMMAFRIEND_RP2040", 8, "boot2_w25q080_2_padded_checksum")
MakeBoard("adafruit_trinkeyrp2040qt", "Adafruit", "Trinkey RP2040 QT", "0x239a", "0x8109", "ADAFRUIT_TRINKEYQT_RP2040", 8, "boot2_w25q080_2_padded_checksum")
MakeBoard("adafruit_macropad2040", "Adafruit", "MacroPad RP2040", "0x239a", "0x8107", "ADAFRUIT_MACROPAD_RP2040", 8, "boot2_w25q080_2_padded_checksum")
MakeBoard("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,52 @@
#pragma once
// LEDs
#define PIN_LED (13u)
// Extra hardware!
#define PIN_SWITCH 0
#define PIN_SPEAKER_ENABLE 14
#define PIN_SPEAKER 16
#define PIN_ROTB 17
#define PIN_ROTA 18
#define OLED_CS 22
#define OLED_RST 23
#define OLED_DC 24
#define PIN_NEOPIXEL 19
#define NUM_NEOPIXEL 12
// Not pinned out
#define PIN_SERIAL1_TX (31u)
#define PIN_SERIAL1_RX (31u)
// Not pinned out
#define PIN_SERIAL2_TX (31u)
#define PIN_SERIAL2_RX (31u)
// SPI
#define PIN_SPI1_MISO (28u)
#define PIN_SPI1_MOSI (27u)
#define PIN_SPI1_SCK (26u)
#define PIN_SPI1_SS (31u) // not pinned out
// Not pinned out
#define PIN_SPI0_MISO (31u)
#define PIN_SPI0_MOSI (31u)
#define PIN_SPI0_SCK (31u)
#define PIN_SPI0_SS (31u)
// Wire
#define PIN_WIRE0_SDA (20u)
#define PIN_WIRE0_SCL (21u)
// Not pinned out
#define PIN_WIRE1_SDA (31u)
#define PIN_WIRE1_SCL (31u)
#define SERIAL_HOWMANY (1u)
#define SPI_HOWMANY (1u)
#define WIRE_HOWMANY (1u)
#include "../generic/common.h"
@@ -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"