I am facing a very strange behaviour with my PXI recently, and I ask for help and suggestions what might cause this.
PC side: win7, x64, LV 2015 32bit,
PXI: RT (pharlap)
PXI is connected via local Ethernet to PC. Some time ago I have developed a RT application to run on this PXI unit. For diagnostic reasons, for monitoring and even for manual control, I published the FP of the main vi of this application. I have followed this procedure: http://digital.ni.com/public.nsf/allkb/AB6C6841486E84EA862576C8005A0C26
Everything worked as I wanted, I could see using my web browser live data coming from some gpib devices connected to the PXI, and I had the feature even to initiate some gpib commands when it was needed for diagnostic reasons.
A few days ago, I had to move the project to another folder in the local hard drive on the PC. I have got some problem when I tried to build the project again after changing some parts of the source code. One problem was that the build could not locate the html file, even if it was still under the www folder inside the Labview2015 install on the PC. So what I did, I just create a new html file using the same main vi like before, and it was working again.
After this fix, I realised that now I can access the same vi via two html files: PXI-master.html (the old one), and the new Master.html. I tried to "kill/wipe" the old html file, I have deleted it from the PC (www folder), and also from the RT target using the web file interface (it was sitting on the RT at two locations). I re-deployed the new built from the PC to the target, and rebooted the target. Surprise! I could still access the vi front panel using the old html address! And it was not the cache of the browser, I could see the live measurement data changing! what the heck! :)))
Anyway, I could have lived with this situation, who cares, I can access the front panel via two addresses, not only one. However, a real serious problem appeared! Namely, whatever code modification I make on the main vi, like adding a new indicator, it appears in the web published websites, but does not change value!!! Whatever was the default value of this indicator, its status stays like that forever, even if i am sure it is changing inside the code when it is running! Therefore, i cannot continue the development of my project any more, I cannot examine changes in my application via web browser. Mysteriously, the published web browsers still showing love measurement data accurately.
I am asking for help, and info to understand deeper how this web publishing works on RT. Some questions:
1. How is that possible that the old html still functions? I have deleted it from everywhere. OK, I did not restarted the PC, but I can try this tomorrow.
2. How can I kill and wipe clean my PXI from this html and my RT app? I do not want a hard reset, I would rather avoid re installing every software on this PXI...
3. Where does this html live/exists? How could the PXI revive it?
4. How is that possible that a new indicator appears on the FP in the web browser, but does not function at all??? All old indicators are OK!
Thanks very much for the help! 🙂
Another strange thing was that, from inside the project tree, inside the build properties, the web server is grayed out. But this did not stop LV to manage creating the new html file, and publishing it...
Ok, I managed to fix the things. I went through the PC and the PXI and deleted all the old html files. Also, I deleted the cache of the Firefox just in case. I re-created the build too.
Actually the problem what I have encountered with a simple LED indicator was simply due to the start-up order of the RT application plus the first update of the web published FP.
For testing I just had this LED indicator BEFORE the main while loop, in a while loop with a wait for 500 msec. After 500 msec I changed the value of the indicator, and the execution moved to the main while loop. I imagine the following happens: when the RT application starts, the beginning of the code does what programmed there, but this info is not updated toward the web published part??? I am just guessing, but when I moved this testing indicator into the main while loop, I saw that its value is True... Interesting thing...