try this - Create a new group for each model of the computer. add the options for WMI query on the Flash step and do it for the group you just created. Add the flash step to each group according to the model, this makes sure that each group of tasks will only run if they match the WMI queries, rather than just the ONE step. On each "Flash BIOS" step for each model, remove the /r from the command lines, and add /f. We will have it complete the reboot at the end.
Next - in the first group, add a General step - Set Task Sequence Variable.
Task Sequence Variable is "SMSTS_BiosUpdateRebootRequired" (without quotations)
Value is "True" without quotations.
Copy and paste this set task sequence variable to each group for the models after the flash bios setup.
At the end of your task sequences, after Apply BIOS configuration, create a new group and name it "If reboot required". In the options tab for this group, add a condition that if the Task Sequence variable SMSTS_BiosUpdateRebootRequired equals True. In the reboot required group, add a general step to restart the computer.
I read that it is advised to control reboots using the task sequence rather than command lines. it will reboot before it even applies the BIOS configuration. I set the restart step to be performed after the apply configuration just so it sets everything and reboots, which seems like a good practice for something like BIOS configuration.
!ALSO! Once the numerical BIOS versions hit 1.10.x the > "version number" query does not work. once you hit 1.10.x you must use "SELECT * FROM Win32_BIOS WHERE NOT SMBIOSBIOSVersion = "1.22.8"" as your WMI query, as 1.9.3 is considered a higher integer than 1.13.3 to sccm - if that makes sense.
quick edit - I was able to test this and was successful in updating the BIOS for a few machines. they show as success in SCCM under monitoring and if they do not install a BIOS it will still finish as successful on the PC and still show in SCCM as successful.