HRTIM activates output immediately when re-enabled rather than on compare match
I am using HRTIM in my project such that the output TA1 of timer A generates a delayed pulse after the timer is triggered via the EEV1 input. I have two compare values defined in Advanced configuration mode: One to set the output high and the other to set it low con compare match.
In my setup, the EEV1 is currently triggered every 100ms externally (I'm using a PWM output of another timer with a physical connection to the EEV1 input of my HRTIM timer).
One of the requirements of my project is the ability to shut down the outputs of the HRTIM timer at any time and also the ability to restart it.
As a test, put the following code in the main() function:
while (1)
{
HAL_HRTIM_SimpleOnePulseStart(&hhrtim, HRTIM_TIMERINDEX_TIMER_A, HRTIM_OUTPUT_TA1);
HAL_Delay(300);
HAL_HRTIM_SimpleOnePulseStop(&hhrtim, HRTIM_TIMERINDEX_TIMER_A, HRTIM_OUTPUT_TA1);
HAL_Delay(300);
}
The expectation was that this code would repeatedly start and stop pulse generation on the TA1 output, but instead I'm getting the following picture:

Here's what happens:
1. Occasionally, my code in the loop shown above would call HAL_HRTIM_SimpleOnePulseStop() in the middle of the output pulse being active high, at which point one can see the last pulse in the sequence being cut short, which is expected:

2. Then a 300ms interval passes without any pulses on the TA1 output, which is expected.
3. Then, at the end of the 300ms "idle" period, the HAL_HRTIM_SimpleOnePulseStart() function causes the TA1 output to go high even though a compare match hasn't occurred:

This only happens when the previous pulse is cut short by the HAL_HRTIM_SimpleOnePulseStop() call. I wasn't expecting this to happen. I though the output would only go high on compare match with compare unit 1 (basically, close to the rising edge of my EEV1 pulse on my screenshot above since my compare value is very close to 3).
My goal is to have the TA1 output only go high on an actual compare match and not when HAL_HRTIM_SimpleOnePulseStart() is called. I know it's possible that HAL_HRTIM_SimpleOnePulseStart() isn't the right function to call, but I've tried using HAL_HRTIM_WaveformOutputStart() and it didn't work. I've also tried resetting the timer counter to 0 and generating an update event before restarting the timer, and it didn't help. Does anyone have suggestions on how to resolve this?
