Hi John, sorry for the long wait on this question. For this problem you should first request a printout of the fault codes stored in the engine control module. The fault codes may help to identify the problem. A puff of smoke on start up is almost always related to oil burning in a cylinder due to a fault with the valve seals. The engine oil level should be checked to be sure it has not been overfilled. An inspection of the cylinders with a boroscope camera and an inspection of the spark plugs for signs of oil burning can be performed to help to identify the problem.
Let me know if you have any questions.