Is it possible to configure WiFi device without WAC feature

Greetings fellow developers!


I want to configure non-Apple WiFi device using iOS application. Connection would be through WiFi which is created by this same device.


1. Is it best to use Apple's WAC (Wireless Accessory Configuration) feature or is it possible to accomplish it without this? (No need for MFi license then)

2. If it is possible without using WAC: Which would be more time-consuming and expensive, developing the custom solution without WAC or the process(and cost) of getting MFi license?

3. Are there any other disadvantages to deal with if not using WAC?


The caveat here is that while configurating the app also has to access internet through cellular network to get data for configuration. Question about this matter can be found here: https://forums.developer.apple.com/thread/46528


What are your thoughts, experiences on this?


Thank You!

Accepted Reply

1. Is it best to use Apple's WAC (Wireless Accessory Configuration) feature …?

Yes. WAC is by far the best user experience here.

2. If it is possible without using WAC …

Yes. The problem is that the user experience is dire. It runs something like this:

  1. user runs Settings to switch to your accessory’s Wi-Fi

  2. user runs your app

  3. user enters their home Wi-Fi settings (typically the SSID and password) into your app

  4. your app passes them to your accessory

  5. your accessory tries to join the home Wi-Fi

  6. when your accessory shuts down its own AP, iOS should switch back to the home Wi-Fi

And that’s the best case scenario. If something goes wrong, like the user mistypes their password, the process can be a lot more confusing.

There are steps you can take to improve this but the reality is that it will never be as smooth as it is with WAC.

3. Are there any other disadvantages to deal with if not using WAC?

I think the above is sufficient, eh?

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"
  • How does the WAC user experience look like (on the iOS device side)? User doesn't have to type in the password for the solution developed using MFi WAC, correct?

Add a Comment

Replies

1. Is it best to use Apple's WAC (Wireless Accessory Configuration) feature …?

Yes. WAC is by far the best user experience here.

2. If it is possible without using WAC …

Yes. The problem is that the user experience is dire. It runs something like this:

  1. user runs Settings to switch to your accessory’s Wi-Fi

  2. user runs your app

  3. user enters their home Wi-Fi settings (typically the SSID and password) into your app

  4. your app passes them to your accessory

  5. your accessory tries to join the home Wi-Fi

  6. when your accessory shuts down its own AP, iOS should switch back to the home Wi-Fi

And that’s the best case scenario. If something goes wrong, like the user mistypes their password, the process can be a lot more confusing.

There are steps you can take to improve this but the reality is that it will never be as smooth as it is with WAC.

3. Are there any other disadvantages to deal with if not using WAC?

I think the above is sufficient, eh?

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"
  • How does the WAC user experience look like (on the iOS device side)? User doesn't have to type in the password for the solution developed using MFi WAC, correct?

Add a Comment

I’m dropping a link to TN3111 iOS Wi-Fi API overview here because it contains terms and references that I assume.

How does the WAC user experience look like (on the iOS device side)?

It’s pretty sweet. The user can configure your accessory directly from Settings or you can provide support for this within your app via EA framework (links in in TN3111).

User doesn't have to type in the password for the solution developed using MFi WAC, correct?

Correct. I’m not disclosed on MFi, so I don’t have all the details, but my understanding is that iOS is able to use MFi magic to authenticate the accessory to the point where iOS is happy to share its copy of the Wi-Fi password with the accessory.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"