mac os x - usb hid - how the receive device added / device removed callbacks?
IOHIDManagerScheduleWithRunLoop is hooked to RunLoop, so You need to start one. while loop is not the solution here. So in order to get callbacks You should replace while loop with CFRunLoopRun() call. More informations about RunLoops in documentation.