On the preset screen, select provision script under the configuration tab, then you have two additional text boxes. One for the provision name (must match the name on the provision screen), and one for args.
Here is the configurations section for two different presets:
This first one sends the argument “Scheduled” to the provision script.
And this one sends the argument “Boot” to the provision script.
The reason for this, is sometimes we only want to do firmware upgrades when the CPE has just booted up, and other times we only want to do them when scheduled (between 2am and 4am). In the Firmware_Upgrade script I have builtin the logic as to when a firmware for the given CPE gets upgraded.