Alternative to generate programmatically a local hotspot like in Android?

Hello, we are developing hardware that needs to connect to an iPhone via Wi-Fi to send requests to a server. On Android, we have managed to create a programmatic local hotspot within the app to facilitate connection and improve the user experience.

On iOS, however, Personal Hotspot must be manually enabled from the system settings, and the user must manually enter the SSID and password, which significantly degrades the UX.

My questions are:

Is there a workaround, unofficial method, or private API to generate a local hotspot from an app on iOS, similar to what can be done on Android?

Is there an alternative within the MFi program or through specific frameworks to facilitate a quick and automatic connection between the hardware and the iPhone without relying on the manual Personal Hotspot?

Are there any best practices for improving the local Wi-Fi connection experience between an accessory and an iPhone in the absence of hotspot controls?

I would appreciate any guidance, experience, or resources that would help me better understand the feasible options in iOS for scenarios where fast and direct communication between hardware and mobile devices via Wi-Fi is required.

Translated with DeepL.com (free version)

Answered by DTS Engineer in 861451022

Is there a workaround, unofficial method, or private API to generate a local hotspot from an app on iOS, similar to what can be done on Android?

No APIs exist that will allow an app to turn the iOS device into a hotspot.

Are there any best practices for improving the local Wi-Fi connection experience between an accessory and an iPhone in the absence of hotspot controls?

We have a range of APIs an app can use to have the iPhone connect to a specific hotspot. In a modern app, that flow starts by "pairing" with your Wi-Fi accessory using AccessorySetupKit, then using either NEHotspotManager or our Wi-Fi aware support to actually join that hotspot. Note that while the AccessorySetupKit documentation is primarily focused on Bluetooth, that's largely because the Bluetooth process is significantly more complicated than the Wi-Fi flow.

Is there an alternative within the MFi program?

Nothing* in the MFi program applies to your particular situation. We do license WAC ("Wireless Accessory Configuration") through the MFi program, but WAC is used to transfer infrastructure Wi-Fi credentials to the accessory. That wouldn't work for your situation.

*I want to be clear on this point because many developers have the impression that the MFi program provides access to much broader capabilities than it actually does. The right approach for the kind of accessory your building is to use AccessorySetupKit and that's the same answer I'd give to any MFi licensee.

__
Kevin Elliott
DTS Engineer, CoreOS/Hardware

Accepted Answer

Is there a workaround, unofficial method, or private API to generate a local hotspot from an app on iOS, similar to what can be done on Android?

No APIs exist that will allow an app to turn the iOS device into a hotspot.

Are there any best practices for improving the local Wi-Fi connection experience between an accessory and an iPhone in the absence of hotspot controls?

We have a range of APIs an app can use to have the iPhone connect to a specific hotspot. In a modern app, that flow starts by "pairing" with your Wi-Fi accessory using AccessorySetupKit, then using either NEHotspotManager or our Wi-Fi aware support to actually join that hotspot. Note that while the AccessorySetupKit documentation is primarily focused on Bluetooth, that's largely because the Bluetooth process is significantly more complicated than the Wi-Fi flow.

Is there an alternative within the MFi program?

Nothing* in the MFi program applies to your particular situation. We do license WAC ("Wireless Accessory Configuration") through the MFi program, but WAC is used to transfer infrastructure Wi-Fi credentials to the accessory. That wouldn't work for your situation.

*I want to be clear on this point because many developers have the impression that the MFi program provides access to much broader capabilities than it actually does. The right approach for the kind of accessory your building is to use AccessorySetupKit and that's the same answer I'd give to any MFi licensee.

__
Kevin Elliott
DTS Engineer, CoreOS/Hardware

Alternative to generate programmatically a local hotspot like in Android?
 
 
Q