03-08-2016 06:42 PM - edited 03-08-2016 06:42 PM
Here is a much simpler implementation. It got rid of almost all the blue wires. None are going through queues now. And it got rid of unnecessary extra loops. Charts and indicator updates really belong in the same loop, and that gets rid of a notifier.
Look at some comments I have in the disabled parts of the code. The event structures look like they would have problems, and the logic for those additional loops doesn't make sense to me. I'm pretty sure all of those event structure loops could be combined into a single loop.
03-10-2016 04:39 PM
Thanks for working with my code. When I run the version you sent me, I am able to read any values. The chart is updating with what appears to be correct values, but the numeric indicators return 0 for all channels. Also, the chart is updating very slowly and gives an error saying there is not enough memory.
03-10-2016 11:33 PM
I dont' know why the chart would be working and the indicators not. The data is all coming from the same source. It is possible that there is a conversion problem with the From DDT express VI that is in the consumer loop. It is essentially hiding one last evil blue dynamic data type wire where it is converting the array of waveforms back to the DDT (you can't see it, but it's happening in that coercion dot). Then the express VI (which can often be evil, but in this case made it easy to grab the last value form each waveform without a lot of code) is converting that to the array of numerics.
Are you having the issue trying to use the modified VI that I gave you? Or did you try to replicate that VI in your own original VI (in which case made you didnt' do things quite the same way.)
Trying using the troubleshooting tools such as probes to figure it out.