Device Control

This library enables you to use ISR-based PWM channels on RP2040-based boards, such as Nano_RP2040_Connect, RASPBERRY_PI_PICO, with Arduino-mbed (mbed_nano or mbed_rp2040) core to create and output PWM any GPIO pin.
The most important feature is they are ISR-based PWM channels, supporting lower PWM frequencies with suitable accuracy. Their executions are not blocked by bad-behaving functions or tasks. This important feature is absolutely necessary for mission-critical tasks. These ISR-based PWMs, still work even if other software functions are blocking. Moreover, they are much more precise (certainly depending on clock frequency accuracy) than other software-based PWM using millis() or micros(). That is necessary if you need to control devices requiring high precision. Now you can change the PWM settings on-the-fly

Author: Khoi Hoang

Maintainer: Khoi Hoang

Read the documentation


This library is compatible with the mbed, mbed_nano, ArduinoCore-mbed, mbed_rp2040 architectures so you should be able to use it on the following Arduino boards:


To use this library, open the Library Manager in the Arduino IDE and install it from there.