I had the same problem. Somewhere iI read that the BCM numbering schema is buggy concerning the eventhandlingevent handling. You have to take the WiringPi Numbering Schema, then it works!
Your temporary solution is polling while the eventhandlingevent handling here depends on interrupts.