Background
Our LANforge InterOp solution is used to support real clients for testing access points. InterOp gives the ease of handling real clients with complete automation and detailed, customizable test reporting.
We have support for various kinds of real clients:
- Android clients.
- iOS clients.
- Windows Machines.
- Linux Machines.
- MacOS Machines.
Network Topology:
Hands-Free iPhone Control:
In order to provide a hands-free solution for iOS testing, LANforge controls each iPhone via a Bluetooth connection. USB Bluetooth adapters plugged into the LANforge act as Bluetooth keyboard devices. An adapter connects with the iPhone and then sends it keystroke packets. These keystrokes are interpreted by the iPhone as actions, and it's possible to perform system functions, navigate the UI, send text, etc.
Supported Devices:
The LANforge InterOp iOS platform supports the following devices:
- iPhone SE (2nd Gen)
- iPhone SE (3rd Gen)
- iPhone 11 (Base, Pro, Pro Max)
- iPhone 12 (Base, Pro, Pro Max, Mini)
- iPhone 13 (Base, Pro, Pro Max, Mini)
- iPhone 14 (Base, Pro, Pro Max, Plus)
- iPhone 15 (Base, Pro, Pro Max, Plus)
- iPhone 16 (Base, Pro, Pro Max, Plus)
Support for other iOS devices, such as the iPad, is planned for future releases.
Before getting started:
Hardware Requirements:
-
a supported Apple iPhone.
-
a USB cable for connecting the iPhone device to a LANforge unit (USB-A to Lightning/USB-C).
-
a USB Bluetooth 5.0 adapter (Edimax BT-8500 and TP-Link UB500 are known to work).
-
a LANforge system with at least two free USB ports.
LANforge Machine Installs/Config
- Open a terminal on your LANforge machine (CTRL + ALT + T ) and run:
sudo bash /home/lanforge/ios_install_tools.bash
Then restart LANforge so that it notices the new IOS binaries:
sudo bash /home/lanforge/serverctl.bash restart
iOS Device Initial Setup
-
If using a new iPhone, ensure that the initial Apple setup is complete and that the device is logged into an Apple account.
Ensure also that the lock screen passcode is disabled.
-
To download LANforge Interop (beta) onto the phone, visit this cookbook page in the iPhone's browser and open the following link:
iOS Interop App Install.
If this method is not working, you may require an invite to be sent to you.
In this case, please contact Candela support.
- Download TestFlight, Open TestFlight, and install the LANforge Interop App. Be sure to disable Automatic Updates.
- Open the LANforge App and accept TestFlight prompts.
-
Open the Settings App on the iPhone.
- Disable Keyboard Autocapitalization, Autocorrection, and Check Spelling
- Set Display Auto-Lock to Never
Connecting the iPhone to LANforge
-
Connect the iPhone via its USB port (Lightning or USB-C) to one of the USB-A slots on the LANforge. (as per the testbed topology)
-
On the iPhone screen, when prompted about trusting the computer, select 'Trust'.
- Open the LANforge GUI window. The Interop tab should appear now. Click on the tab to see your phone detected as an InterOp device.
Connecting Bluetooth USB Adapter
-
Open a terminal on the LANforge machine (CTRL + ALT + T ). And run:
dmesg -w
-
Plug your USB Bluetooth dongle into one of the USB ports on the LANforge.
-
The terminal window should show dmesg output acknowledging the new USB device.
- The string 'usb 1-2.1.4' indicates that '2-1-4' is the USB-path of the adapter. Write this down.
Setting up iOS Device Keyboard Control
- On your LANforge machine, select the iPhone in the Interop tab and click the button labeled Batch-Modify.
- In the Batch-Modify window, enter the Bluetooth Controller’s USB path (found from dmesg earlier). And click Apply to start the Bluetooth control process.
- On the iPhone, open the Bluetooth settings page and enable Bluetooth.
- Keep watch on the iPhone's Bluetooth settings page and a connection prompt should appear. Select ‘Pair’ to pair the phone with your Bluetooth adapter.
- On the iPhone, open the Keyboard Accessibility settings and enable 'Full Keyboard Access'.
- The phone MUST be in the 'Full Keyboard Access' screen before running this step, see above. Back in the LANForge Batch-Modify window, tap the Set BT Keybinds button. Allow 5-10 minutes for this command to run and do not interfere with the process by touching the screen or power-cycling the phone. Once this command is finished, the phone will return to the home screen and appear idle again.
Starting the LANforge App
- Set the values needed to connect the iPhone to LANforge: LANforge Manager IP and Resource ID (must be a Resource ID that's not in use). And if you wish to automatically connect the phone to a WiFi network, then enter the SSID and password. Click Apply when done populating fields. The app will restart and attempt to connect using the configured values.
- Wait for roughly a minute. And if this is your first time connecting the device to LANforge, you will need to manually accept some authorization prompts.
If you do not see these prompts appear, ensure that your configuration values are correct and that the device is connected to the correct network.
After this, use the batch-modify window to Stop (wait for it to complete) and then Start the app again.
- Open the Resource Mgr tab and the iPhone should appear under the requested resource ID.
- Back in the Port Mgr tab, we can see the iPhone's ports, IP address, and MAC address.
- Your iPhone is now ready for use with LANforge testing.
Known Limitations:
-
Screen Mirroring iOS devices onto LANforge systems is not yet supported.
-
Automated installation and removal of the iOS Interop app through the Interop tab's Batch-Modify window is not yet supported.