I must say that your overly complicated setup is blocking me from understanding what is going on.
Just isolate one meter, say SDM3065.
Set NPLC and trigger settings manually on meter.
Don't set it up with SCPI.
Apply input pulses and measure that and VMC OUT with a scope.
Meter that responds with "measurement completed" signal sooner than you think it should might be just that meter is sampling with different NPLC than what you think you set.
When testing these type of things, test in isolation and one variable at a time. It is faster and simpler that way.
if you set by software or by keypresses the values are there and are the same, the delay between trigger in and VMC out are constant with EVERY setting of NPLC, this is coherent with the fact that VMC is issued before aperture time.
(setting by software saves you lots of time if you are making many tests and you can be repeatable)
Are values the same? Did you try what I said?
Of course setting with software saves time, but we are now troubleshooting.
Now you can have :
1. problems that code does not send proper data (not necessarily error of programmer)
2. problems that meter might not interpret SCPI commands properly (for various reasons)
3. fact that it is hard to understand what is really happening here.
If I understood correctly, your claim is :
"When I trigger acquisition with Trigger in, VMC Out pulse seem to get pulsed before end of acquisition should be by NPLC settings.
Also that (too short) delay between Trig IN and VMC Out does not change when changing NPLC".
Like I said, could you please simplify the setup, just one meter, and scope with only Trig in and VMC out and so we can see exactly what the delay is.
Then change NPLC on meter manually. Also make sure you are doing acquistion on Triggered input.
If you want to prove one thing you test for that exact thing.
Using only one meter and manual setting enables others that have that meter to check (like KungFuJosh for instance).
Nobody is going to replicate your setup, load software or whatever...
You need to help people to help you....
If this is problem with FW, people should be able to replicate same timing as you, down to µs.
Then we have a bug to report, and also a simple recreation procedure for Siglent.
If if it is not working right, they need to fix it.