Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by hooovahh

  1. I had some issue with a bad stick of RAM in my computer that made the installer not work in unexpected ways and I got a similar error too.
  2. Wonderful suggestion. Most LAVA members that are older than some date have a wiki account and are welcome to update it.
  3. Maybe it has something to do with the fact that we have a more graphical mindset and don't care as much as long as we can convey a thought. Maybe because we are primarily engineers? Or this is a wiki with a relatively small support base? In any case thank you for your wiki contributions.
  4. All very good points and good concerns. Personally I would capitalize Boolean, but I may forget occasionally. I would also prefer subVI as I've gotten used to the NI standard. I can see the confusion with LabVIEW and G, and often I go back to what the community at large uses. If I say "My programming language of choice is G" some may confuse this with GCode, or something else. If I say LabVIEW I think that conveys what I mean to the general public more. For this reason I default to "LabVIEW" but at times will say G. Public opinion may change, and that may mean updating the wiki. And if there are specifics I'd prefer separate pages for 20xx and NXG, but whatever. One thing you might not be aware of is that there is a place for page specific discussions on the Wiki Talk Page. You could make an edit, but leave a comment asking for direction or leave it open to preference. That being said I think the opinion of most moderators on the Wiki is more that getting something which is non-perfect, is better than having nothing. I'd encourage others to make pages and fill in what they can, even if they are unsure of how to handle some of these differences. Things can always be cleaned up and refined later.
  5. Here is an answer by NI about why DIadem and Excel add-in do weird things with spaces. https://forums.ni.com/t5/DIAdem/Spaces-In-Property-Names/td-p/2831180 Basically its due to how it is indexed and put into a database. The standard LabVIEW TDMS API does allow writing and reading properties with spaces in them.
  6. Does the Get Properties return an error? If so what is the error? Show your VI that does the reading and writing. Oh and what is the property names there are a few that NI reserves.
  7. Not really. I mean it might be possible but an easier way to handle this would be to setup your VI to run on open, and then just ask your users to double click on the VI from a shortcut somewhere like the desktop. Then it will open that VI in LabVIEW (because that's what happens when you double click a VI file) and on open it will start running it. You can even configure the VI to quit LabVIEW when the VI stops running or the user closes the window. Then they wouldn't even know it is running in the IDE. This does however go against some standard programming practices and the better answer would involve still turning the code into an application, and figuring out what features you are trying to use that isn't available in the run-time engine. And try to code around them.
  8. Sorry no idea, I didn't even know this was possible. I'd contact NI support if you don't get any other suggestions.
  9. The linked article specifically states that it is for Windows and has you go through the process of creating drivers and installing them in Windows so that process isn't possible on RT. Also NI sells PCI and USB based FPGA's that can be programmed with LabVIEW, but I assume you went with a custom chip for a reason.
  10. Pulling the VIs out of an EXE isn't the hard part. In relatively recent versions of LabVIEW you can pull out VIs from an EXE. I think the last version I did this on was 2015. But the VIs are a binary blob with no block diagram, generally no front panel, but can be called as a subVI in the IDE. And with the forward compatible run-time engine that means any LabVIEW 2017 EXE can have its VIs pulled out and ran in 2017 or newer. I haven't tested this but I think it should work. But as others have said, getting the source code out of an EXE is considered impossible.
  11. I don't think making an XControl transparent is difficult. NI recommends setting the Facade VI to be "Window Runs Transparent". Then you can color the 2D picture control to be transparent. If the user chooses a background color other than transparent, then set the background color of the front panel, and set the Facade to not run transparent. If that doesn't work you should be able to draw a rectangle behind the chart the color the user wants. In any case congratulations, it looks like you put a lot of work into this, and I hope the market finds this valuable. I've never tried to sell any LabVIEW toolkits but I get the impression it is a difficult market.
  12. Wow yeah whole crap congratulations. Everything appears to be native G. It always feels like cheating when I see stuff like this that just is some .Net wrapper under the hood but this is an XControl which I would guess is a 2D picture control. I also like that you can see the settings update as you change them. That being said there are a few things I wish worked better. XControl resizing is one that would be nice so things like Fit to Pane worked. That Circular Chart Designer dialog can't be resized and it is actually too tall for my main monitor. Even the Circular Chart Example VI is too large and I had to change the settings to allow to make it fit on my monitor. Background color allowing for transparent would be nice but in most cases can be colored the same as the pane and you won't notice. I also don't see any XControl Properties or Methods to change the UI programatically. One easier solution for this would just be to allow to load premade CCS files with an invoke node. Then if you want to switch to other settings like changing the description, color, style, etc. Just load one made earlier. That can help you avoid having to make so many properties and methods. I really only played around with it for a few minutes but whole crap is there a lot of settings. I'd often try to do something to change one part of the chart and go down a rabbit hole of playing with every control to just see what it would do and how it would change it. The help is helpful but there just was things I had a hard time trying to figure out how to adjust.
  13. Okay for the heck of it here is my interpretation. I read that as OP trying to remove the last few characters from each string in an array. (also I read "few" as 3). Also snippets might not be working so attached is a VI in 2018. Remove Strings Test.vi
  14. Yeah these controllers are quite limited on space. I have a 9132 running wes7 and I was able to install LabVIEW 2018 SP1 development, XNet, DAQmx, and VISA support. After that the drive has very little space left, like 1GB. If possible a better option is like what JKSH said and to create an EXE and an installer, then just install that on the device instead of the full IDE. However debugging things wrong with your application is harder when you don't have a VI to just open and debug. So either option should be possible for you. If you are generating large logs you can put in an SD card, or a USB drive and log to that. It is also a full featured OS so logging to a network is also pretty simple.
  15. There doesn't appear to be a native way to do this, but if you write a VIM for this then you should be able to reuse that on any map type.
  16. LAVA has been known to strip out that meta data in the past. I remember one instance where it was seen when the image wouldn't fully fit on the post and it would do some scaling on the server side. I'll ping Michael but until then I'd recommend attaching the VI.
  17. I'm not a HID device expert (Rolfk maybe?), but there seems to be several DLL wrappers to talk to HID devices, but the best solution is to use NI-VISA and talk to it over USB Raw. For this you'll need to make your own INF driver using the NI-VISA Driver Wizard (should be installed with NI-VISA). Then install that driver for your device instead of the one from Microsoft (Device Manager). For this in Windows 8 and newer you'll need to disable driver verification. Then the device shows up in MAX, and the Help >> Find Examples and searching VISA Raw will show some examples. http://www.ni.com/tutorial/4478/en/ https://forums.ni.com/t5/LabVIEW/Nugget-1-of-n-GEtting-started-with-USB-communication-via-VISA/td-p/743518 https://forums.ni.com/t5/LabVIEW/Nugget-2-of-n-USB-Control-transfers-using-VISA/td-p/757011 If you can't or won't use VISA then there are lots of other DLL wrappers but I haven't found one that works as well as VISA with custom driver. http://ahidlib.com/pages/programming_labview.php?lang=en (license needed for full?) https://forums.ni.com/t5/Example-Programs/Windows-API-HID-Functions-Enumeration/ta-p/3513868 https://forums.ni.com/t5/LabVIEW/Confusion-between-HID-and-VISA-communication/m-p/1741390#M610130 https://forums.ni.com/t5/LabVIEW/Need-Example-Code-to-Interface-with-a-USB-HID-compliant-Device/m-p/2763516#M814451 https://forums.ni.com/t5/LabVIEW/How-to-configure-the-call-library-function-using-a-dll-for-HID/m-p/2757194#M813218 https://www-user.tu-chemnitz.de/~heha/mb-iwp/Durchflussmesser/
  18. It is open source. It is licensed under BSD, which in layman's terms means you can use it for personal or commercial use, and various attributes must remain in the source, and you can't sue the author (I am not a lawyer). I think the installed location is <user.lib>\_LAVA\VariantProbe
  19. Here is a quick and dirty edit. It allows for column separators to be moved, but I noticed that on resize it will set the column widths. So this means if you manually move the columns, and then resize the control it may change the columns in an unexpected way. But at that point you can manually move the separators again. I only have 2017 and 2018 so this is for 2017 and newer now. Variant_Probe-2.4.3-0.ogp
  20. There's a little bit of Rube Goldberg action going on here, but I think I follow what you are trying to do. I'd suggest precalculating what all the values are and put that in a subVI. Then call that subVI and index out the current step that you are on keeping track of it in something like a while loop and a shift register. Attached is a simple example. Have you taken any free LabVIEW training online? Here is some on the LabVIEW Wiki. Ramp Pattern.zip
  21. Oh and lets not forget that some cRIOs now support DAQmx so programming the FPGA part is even more optional. https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019PUNSA2&l=en-US Some times I find myself changing what things I want to be done where. I might start with an idea that certain tasks will be on RT and others on the Windows host, but as time goes on I realize my decision might not have been ideal. I guess what I'm saying is whatever you do, make sure you let your design be flexible enough, that a total rewrite isn't needed if some part of your software needs to be done on a different target than first intended.
  22. Oh yeah I forgot I used to do this. I'd download things and just throw them into a sandbox folder where I could play around with stuff people posted and see if I can mine any reuse nuggets out of. I'd try to make a text file with a link to where I found it online, but searching the name of the VI in google was usually enough to find where it was being discussed. Still this is less about what OP is asking, and more just myself trying to find and use useful tools.
  23. We generally don't close threads on LAVA, even things like this can be useful to others...assuming you have a solution that is worth sharing so someone in a similar situation can find what you did.
  24. For the most part I just use Google, and the fragments of memory I have. Someone will post something and I'll be like "That sounds familiar, did I help answer a similar question once?" and I'll search "(topic idea) hooovahh site:lavag.org". Beyond that I do have a list of commonly asked questions that I bookmark. Chrome settings are synced if you are logged in so I have a few folders with common links to various threads that I add to from time to time. Sorry I don't have some super magical RSS tool.
  25. I think this is exposing one of the issues NI had with XNodes. One reason I was told by R&D that XNode development had slowed and halted, was due to the fact that XNodes don't work well inside classes, or more specifically they don't work well in libraries. I couldn't pin point the issue exactly, but it seemed that opening a library would lock the XNode, and opening the XNode would lock the library. I found some working solutions that were all terrible but I just couldn't get the IDE to work nicely and I suspect an XNode in an XNode has the same issue and I think name space was partly to blame.
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.