Jump to content

Jordan Kuehn

  • Content Count

  • Joined

  • Last visited

  • Days Won


Jordan Kuehn last won the day on February 26 2016

Jordan Kuehn had the most liked content!

Community Reputation


1 Follower

About Jordan Kuehn

Profile Information

  • Gender
  • Location

LabVIEW Information

  • Version
    LabVIEW 2018
  • Since

Contact Methods

Recent Profile Visitors

2,076 profile views
  1. Well, things have morphed a little and I may have been using some terms a bit freely. But for now I've been able to replicate the steps used in Google Authenticator for producing HMAC-based One-time Password algorithm (HOTP) with the help of this article as a starting point. There's still plenty to work through, but I was unable to find this available for LabVIEW anywhere. Perhaps I may be mistaken and there are some more fully developed libraries out there. I would love to see those! The workflow is basically that an operator needs to get approval from an administrator to proceed with the sequence. Well, needs to be forced to get approval. A TFA implementation along the lines of what Shaun mentioned that could trigger the authentication process by an HTTP message to an existing service might be a way to use an authenticator app without a code. Obviously I'm no web developer. E.g. attempt to log onto a dummy google account with TFA set up and refuse to proceed until the service says that the authentication was successful. This would be dependent upon the pre-configured app on the supervisor's mobile device acknowledging the log-in, then LV would log back out. Perhaps the wrong hammer for this screw?
  2. Has anyone dealt with integrating with 3rd party two factor authentication systems (e.g. Google Authenticator, Authy, Microsoft Authenticator)? I've searched around and found some information about Oauth 1.0a here but I'm not sure that is much help. The use case is an operator wanting to trigger an action that is approved by a supervisor on a mobile device. Offline authentication would be very helpful too.
  3. Right. My point is that it is not intuitive to someone who is starting to work with NI Vision. Perhaps that has changed in recent years? I have seen so many people get confused why they branch the wire and perform image manipulation operations on it and wonder why the behavior is erratic for example.
  4. A good way to illustrate what the IMAQimage reference is. I really wish they had a better way to differentiate this on the wire. I've had to explain countless times that the wire is a reference not a value, but it just feels like it should be by value unlike other things that use reference wires.
  5. I use about as many four letter words each time I find Windows wants this stuff saved somewhere else or starts moving around user docs and such.
  6. In what format do you have these signals? Array? Waveform? Dynamic Data Type? If the latter two, there are some fairly straightforward ways to re-sample and interpolate in the Signal Processing -> Signal Operation palette or the Express -> Signal Manipulation palette (Align and resample plus append signals perhaps).
  7. It has been a hot mess with trying to get 2019 installed on my laptop. It killed all DAQmx support for 2018, but had options for the other version installed. Then wouldn't uninstall correctly and the NI website has simultaneously revamped ni.com/downloads making a standalone nearly impossible to find. Can we have ni.com/src back?
  8. I believe if your word length is 16 bits and the integer word length is also 16 bits and mark unsigned you will have a FXP data type that will contain the UINT16 properly.
  9. I'm not entirely certain what your use case is, but I have found that Bookmarks in Word and Named Ranges in Excel are useful with the RGT for updating fields in a template. Especially when provided a report by the customer rather than being able to design our own.
  10. If you have the DSC module this may be what you are looking for. https://forums.ni.com/t5/Example-Programs/Creating-a-Value-Change-Event-for-Shared-Variables/ta-p/3528947?profile.language=en
  11. From my limited testing the cRIO DAQmx support is fairly limited in speed. Perhaps it will improve, but it did not fit the intended application like I had hoped. By all means give it a try though if you have the hardware for it and I'll still consider it for future applications myself. Very good points. Another thing I'll mention to customers is that each layer down involves a significant additional software component (aka $$). Not only is the FPGA a different beast (despite improvements over the years) compilation time and iterative development is slow. Like smithd mentioned, it can often be better to spend the money on hardware if applicable.
  12. Agreed with a lot of the above. Also, I tend to download lots of the attachments that seem interesting, promptly forget about them, and then months later rediscover them and think "hey that would have been nice to have used weeks ago".
  13. I just loaded a bunch of JKI VIPM packages onto a new laptop and a bunch of OpenG packages were dependencies. I would not say this is dead at all.
  14. A good use case is when you encapsulate code in a case structure based on error/no error. Common in SubVIs. The error case will usually have the error wire running straight through, while the non-error case may have many VIs that *do stuff* and don't necessarily align error wires together. I don't usually drop the line back down to the base reference in between VIs, but there are times that I'll put a few in a row, drop back down, and then come back up for another batch. It's purely cosmetic.
  • Create New...

Important Information

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