Libraries updated to support new RP2040-based boards (RASPBERRY_PI_PICO, etc.)

@kenb2054

Just released new RP2040_RTC releases v1.0.3 with these new simple examples per your request

  1. RP2040_RTC_Alarm
  2. RP2040_RTC_Time

Just remember that currently, RP2040-based boards RTC has no battery backup. So the time will be lost when power down. Therefore, NTP client is necessary to get precise NTP time to update RTC.

Thanks very much for the new RP2040_RTC Time and Alarm examples which make it easier to understand the code while I am learning.
However, when I run the example code for my Pico using EarlePhilhower RP2040 Core I get the following error message:

I found an article https://forum.arduino.cc/t/confusion-with-time-h-and-timelib-h/433864 which indicates that some Windows users have problems when compiling code which uses the Time.h library and so I modifed the statement in DateTime_Generic.h library from #include <Time.h> to #include <TimeLib.h> and it overcomes the errors.

1 Like

@kenb2054 ,

That's good you found out the solution as well as the reason.

It's really bad that Windows still behaves the same way as the bad old DOS (case insensitive). That's why I've been avoiding using Windows quite a long time and didn't see that issue.

Anyway, I'll fix the library in next release for completeness.

@kenb2054

The RP2040_RTC v1.0.4 has just been releases thanks to your bug report

Releases v1.0.4

  1. Using TimeLib instead of Time to avoid case-insensitive issue with Windows and MacOS.
1 Like

It turns out that macOS also uses a case insensitive file system. So Linux's behavior is actually in the (sensible) minority. I always used to think that Windows was the only one, like with the annoying path separator.

Due to how common this problem is with the Time library, its maintainer Paul Stoffregen has finally removed the Time.h file from the library altogether in the release of the library made this week:

This will break all code which is still using the Windows/macOS-incompatible Time.h, forcing the maintainers to switch to TimeLib.h.

1 Like

If you set MacOS up correctly its file system is case-sensitive. Its an option you setup from factory state.

now support RP2040 -based boards, such as Nano-RP2040-Connect, RASPBERRY_PI_PICO, ADAFRUIT_FEATHER_RP2040 and GENERIC_RP2040 , using Earle Philhower's arduino-pico core v1.9.4+ or Arduino-mbed RP2040 v2.4.1+ core

New hardware-based RP2040_PWM Library

New ISR-based MBED_RP2040_Slow_PWM Library

New ISR-based RP2040_Slow_PWM

New release of WebSockets2_Generic to add support to Nano_RP2040_Connect using WiFiNINA

Major Release v1.8.0

  1. Add support to RP2040-based boards, such as Nano_RP2040_Connect, RASPBERRY_PI_PICO, ADAFRUIT_FEATHER_RP2040, using WiFiNINA
  2. Add examples with new features
  3. Update many Packages' Patches