   attachInterrupt(TACH_PIN - 2, ISR_TACH, RISING);
   attachInterrupt(ACTIVATION_PIN - 2, ISR_ACTIVE, CHANGE);
   
-  Timer1.initialize(1000000);
-  Timer1.stop();
+  Timer1.initialize();
   Timer1.attachInterrupt(ISR_IGNITION);
+  Timer1.start();
   
   if (debug)
   {

// -------------------------
volatile bool active = false;
unsigned int rpm = 0;
volatile int tachDuration0 = 0;
volatile int tachDuration1 = 0;
volatile int tachDuration2 = 0;
volatile unsigned long tachLast = 0;
volatile unsigned int ignitionMode = OFF;
volatile int remainingCount = 0;
long period = 0;

// -------------------------

void fireMultiple()
{
  fireCoil();
  for(int i = 1; i < multiCount; i++)
  {
    delayMicroseconds(multiDelay);
    fireCoil();
