I was unable to find specific documentation or references for a product or library named in any widely known embedded systems repositories, driver libraries (like Arduino, STM32, ESP-IDF, or Mbed), or commercial product listings.
public: void begin(uint32_t carrier_Hz, uint32_t modulation_Hz); void setModulationIndex(float m); void setPhaseShift(uint8_t degrees); void updateTimer(); // called in ISR at carrier rate }; spwm-driver v1.5
Solution: Standard SPWM struggles at very low frequencies because the pulse widths become extremely narrow. V1.5 has a "Minimum Pulse Width" register (0x2F). Set this to 1% of the carrier period to eliminate the chatter. I was unable to find specific documentation or