Por padrão, o systemd usa uma precisão muito baixa para que tarefas de vários timers (ou seja, diferentes tarefas que acontecem em poucos segundos) possam ser agrupadas em uma única execução, após o qual o sistema pode continuar inativo.
A opção pode ser definida em [Timer] e você desejará defini-la como 1s ou menor.
AccuracySec=
Specify the accuracy the timer shall elapse with. Defaults to 1min. The timer is
scheduled to elapse within a time window starting with the time specified in
OnCalendar=, OnActiveSec=, OnBootSec=, OnStartupSec=, OnUnitActiveSec= or
OnUnitInactiveSec= and ending the time configured with AccuracySec= later. Within
this time window, the expiry time will be placed at a host-specific, randomized,
but stable position that is synchronized between all local timer units. This is
done in order to optimize power consumption to suppress unnecessary CPU wake-ups.
To get best accuracy, set this option to 1us. Note that the timer is still
subject to the timer slack configured via systemd-system.conf(5)'s
TimerSlackNSec= setting. See prctl(2) for details. To optimize power consumption,
make sure to set this value as high as possible and as low as necessary.