Grounded Thank you for testing the setup.
I also tried it and it would turn off and turn back on but nothing else, so I started looking at the program and in the power_on sub you will see at the bottom the counter value is 300, counter is a var byte so it would never return to the program. I use this value when looking at the data stream on the scope this keep the loop running and made it easy to see my timing I could do this at each step.
So I guess you have to take them out when posting the code MY BAD.
its things like this that make a project take longer than you expect!!!
I reposted the correct program take a look when you get a chance

Thanks Again Grounded

Larry