Re: “When network connectivity is lost, it might be useful to log that condition.”
I agree it may be useful to log it in case the network checking fails several times in a roll.
Re: The controller won’t ping or do time sync’ing when a program is running.
Do you have just one single program over that period of time or multiple programs that run one after another? If you have just a single program, ping shouldn’t occur until that program is finished. If you have multiple programs, ping will occur at the end of each program.