Getting started with ThreadNetwork
Create a plan to build, test, and deploy your Thread Border Router app.
Overview
Creating a Thread Border Router enabled app or device requires configuring your app’s Xcode project to enable testing the ThreadNetwork API capabilities. Perform these in a specific order to ensure your app meets requirements for submission to the App Store. The development process follows these basic steps:
Xcode provides a Manage Thread Network Credentials capability for use while your app is under development.
Once your app is feature complete, ensure that its operation and specifications conform to the Thread device test plan.
Before submitting your app for approval and sale on the App Store, apply for a Thread Network distribution entitlement.
Optionally, apply to use the Works with Apple Home badge to alert people to your app’s ability to work with Apple Home.
Create and configure your Xcode project for development
Create a new Xcode project for your app and apply the following settings to your new project:
Add the Managed Network Credentials (development) capability to your project — select your app’s target in the project navigator, click on capabilities, and search for “Manage Thread Network Credentials.” Double-click on the resulting entitlement to add it to your app’s entitlements.
In your app, add
import ThreadNetworkto import the Thread framework support.Add Thread Border Router configuration and management capabilities to your app; for information on router configuration, see Configuring a Border Router. For information on managing credentials, see com.apple.developer.networking.manage-thread-network-credentials.
Perform required conformance testing
Ensure your app is ready for submission by completing these tests:
Implement the test plans for User Experience and Thread Clients. For information on the required User Experience testing, see Thread Test Plan User Experience. For information on the required Thread Client testing, see Thread Test Plan THClient API.
After your app passes the required tests you need to submit the test results to Apple to apply for a distribution entitlement. For a sample spreadsheet and checklist that lists all test sections and components, see ThreadNetwork Test Result Checklist. To submit your results for validation, send them to tthreadsoftware@apple.com.
If you have questions about implementation issues or questions about API and tools, please submit a support request.
Prepare your app for approval and distribution
After you receive confirmation of the approval of your app’s conformance test results, you can apply for a distribution entitlement for your app. Request a distribution entitlement from the ThreadNetwork Framework Entitlement Request page.
After Apple grants the distribution entitlement, go to the Developer Portal and enable the assigned Manage Thread Network Credentials entitlement for your app. You can then submit your app to the App Store.
After you begin shipping your device, you need to send a sample of your Thread Border Router device for verification to the following address:
NPI Certification 1 Apple Park Way Mailstop 928-3WTE Cupertino, CA, 95014 United States
Apply for the Works with Apple Home badge
Optionally, you can also request the Works with Apple Home badge for your Thread Border Router. This badge assures customers that your product works well with Apple Home.
To request permission to use the badge on your product and in marketing materials, follow these steps:
Become a member of the MFi Program; see MFi program note, above.
Become a member of the Thread Group, if you’re not already.
Complete the Thread Group certification for your Thread border router.
Implement an app for the hardware that uses the ThreadNetwork framework, as described above.
Pass the required Apple Home Thread Border Router conformance tests, as described above.
Submit the completed test results to tthreadsoftware@apple.com for review.