ni / niveristand-ballard-milStd1553-custom-device

Custom device for Ballard MIL-STD-1553 hardware
MIT License
2 stars 4 forks source link

Fix for Tx writes not being valid when multiple instances of custom device exist #255

Closed vijayvasu-ni closed 5 months ago

vijayvasu-ni commented 5 months ago

What does this Pull Request accomplish?

Forces each Tx Execution Unit class to store its own copy of previous data values. The current implementation shares data space across all Tx Execution Units due to the requirement that reentrant dynamic dispatch VIs be shared reentrant.

Adds a VI Check Previous Values.vi to compare the data values Each execution unit calls Check Previous Values.vi in Write to Hardware.vi so the check is actually valid against the last iteration of that execution unit and the data used for whichever execution unit ran last.

Why should this Pull Request be merged?

Fix for https://github.com/ni/niveristand-ballard-milStd1553-custom-device/issues/253

What testing has been done?

Ran all the unit tests. Manually tested that multiple instances are working as expected in RT target. image

niveristand-diff-bot commented 5 months ago

Bleep bloop!

LabVIEW Diff Robot here with some diffs served up hot for your pull request.

Notice something funny? Help fix me on my GitHub repo.

Ballard MIL-STD-1553 Engine.lvlib--Implementation.lvlib--Tx Execution Unit.lvclass--Check Previous Values.vi.png ![capture](https://raw.githubusercontent.com/niveristand-diff-bot/diff-images/master/ni/niveristand-ballard-milStd1553-custom-device/PR-255/2024-05-31/10%3A55%3A30/Ballard%20MIL-STD-1553%20Engine.lvlib--Implementation.lvlib--Tx%20Execution%20Unit.lvclass--Check%20Previous%20Values.vi.png)
Ballard MIL-STD-1553 Engine.lvlib--Implementation.lvlib--Tx Execution Unit.lvclass--Write to Hardware.vi.png ![capture](https://raw.githubusercontent.com/niveristand-diff-bot/diff-images/master/ni/niveristand-ballard-milStd1553-custom-device/PR-255/2024-05-31/10%3A55%3A30/Ballard%20MIL-STD-1553%20Engine.lvlib--Implementation.lvlib--Tx%20Execution%20Unit.lvclass--Write%20to%20Hardware.vi.png)
niveristand-diff-bot commented 5 months ago

Bleep bloop!

LabVIEW Diff Robot here with some diffs served up hot for your pull request.

Notice something funny? Help fix me on my GitHub repo.

Ballard MIL-STD-1553 Engine.lvlib--Implementation.lvlib--Tx Execution Unit.lvclass--Check Previous Values.vi.png ![capture](https://raw.githubusercontent.com/niveristand-diff-bot/diff-images/master/ni/niveristand-ballard-milStd1553-custom-device/PR-255/2024-06-13/19%3A46%3A00/Ballard%20MIL-STD-1553%20Engine.lvlib--Implementation.lvlib--Tx%20Execution%20Unit.lvclass--Check%20Previous%20Values.vi.png)
Ballard MIL-STD-1553 Engine.lvlib--Implementation.lvlib--Tx Execution Unit.lvclass--Write to Hardware.vi.png ![capture](https://raw.githubusercontent.com/niveristand-diff-bot/diff-images/master/ni/niveristand-ballard-milStd1553-custom-device/PR-255/2024-06-13/19%3A46%3A00/Ballard%20MIL-STD-1553%20Engine.lvlib--Implementation.lvlib--Tx%20Execution%20Unit.lvclass--Write%20to%20Hardware.vi.png)