Skip to content

Releases: earlephilhower/arduino-pico

Release 2.7.2 - Cleaner uploads, UART/PDM/I2S/SPI bugfixes

11 Feb 20:41
Compare
Choose a tag to compare

2.7.2

New boards

  • Add the YD-RP2040 support files
  • Add boot2_w25q128jv to generic Pico flash menu (#1142)
  • Add uPesy Tutorials using Arduino Pico port. (#1151)
  • Add correct boot source to helios (#1126)

Audio/I2S/ADC/PDM

  • Avoid race condition in I2S/PWMAudio delete (#1163)
  • PDM library re-port (#1160)

Serial UART

  • Avoid initial glitch on Serial1/2 when RX high (#1154)
  • Fix SerialUART::overflow reporting race condition (#1133)
  • Add Serial UART break reporting (#1108)

ESP8266/ESP32 compatibility

  • Add ESP8266/32 WiFi.isConnected wrapper (#1166)
  • Apply SD.h fix from ESP8266 (#1171)

I2C/SPI/USB

  • Fix SPI transfer16 return value (#1148)
  • Fix USB VID/PID setting, rationalize boards.txt (#1144)

Upload

  • Optimize and improve upload experience (#1136)
  • Print useful uf2conv error if executable not found (#1141)

2.7.1

New boards

  • Add VCC-GND YD-RP2040 board (#1120)
  • Add 0xCB Helios (#1117)

Audio/I2S/ADC

  • Add stereo support, docs for PWM playback (#1084)
  • DMA-based ADC input (microphone, analog sensor) (#1101)
  • Stop the I2S PIO when I2S::end called (#1103)
  • Allow on-the-fly changes to PWMAudio when possible (#1098)
  • Add LSBJ format support for I2S (#1095)

WebServer

  • Add hook support to WebServer (#1119)

Compatibility

  • Adding sei() and cli() as aliases for interrupts() and noInterrupts(). (#1089)
  • Add WString.h include redirect for broader compat (#1083)
  • Warn when Serial.printf() format is wrong (#1090)
  • Move analogReadTemp() to C++-only (#1097)

General

  • Redo boards menu, separate out upload method, add picotool upload (#1112)
  • Add additional instructions for Linux Flatpak users (#1105)
  • Handle slave mode I2C restarts (#1104)
  • Update to LittleFS 2.5.1 (only minor updates) (#1099)
  • Reduce stack usage of several components (#1093)
  • Remove debug printout warnings (#1091)

2.7.0

  • Add PWMAudio for DAC-free audio playback (#1076)
  • digitalRead/WriteFast to sio_hw->gpio (#1077)
  • Universal analogReadTemp() (#1075)
  • Fix I2S::flush volatile casting (#1074)
  • Reduce ADC memory footprint slightly (#1073)
  • Make the AudioRingBuffer list-based (#1064)
  • Speed up ADC reads by not re-initting (#1072)
  • Add digitalWrite/ReadFast macros (#1069)
  • Update to Adafruyit TinyUSB 1.17 (#1071)
  • Degz Mizu changed to Viyalab Mizu RP2040 (#1062)
  • Update to 1.5.0-a toolchain (#1060)
  • Add nullbits Bit-C PRO board (#1051)
  • Fix CI errors when more than one *.a in cache dir (#1049)

Release 2.7.1 - New menus, stereo PCM, picotool support, new boards, bugfixes

14 Jan 22:45
Compare
Choose a tag to compare

2.7.1

New boards

  • Add VCC-GND YD-RP2040 board (#1120)
  • Add 0xCB Helios (#1117)

Audio/I2S/ADC

  • Add stereo support, docs for PWM playback (#1084)
  • DMA-based ADC input (microphone, analog sensor) (#1101)
  • Stop the I2S PIO when I2S::end called (#1103)
  • Allow on-the-fly changes to PWMAudio when possible (#1098)
  • Add LSBJ format support for I2S (#1095)

WebServer

  • Add hook support to WebServer (#1119)

Compatibility

  • Adding sei() and cli() as aliases for interrupts() and noInterrupts(). (#1089)
  • Add WString.h include redirect for broader compat (#1083)
  • Warn when Serial.printf() format is wrong (#1090)
  • Move analogReadTemp() to C++-only (#1097)

General

  • Redo boards menu, separate out upload method, add picotool upload (#1112)
  • Add additional instructions for Linux Flatpak users (#1105)
  • Handle slave mode I2C restarts (#1104)
  • Update to LittleFS 2.5.1 (only minor updates) (#1099)
  • Reduce stack usage of several components (#1093)
  • Remove debug printout warnings (#1091)

2.7.0

  • Add PWMAudio for DAC-free audio playback (#1076)
  • digitalRead/WriteFast to sio_hw->gpio (#1077)
  • Universal analogReadTemp() (#1075)
  • Fix I2S::flush volatile casting (#1074)
  • Reduce ADC memory footprint slightly (#1073)
  • Make the AudioRingBuffer list-based (#1064)
  • Speed up ADC reads by not re-initting (#1072)
  • Add digitalWrite/ReadFast macros (#1069)
  • Update to Adafruyit TinyUSB 1.17 (#1071)
  • Degz Mizu changed to Viyalab Mizu RP2040 (#1062)
  • Update to 1.5.0-a toolchain (#1060)
  • Add nullbits Bit-C PRO board (#1051)
  • Fix CI errors when more than one *.a in cache dir (#1049)

Release 2.7.0 - OpenOCD update, RPi 3/4 toolchain update, PWM Audio, misc fixes, and new boards

30 Dec 21:37
Compare
Choose a tag to compare
  • Update version
  • Add PWMAudio for DAC-free audio playback (#1076)
  • digitalRead/WriteFast to sio_hw->gpio (#1077)
  • Update analog.rst
  • Universal analogReadTemp() (#1075)
  • Fix I2S::flush volatile casting (#1074)
  • Reduce ADC memory footprint slightly (#1073)
  • Make the AudioRingBuffer list-based (#1064)
  • Speed up ADC reads by not re-initting (#1072)
  • Add digitalWrite/ReadFast macros (#1069)
  • Update to Adafruyit TinyUSB 1.17 (#1071)
  • Degz Mizu changed to Viyalab Mizu RP2040 (#1062)
  • Update to 1.5.0-a toolchain (#1060)
  • Add nullbits Bit-C PRO board (#1051)
  • Fix CI errors when more than one *.a in cache dir (#1049)

Release 2.6.5 - WiFi improvements, new USB drive mode, UART and I2S fixes

17 Dec 20:11
Compare
Choose a tag to compare

2.6.5

  • Modified LowPowerMode functions in WiFiClass.cpp/.h for better connection stability (#1046)
  • Fix I2s::available() to skip currently playing (#1043)
  • Increase ClientContext write(Stream) to 256b chunk (#1042)
  • Increase WiFi.begin() default timeout to 15s (#1041)
  • Add USB drive mode to TinyUSB, SingleFileDisk (#1034)
  • Throw away UART bytes with errors in reception (#1036)
  • Fix File::readString to work with binary data (#1030)
  • Pluggable_discovery: Allow the scanner thread to quit (#1029)
  • Speed up ClientContext::write(Stream) by chunking (#1017)

2.6.4

  • Allow building w/o USB for normal and picoprobe builds (#1013)
  • Add some Waveshare board descriptions (#1004)
  • Update Wire per @chrisckc debugging (#1011)
  • Fix memcpy to unallocated memory in EEPROM.cpp (#1000)
  • Using PIO_FRAMEWORK_ARDUINO_NO_USB build flag would cause internal rp2040 fifo not being initialized correct. (#1001)
  • Fix GPIO interrupt on freeRTOS (#959)
  • Use PIN_I2S_ defines if they exist in board pin definition. (#991)
  • Avoid race conditions in I2C(Wire) callbacks (#995)
  • Add Adafruit Feather RP2040 SCORPIO (#987)
  • Do not require USB init variable for TinyUSB (#981)
  • Add Waveshare RP2040 Zero (#980)
  • Add DatanoiseTV PicoADK board (#964)
  • Fix Arduino Nano Connect USB VID:PID tuples (#970)
  • Remove stdio.h include from CYW43 SDK override (#965)
  • Fix analogWrite scaling issues (#962)

2.6.3

  • Fix deadlock in attachInterruptParam (#953)
  • Fix SerialPIO bit length, update flyboard2040 pins (#950)
  • Properly disable Ethernet IRQ, don't drop packets (#951)
  • Free PIO SM on SerialPIO::end (#949)
  • Async scan + bugfixes (#947)
  • cores/rp2040: _freertos.cpp: Avoid memory leak and unnecessary allocation (#948)
  • Update GH actions to non-deprecated versions (#938)
  • Add WiFi.channel() reporting (#937)
  • Add WiFi.BSSID() undocumented call (#936)
  • Add a way to return the RSSI value (#934)

2.6.2

  • Add protocol-explicit upload.tool properties required for pluggable discovery compatibility (#933)
  • Add basic Pimoroni PGA2040 board definition (#930)
  • Only init PWM on requested pin (#926)
  • Add W25Q64JV QSPI /4 Boot2 file (#929)

2.6.1

  • Increase analogWrite frequency range, bugfixes (#918)
  • Rewrite PicoW LWIP interface for stability (#916)
  • Use static allocation for IRQ stack (#915)
  • Add board BridgeTek IDM2040-7A (#912)
  • Fix memory leak in WebServer (#914)
  • Un-hardcode LED pin in AdvancedWebServer example (#909)
  • Update VID&PID HunterCatNFC 2040 (#907)
  • Clear LWIP started flag on LWIPIntfDev::end (#905)
  • Adds Degz Mizu board (#904)
  • Add OpenOCD/GDB support for IDE 2.0 (#900)
  • Add Melopero Cookie RP2040 (#899)

2.6.0

  • Add TARGET_RP2040 to build defines (#898)
  • Support IDE 2.0, detect UF2 volumes (#897)
  • Allow double-reset to jump to USB bootloader (#893)
  • Drive pin LOW after Tone(period) timeout (#887)
  • Fix Serial1/2 debug output mode in CoreMutex (#883)
  • Allow setCTS/RTS(UART_PIN_NOT_DEFINED) (#881)
  • Fix deadlock during attachInterrupt (#879)
  • Fix typo in HttpClient HTTPS example (#876)
  • Allow setting the WiFi region for PicoW (#875)

Release 2.6.4 - New boards; I2C, FreeRTOS, analogWrite bugfixes

28 Nov 18:11
Compare
Choose a tag to compare

2.6.4

  • Allow building w/o USB for normal and picoprobe builds (#1013)
  • Add some Waveshare board descriptions (#1004)
  • Update Wire per @chrisckc debugging (#1011)
  • Fix memcpy to unallocated memory in EEPROM.cpp (#1000)
  • Using PIO_FRAMEWORK_ARDUINO_NO_USB build flag would cause internal rp2040 fifo not being initialized correct. (#1001)
  • Fix GPIO interrupt on freeRTOS (#959)
  • Use PIN_I2S_ defines if they exist in board pin definition. (#991)
  • Avoid race conditions in I2C(Wire) callbacks (#995)
  • Add Adafruit Feather RP2040 SCORPIO (#987)
  • Do not require USB init variable for TinyUSB (#981)
  • Add Waveshare RP2040 Zero (#980)
  • Add DatanoiseTV PicoADK board (#964)
  • Fix Arduino Nano Connect USB VID:PID tuples (#970)
  • Remove stdio.h include from CYW43 SDK override (#965)
  • Fix analogWrite scaling issues (#962)

2.6.3

  • Fix deadlock in attachInterruptParam (#953)
  • Fix SerialPIO bit length, update flyboard2040 pins (#950)
  • Properly disable Ethernet IRQ, don't drop packets (#951)
  • Free PIO SM on SerialPIO::end (#949)
  • Async scan + bugfixes (#947)
  • cores/rp2040: _freertos.cpp: Avoid memory leak and unnecessary allocation (#948)
  • Update GH actions to non-deprecated versions (#938)
  • Add WiFi.channel() reporting (#937)
  • Add WiFi.BSSID() undocumented call (#936)
  • Add a way to return the RSSI value (#934)

2.6.2

  • Add protocol-explicit upload.tool properties required for pluggable discovery compatibility (#933)
  • Add basic Pimoroni PGA2040 board definition (#930)
  • Only init PWM on requested pin (#926)
  • Add W25Q64JV QSPI /4 Boot2 file (#929)

2.6.1

  • Increase analogWrite frequency range, bugfixes (#918)
  • Rewrite PicoW LWIP interface for stability (#916)
  • Use static allocation for IRQ stack (#915)
  • Add board BridgeTek IDM2040-7A (#912)
  • Fix memory leak in WebServer (#914)
  • Un-hardcode LED pin in AdvancedWebServer example (#909)
  • Update VID&PID HunterCatNFC 2040 (#907)
  • Clear LWIP started flag on LWIPIntfDev::end (#905)
  • Adds Degz Mizu board (#904)
  • Add OpenOCD/GDB support for IDE 2.0 (#900)
  • Add Melopero Cookie RP2040 (#899)

2.6.0

  • Add TARGET_RP2040 to build defines (#898)
  • Support IDE 2.0, detect UF2 volumes (#897)
  • Allow double-reset to jump to USB bootloader (#893)
  • Drive pin LOW after Tone(period) timeout (#887)
  • Fix Serial1/2 debug output mode in CoreMutex (#883)
  • Allow setCTS/RTS(UART_PIN_NOT_DEFINED) (#881)
  • Fix deadlock during attachInterrupt (#879)
  • Fix typo in HttpClient HTTPS example (#876)
  • Allow setting the WiFi region for PicoW (#875)

Release 2.6.3 - PicoW and SerialPIO updates, general bugfixes

03 Nov 15:58
Compare
Choose a tag to compare

2.6.3

  • Fix deadlock in attachInterruptParam (#953)
  • Fix SerialPIO bit length, update flyboard2040 pins (#950)
  • Properly disable Ethernet IRQ, don't drop packets (#951)
  • Free PIO SM on SerialPIO::end (#949)
  • Async scan + bugfixes (#947)
  • cores/rp2040: _freertos.cpp: Avoid memory leak and unnecessary allocation (#948)
  • Update GH actions to non-deprecated versions (#938)
  • Add WiFi.channel() reporting (#937)
  • Add WiFi.BSSID() undocumented call (#936)
  • Add a way to return the RSSI value (#934)

2.6.2

  • Add protocol-explicit upload.tool properties required for pluggable discovery compatibility (#933)
  • Add basic Pimoroni PGA2040 board definition (#930)
  • Only init PWM on requested pin (#926)
  • Add W25Q64JV QSPI /4 Boot2 file (#929)

2.6.1

  • Increase analogWrite frequency range, bugfixes (#918)
  • Rewrite PicoW LWIP interface for stability (#916)
  • Use static allocation for IRQ stack (#915)
  • Add board BridgeTek IDM2040-7A (#912)
  • Fix memory leak in WebServer (#914)
  • Un-hardcode LED pin in AdvancedWebServer example (#909)
  • Update VID&PID HunterCatNFC 2040 (#907)
  • Clear LWIP started flag on LWIPIntfDev::end (#905)
  • Adds Degz Mizu board (#904)
  • Add OpenOCD/GDB support for IDE 2.0 (#900)
  • Add Melopero Cookie RP2040 (#899)

2.6.0

  • Add TARGET_RP2040 to build defines (#898)
  • Support IDE 2.0, detect UF2 volumes (#897)
  • Allow double-reset to jump to USB bootloader (#893)
  • Drive pin LOW after Tone(period) timeout (#887)
  • Fix Serial1/2 debug output mode in CoreMutex (#883)
  • Allow setCTS/RTS(UART_PIN_NOT_DEFINED) (#881)
  • Fix deadlock during attachInterrupt (#879)
  • Fix typo in HttpClient HTTPS example (#876)
  • Allow setting the WiFi region for PicoW (#875)

Release 2.6.2 - IDE 2.0 fixes

25 Oct 15:05
Compare
Choose a tag to compare

2.6.2

  • Add protocol-explicit upload.tool properties required for pluggable discovery compatibility (#933)
  • Add basic Pimoroni PGA2040 board definition (#930)
  • Only init PWM on requested pin (#926)
  • Add W25Q64JV QSPI /4 Boot2 file (#929)

2.6.1

  • Increase analogWrite frequency range, bugfixes (#918)
  • Rewrite PicoW LWIP interface for stability (#916)
  • Use static allocation for IRQ stack (#915)
  • Add board BridgeTek IDM2040-7A (#912)
  • Fix memory leak in WebServer (#914)
  • Un-hardcode LED pin in AdvancedWebServer example (#909)
  • Update VID&PID HunterCatNFC 2040 (#907)
  • Clear LWIP started flag on LWIPIntfDev::end (#905)
  • Adds Degz Mizu board (#904)
  • Add OpenOCD/GDB support for IDE 2.0 (#900)
  • Add Melopero Cookie RP2040 (#899)

2.6.0

  • Add TARGET_RP2040 to build defines (#898)
  • Support IDE 2.0, detect UF2 volumes (#897)
  • Allow double-reset to jump to USB bootloader (#893)
  • Drive pin LOW after Tone(period) timeout (#887)
  • Fix Serial1/2 debug output mode in CoreMutex (#883)
  • Allow setCTS/RTS(UART_PIN_NOT_DEFINED) (#881)
  • Fix deadlock during attachInterrupt (#879)
  • Fix typo in HttpClient HTTPS example (#876)
  • Allow setting the WiFi region for PicoW (#875)

Release 2.6.1 - IDE 2.0 + debug, WiFi stability, new boards

16 Oct 17:53
Compare
Choose a tag to compare

2.6.1

  • Increase analogWrite frequency range, bugfixes (#918)
  • Rewrite PicoW LWIP interface for stability (#916)
  • Use static allocation for IRQ stack (#915)
  • Add board BridgeTek IDM2040-7A (#912)
  • Fix memory leak in WebServer (#914)
  • Un-hardcode LED pin in AdvancedWebServer example (#909)
  • Update VID&PID HunterCatNFC 2040 (#907)
  • Clear LWIP started flag on LWIPIntfDev::end (#905)
  • Adds Degz Mizu board (#904)
  • Add OpenOCD/GDB support for IDE 2.0 (#900)
  • Add Melopero Cookie RP2040 (#899)

2.6.0

  • Add TARGET_RP2040 to build defines (#898)
  • Support IDE 2.0, detect UF2 volumes (#897)
  • Allow double-reset to jump to USB bootloader (#893)
  • Drive pin LOW after Tone(period) timeout (#887)
  • Fix Serial1/2 debug output mode in CoreMutex (#883)
  • Allow setCTS/RTS(UART_PIN_NOT_DEFINED) (#881)
  • Fix deadlock during attachInterrupt (#879)
  • Fix typo in HttpClient HTTPS example (#876)
  • Allow setting the WiFi region for PicoW (#875)

Release 2.6.0 - IDE 2.0 support and bugfixes

05 Oct 00:16
Compare
Choose a tag to compare
  • Add TARGET_RP2040 to build defines (#898)
  • Support IDE 2.0, detect UF2 volumes (#897)
  • Allow double-reset to jump to USB bootloader (#893)
  • Drive pin LOW after Tone(period) timeout (#887)
  • Fix Serial1/2 debug output mode in CoreMutex (#883)
  • Allow setCTS/RTS(UART_PIN_NOT_DEFINED) (#881)
  • Fix deadlock during attachInterrupt (#879)
  • Fix typo in HttpClient HTTPS example (#876)
  • Allow setting the WiFi region for PicoW (#875)

Release 2.5.4 - Minor bugfixes, FreeRTOS config changes

22 Sep 02:21
Compare
Choose a tag to compare
  • Ensure ArduinoCore API is included in package (#871)
  • Update Cytron Pico SPI pinout (#869)
  • Add WDT functions to RP2040 Helper (#862)
  • Adds Challenger RP2040 NFC board (#846)
  • Enabled static memory allocation with example (#842)
  • Minor - Add number separators (#845)
  • Minor tweak, NULL=>nullptr (#844)
  • Remove duplicated ArduinoCore-API files (#840)
  • Increase SerialUSB speed (#833)
  • Add Serial3 for Arduino Nano Connect RP2040. Fix #807 (#838)
  • Restore GPIO functions on SerialUART::end (#836)