-
Posts
4,883 -
Joined
-
Days Won
296
Content Type
Profiles
Forums
Downloads
Gallery
Everything posted by ShaunR
-
Hmm. Isn't the string terminated? It may be that the read byte count is a red herring and doesn't behave as you would expect. It depends if the port was configured to use term chars in the serial init.
-
The second one is just a different frame. It's not a different version-just a separation of "Swapped" from "Little Endian" as defined from the original drop down list. The 64 bit s a valid criticism, though and I'll leave it as an exercise for the OP if he decides that route (unlikely )
-
Nice! . Does it ignore the terminating char because of the data type? That's a something to be aware of.. I think there is a bug in the original code since "Swapped" and "Little Endian" are the same. However. From experience "swapped" is the following and not supported by the primitive.: I forget now. But the flatten is quite an expensive operation on large data. Is there a performance consideration between the two approaches?
-
They are not the source of your memory leak. The query could be tidied up a bit but with VISA there aren't many options. A slight change with a small advantage would be to build the concatenation at the loop edge (array of strings) then convert to a single string with the bulld string primitive. Real gains can only be made with fixed size buffers and replace elements but then you need all the ancillory capabilities like setting the size of the buffer and the different modes of operation like with the TCPIP primitives to make it generic. I'd leave it alone if it's working. Optimizing the second one is a no brainer, though. Since I don't know what the licence is for the Keithly Vis, I'll just show the alternative solution rather than post the VI.
-
I haven't done much recently with these targets so can't contribute much. But!..... I wanted the project manager to be able to nest projects several years ago. That would solve this problem and enable developers to work and test on separate projects in parallel and pull them together as sub components much more easily-which is why I wanted it. So rather than being a separate target within the project. It would be separate project completely that you could add to another project. Every other IDE has this capability.
-
Tongue in cheek..(What? No likes Transport.lvlib You think too much Too many engineers have their sense of humour beaten out of them by unrealistic marketing requirements and customer demands. Post and be damned My current favourite is: Linux is Windows 95 without the GUI.
-
The best thing I like about *any* jokes is you get more likes than if you answer questions ( ͡~ ͜ʖ ͡~)
-
None of the NI products can navigate proxies properly-even transparent ones. I have to connect directly if I want to use any of their download/upload features (updates, the toolkit down loaders, NIER, et al.),
-
Likewise to all above. huge +1 thanks for taking the videos and distrinuting them for us.
-
CRIO-style architecture for Raspberry Pi
ShaunR replied to dmurray's topic in LabVIEW Community Edition
Well. This is do far off-topic I can't even remember the OPs questions Maybe Hooovahh can move this and the rest to another thread.? -
I don't know if the concatenating tunnel is more efficient. I thought it was just syntactic sugar. Anyway. You could back-save to 2011 and avoid everyone else from asking for it in an older version . You don't have to develop in the old version. The caveat would be if you wanted to use native primitives (like the parser in 2013).
-
Why? 2011 works in all versions up to and including 2016
-
CRIO-style architecture for Raspberry Pi
ShaunR replied to dmurray's topic in LabVIEW Community Edition
Basically. If you try and use events in "Event Driven" languages, the same way you use them in LabVIEW for 1:1. Everything falls over because the assumptions about the underlying mechanisms are incorrect. I think architectures should be language agnostic. -
Yeah. They're not very robust. Try clearing your object cache.
-
Stale VI Server Connections
ShaunR replied to John Lokanis's topic in Remote Control, Monitoring and the Internet
If IT have said that a keep-alive will work, then that is the proper solution and you should be trouble free from then on. Checking every 55 minutes because they said the idle timeout is one hour is just asking for it to fall over in 6 months when someone in IT decides 45 minutes would be better -
Stale VI Server Connections
ShaunR replied to John Lokanis's topic in Remote Control, Monitoring and the Internet
You can get these symptoms if there is a proxy between you and the target. What tends to happen is the connection between you and the proxy is kept alive but the connection to the endpoint from the proxy closes due to inactivity. This means your connection looks good but the tunnel fails when you try to use it. The easiset solution is to heartbeat the connection. -
LVA-Tools.Co.Uk is having a Post NI Week Bonanza with 40% off all commercial toolkits.. Offer is available for one week so grab the opportunity to secure your business data and websocket that application.
-
Approach for watchdog timers?
ShaunR replied to dmurray's topic in Application Design & Architecture
I don't know much about that module but if it has that capability then yes. you could do that. Most NI modules are quite expensive and now you would have a hardware module dependency for just a watchdog. Most Linux kernels have a watchdog feature if the hardware supports it so I would look into that first. If that's not possible, cost is an issue and it is likely just your application that will hang rather than the OS; then you can spawn a separate process to act as the watchdog. -
Approach for watchdog timers?
ShaunR replied to dmurray's topic in Application Design & Architecture
Watchdogs usually give you the option to restart the software if it stops responding and are usually hardware driven. If you have a software one, the chances are your watchdog will hang too so you need an external process that gets kicked every so often. This external app can then forcefully close the application and restart it. You can communicate with the watchdog via TCPIP or sharedmem and just message it every so often from a dedicated loop in the software -
Yes.When mapping LabVIEW variables to other languages then you tend to need "tags" and I can see why the CVT is probably the best solution here. You can define a tag name and use the name in JavaScript to update the UI. You can play around with spamming get requests and consolidating messages into larger update messages but the CVT would be simpler, easier and require less framework. I do the same for websockets but am able to generate events from the LabVIEW UI changing so the tags are implicit in the control/indicator names. Of course. That wouldn't work on a cRIO with no UI. Do the latest ones with a UI support UI events? DCAF. Yes.
-
How to turn off diagram dancing in LV2016
ShaunR replied to ShaunR's topic in Development Environment (IDE)
So now you want me to learn how to make shortcuts I don't use as well? The list goes on.... Next you'll be telling me to learn to type with all my fingers Do people still use Google? -
How to turn off diagram dancing in LV2016
ShaunR replied to ShaunR's topic in Development Environment (IDE)
It's not that I don't like it. It's that it's not useful to me. I don't know what the primitives are called but I know exactly where they are in the menus-IT'S A VISUAL LANGUAGE! I call this "The Chooser", for example. I'd have to open LabVIEW and mouse over it to find out what it's actually called (and then I'd immediately forget). Words is hard! Beta testing isn't a focus group That's the idea exchange. It must be hard coded because it only effects the TCPIP pimitives - not networks streams etc. This is a deal breaker for me and for what? Because "Select" on *nix systems only supports 1024?. On Linux they have gotten around it by using poll and epoll so why not upgrade the *nix platform to more than 1024 instead of downgrading Windows? On Linux you just simply recompile, right? This the worst type of specmanship