try with pickup in the main loop, not working ?!?
Finally pickup returns after it was put into a separate callback queue