Mine does the same thing... with the exception of the not coming on at all part. Sometimes it'll power up during key on and other times the engine has to crank over.
That part has to do with how the device monitors CAN messages from the OBDII port. Since the device has to "wake up" to read messages, it only reads messages every second or so. There is a specific CAN message it looks for to "wake up" which occurs during key on. If the device is asleep, it might miss the message. In that case, the message will occur again during cranking/running which the device then catches and wakes up. This is all normal behavior.
Now, for the not turning on at all... That seems to occur as the temperature drops and overnight battery voltages dip. The device goes into a "brown out" (undervoltage) state where it doesn't exactly reboot, but the processor stops functioning. The only way to correct this is to unplug and reconnect the device, effectively rebooting it. The usual cause for this is batteries that are not able to maintain adequate voltage after the "surface charge" has worn off. With the older programmers (the monochrome style) this was the precursor of a battery failure and replacing the battery would eliminate the problem.
I hope this is helpful.