Strange behaviour using interrupts

retrolefty:
Also I've never seen this mode of passing the mode value to the attachInterrupt function. It might not be properly be setting up the mode correctly.

static const int INTERRUPT_MODE = RISING;

Try setting the mode directly in the attach statement:

attachInterrupt(INTERRUPT_NUMBER, beep,  RISING);  // or the other defined mode names.

Makes no sense to me, but I've done as you said and still does not work.