Separating the wake up stuff into its own function, change the "wait for lowest" stuff slightly.