Currently once programming is finished we reboot the device and wait 180 seconds.
Instead we could just wait for a few seconds (to avoid accidentally interrupting boot loader) and then sit in a loop waiting for the console to appear. This shouldn't take more than 40 seconds. If it does timeout exception should be raised.