I had the engine light two times and both times it was a different problem.
The first time, it was the Canister. The check engine light was on all the time.
The second time, it was the EGR valve. The engine light could be off the morning and after 2 hours, it was on. The day after, it was off again and some time after it was on.
Actually, a check engine light can be caused by a lot of things...