B4R Library ESP32-RMT-puls B4R Library (Pre-release)

ESP32RMTpuls B4R Library (Pre-release)


This is a B4R library for generating TX pulse signals using the RMT module of the ESP32.
It is currently in pre-release, due to limited testing across different IDF versions and ESP32 SoC variants.

The library is primarily intended for one-shot pulse generation, but with additional features such as PWM, GPIO routing, sync channels, and inversion, it can also produce more complex signals like repeating pulse bursts and complementary PWM.
All signal generation is handled by hardware, resulting in minimal CPU usage.

Using GPIO matrix routing, you can dynamically attach or detach multiple GPIO pins to a single RMT TX channel at runtime. With the help of a B4R timer, PWM outputs can be switched to various pins to create sequential output patterns.


Compatibility

The library has been developed and tested using IDF v5.3.2 with the ESP32-S3, and minimally tested with the ESP32.
Some features may not work correctly due to differences in IDF versions, SoC capabilities, or simply due to developer oversight.
While the library includes some SoC variant checks, there may still be unhandled macros or API differences.

Please report any issues you encounter or suggestions for improvement.


Usage instructions are included in the attached help document.
 

Attachments

  • RMT_Puls_Switch_GPIO.png
    RMT_Puls_Switch_GPIO.png
    113.9 KB · Views: 33
  • RMT_Pulse_Annotate_1.png
    RMT_Pulse_Annotate_1.png
    56.7 KB · Views: 33
  • RMT_PulseTrain_50hz.png
    RMT_PulseTrain_50hz.png
    57.2 KB · Views: 33
  • RMT_PWM_mod_1_5_10ms.png
    RMT_PWM_mod_1_5_10ms.png
    52.6 KB · Views: 29
  • Sync_Test01-1.png
    Sync_Test01-1.png
    51.3 KB · Views: 35
  • rESP32RMTpuls.ZIP
    427.5 KB · Views: 26
  • ESP32_RMT_Pulse_Library help(small).pdf
    370.2 KB · Views: 25
Top