EV3 program runs fine when connected to PC but does not respond when copied to the brick
Thanks for the comments. I figured it out and the mistake was simple. I had two separate and independent program sequences each with its own start point in one program window. One sequence was for testing purpose to see if everything works and 
 the 2nd sequence was the actual driving block. As I am new to this setup, I guess one window should have just one program sequence.

Once I deleted the test block and kept only the driving sequence, everything works fine. Posting this just in case some newbie might find it helpful in future.

For the veterans, I hope my understanding is correct that in one window, there should be only one start point.