Is the option "Replace constants" active in this project? This option has a big impact on HMI startup time especially when there are many digital I/O in the project.
Explanation: There is a method "GetSymbolInfo" provided by the Beckhoff ADS communication layer that is called at startup by the communication driver for every configured HMI variable. A single call to this method takes longer for a symbol that is a member of a large FB with many sub-symbols, like the BinIO FB. Replacing the constants reduces the number of available symbols in the BinIO FB, making the "GetSymbolInfo" call for each digital IO faster.
The reason why the HMI takes very long to recover after updating the PLC project is probably directly related to the same issue. Again, the HMI driver needs to check all symbols. Of course it would be good if the HMI could display some message about the communication being intterrupted, but currrently we don't get such an information from the communication driver.
... View more