Interrupt still happening after detached. ( fix now available)

Of course, it's always better to confirm with code than it is to speculate:

#include "Arduino.h"

void setup() {
  Serial.begin(115200);
  delay(1000);

  pinMode(2, INPUT_PULLUP);
  pinMode(3, INPUT_PULLUP);

  // Set Interrupt Control Register A for FALLING
  EICRA = (EICRA & ~((1 << ISC00) | (1 << ISC01))) | (FALLING << ISC00);
  EICRA = (EICRA & ~((1 << ISC10) | (1 << ISC11))) | (FALLING << ISC10);

  EIMSK = 0;      // clear interrupt mask so ISR doesn't run
  EIFR = 3;     // clear INTF1 & INTF0
  Serial.print("Flag Register = ");
  Serial.println(EIFR, BIN);

  Serial.print("Ground Pins 2 and 3, then press enter:");
  while (Serial.available() == 0) {
  }
  Serial.println();
  Serial.print("After setting, Flag Register = ");
  Serial.println(EIFR, BIN);

  EIFR = EIFR;  // clear INTF1 & INTF0
  Serial.print("After clearing, Flag Register = ");
  Serial.println(EIFR, BIN);
}

void loop() {
}

Serial Monitor Output:

Flag Register = 0
Ground Pins 2 and 3, then press enter:
After setting, Flag Register = 11
After clearing, Flag Register = 0
1 Like