BLDC waveform abnormality
DO I need to keep looking for '0' crossing even after initial '0' cross detection !!!!


Yes !!!!

For one thing, the motor will speed up after the initial readings and your timing will be off. But even if you capture the zero-cross timing when the motor has reached constant rotational speed, there are still lots of reasons you need to dynamically monitor the timing. A tiny error in your initial reading (and you will always have error) will compound over time if you're running open-loop. Also, electrical and mechanical variations (mechanical vibrations, voltage/current inconsistencies, minute changes in the air resistance around the spinning motor, etc) will cause minuscule differences from rotation to rotation. All of these things will affect the timing. And those are assuming your load isn't changing. Obviously a changing load will have a huge impact on timing.

That said, it usually is possible to spin a BLDC at slow speeds in an open-loop system. But once you exceed a certain speed, it's no longer viable.