diff --git a/src/main.c b/src/main.c --- a/src/main.c +++ b/src/main.c @@ -137,12 +137,19 @@ int main(void) HAL_GPIO_TogglePin(LED_BLUE); HAL_Delay(100); + uint8_t lastMinute = 0; while (1) { - if(HAL_GetTick() - last_wspr > 120000) + if(HAL_GetTick() - last_wspr > 500) { - encode_wspr(); + volatile uint8_t minute = get_timestamp()[3] - 0x30; + + // If last minute was odd and this minute is even (transition) + if(lastMinute%2 == 1 && minute%2 == 0) + encode_wspr(); + + lastMinute = minute; last_wspr = HAL_GetTick(); }