Re: Can I do this:

        unsigned long e1ClockStart = millis() + 500;

You have a pretty bizarre sense of what start means, I guess. Do this until now is greater than the start time. OK.