05-21-2020 03:00 AM
Hi guys.
I'm using NI sbRIO-9627 and I want to change ip adress on Primary Ethernet Adapter (eth0) using a System Hardware property node. Meanwhile NI sbRIO-9627 connected to developers machine via Ethernet Adapter usb0.
As you can see below I detect primary Ethernet Adapter using its property "IsPrymary" and then I change its properties. Then I check if my changes were validated. But I have a warning, that my changes are not validated and saved (number 4 on block diagram). After that I save my changes. When I check for changes again in (5) I can see, that my changes were not applied.
How can I solve this problem?
05-25-2020 07:19 AM
You seem to close the session before applying the changes to it (no data flow dependence between the close and the actions to be applied prior to the close...), so that's one issue at least.
Here is a picture of a working solution. The incoming Interface name on these devices is just eth0 (primary) or eth1...
05-27-2020 05:00 AM
I'm not sure what you exactly meant by saying "no data flow dependence", but as you could have seen, the output System Hardware Wire of my System Hardware Property Node (3) was not connected to Save Changes.vi (4). That's why configuration to hardaware had not been applied...
After fixing this inappropriates required properties were successfully implemented to my sbRIO-9627 Primary Ethernet Adapter hardware. Which was the point of my issue.
Thank you you for your example!
Have a nice day.
05-27-2020 05:41 AM - edited 05-27-2020 05:47 AM
Sure, there were several issues. The example was given to rather quickly replace the code with something that works.
If you have just modified in the fix you mention, you still have the race condition issue I mentioned:
In the lower example the Close depends on data from Set Time, so it will wait and execute when it is supposed to. There is a *data flow dependency* controlling the order of execution, rather than leaving it up to chance.