When the option "write synchronously" is active at a recipe, when writing a recipe (sending values to the PLC) for each recipe variable a writing confirmation is requested to the driver. On a successfull write, the driver sends a writing confirmation back to the Recipegroup manager. This is verified before the next recipe variable is written.
The timeout that can be defined at the recipe for the writing confirmation, is the timeout for all the recipe variables in the recipe to be written, and receive a writing confirmation from the driver.
If the driver does not succeed to write all values, and report the writing confirmation, within the defined timeout time, the recipe execution itself runs in the timeout and the result is written accordingly to the feedback variable of the system driver.
The intern driver does not support the writing confirmation mechanism (it isn't a real driver after all). When using a variable from the intern driver in a group of the Recipegroup manager, and using the option "write synchronously" for a recipe of this group, there is no writing confirmation from the driver, and the recipe execution will timeout. With many variables of the intern driver in this recipe group, it can happen that the recipe execution takes a long time, and the Service Engine will wait when being closed.
From zenon version 7.00, when there is a variable of the intern driver in the Recipegroup, and a recipe with "write synchronously" set is executed (written), the Recipegroup manager no longer waits for a writing confirmation for the variables of the intern driver in this recipe group.