Using hardware peripherals with axure prototype


#1

I would like to know if I can use peripherals to interact with an Axure Prototype?

I am working in a product that uses a webcam, scanner and digital prints scanner, so I need to prototype this interactions to validate and make user testing. Can Axure let me do this?


#2

Yes, I do this with scanners and printers in my Axure prototypes, as well as all sorts of input and output devices. …But it ain’t easy.

There is nothing in Axure built-in which provides this, unfortunately. The best approach I’ve found is to use javascript and tie into an API for the device, if available. Talk with your firmware or UI developers if possible for methods to interface devices with javascript, jQuery or other web protocols. If these aren’t your company’s devices, Google " javascript API" or “control from Web”. These days, many devices like this are “IOT” (Internet of Things) and/or have Embedded Web Server (EWS) pages which can be used to control and interface with the device.

Here is a nice way to offer printing from your prototype:
https://forum.axure.com/t/add-print-functionality-to-you-rp/27621?u=mbc66
You can search the forum here for several methods to use “javascript injection” like this one:

If this is too daunting or you can’t get it to work out, consider using the old “man behind the curtain” method for your usability testing. You can attach a wireless or Bluetooth keyboard to your computer, phone or tablet (anything other than an iOS device which prevents Bluetooth keyboards from controlling web pages.) Then, in your OnPageKeyUp event, put in some secret keypresses so a test moderator or assistant can surreptitiously control your prototype to pretend it is interacting with or controlling devices. For instance, to simulate voice control, whenever the user says “Please turn on my webcam” the assistant would press the ‘w’ key, triggering a simulated or real webcam image to appear. Or, if user presses the “Scan” button, the assistant would press the ‘s’ button to simulate a page being scanned (e.g., show a dynamic panel with image of page) --things like that.

If you do find javascript APIs and/or hit issues later on, hit up this thread again and we’ll see what we can do!