LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
0 Kudos
Ted_White

Multiple Keyboard

Status: Declined

Any idea that has not received any kudos within a year after posting will be automatically declined. 

Have a way of identifying which keyboard a keystoke has come from if you have mulitple keyboards connected to your computer. This could be done either through the event structure or the Input Device Control VIs.

 

This could also be accomplished by having the input devices detected and accessable from the USB and/or VISA functions.

8 Comments
AristosQueue (NI)
NI Employee (retired)

In all my years of programming, the only times I have ever seen multiple keyboards connected to the same computer was a) that the second keyboard was a specialized key entry that generated unique characters that couldn't be typed on the primary keyboard OR b) the second keyboard generated macros for sets of keys from the primary.

 

In the first case, it is easy to tell which keyboard generated which key. In the second case, you wouldn't want to differentiate since the whole point of the second keyboard was to play macros as if the keys came from the first keyboard.

 

I have never visited any customer site where someone had multiple keyboards that could generate the same keys connected to a single computer and you needed to tell which was which. I've never seen such a setup in any venue. I'm very curious: What are you doing that you have this setup? Regardless of what you are doing, I'm seriously doubtful that enough users are doing this to make it worth NI's time to implement. But we'll see what kind of kudos come in.

 

You can make DLL calls from LabVIEW out to the operating system. It may be that there's a system call you can make that would give you this information.

tst
Knight of NI Knight of NI
Knight of NI

AQ, I could see some use cases (like a keypad that's used to enter a specific value regardless of where the focus is), but I can't say I actually needed anything like this myself.

 


@Ted_White wrote:

 

This could also be accomplished by having the input devices detected and accessable from the USB and/or VISA functions.


My understanding is that this is already possible - you will need to install a VISA RAW driver and read the data in directly. See here and look for more - http://forums.ni.com/t5/LabVIEW/Nugget-1-of-n-GEtting-started-with-USB-communication-via-VISA/m-p/74...

 

 

 

 


___________________
Try to take over the world!
Intaris
Proven Zealot

I've done something similar over VISA (I wrote the USB nuggets) but it's my understanding that later versions of Windows (7 and 😎 don't allow installing of VISA drivers for HIDs.  This means you would have to implement a HID DLL interface and go from there.

muks
Proven Zealot

Just curious to know the application

Ted_White
Member

The application is a background task to another application. One instance is for people to sign/scan in, another is for devices to be signed/scanned in as they are placed in a temperature chamber. In both applications the second keypad or scanner is accompanied by a second monitor. The idea is to monitor the second keypad without removing focus from the main application (and disrupting the main operator).

 

I realize this could be done with another computer but it seems like a waste to just read a keypad and enter a number in a database when there are lots of resources available o the main computer.

 

Windows 8 makes it more difficult than just creating a driver using the NI-VISA Driver Wizard.

 

I could also use a regular serial (non-USB) keypad, but these are becoming much less available these days.

AristosQueue (NI)
NI Employee (retired)

That is a novel use case. I don't think personal computers have been designed to support multiple users working on one -- they are, well, personal. 🙂

 

Could you glue the "alt" key on the second keyboard down so that if you typed "X" on it, the key would come in as "alt-X" instead?

tst
Knight of NI Knight of NI
Knight of NI

One possibility for such a use case would be to see if you can distinguish between the two strings based on their structure. This, of course, assumes that they have a clear structure and they are definably different.

 

Another option would be to control the sequence of operations in such a way that you know that the user starts by entering one type of values first and then switching to the other (e.g. by typing Enter twice). That's generally what I did in cases where the user had to input two separate things - just set the order of operations. I realize how those are not as useful as the solution you want.


___________________
Try to take over the world!
Darren
Proven Zealot
Status changed to: Declined

Any idea that has not received any kudos within a year after posting will be automatically declined.