While studying the HardwareTimer.cpp code, I found a possible small typo. Around line 417, in this section `case TIMER_OUTPUT_COMPARE_ACTIVE: _channelOC[channel - 1].OCMode = TIM_OCMODE_ACTIVE; _channelIC[channel - 1].ICPolarity = TIMER_NOT_USED; break; case TIMER_OUTPUT_COMPARE_INACTIVE: _channelOC[channel - 1].OCMode = TIM_OCMODE_ACTIVE; _channelIC[channel - 1].ICPolarity = TIMER_NOT_USED; break;` Shouldn't under the timer inactive case, the following line read? `_channelOC[channel - 1].OCMode = TIM_OCMODE_INACTIVE;`