Certification Prerequisites

To run certification tests on an OpenThread component or product, using the GRL Test Harness, verify that you have met the following requirements.

Thread Group membership

To download and use the GRL Thread Test Harness software, or to submit a component or product for certification, you must have Contributor or Sponsor Membership in the Thread Group.

Porting

OpenThread must be successfully ported to the platform targeted for certification. For more information, see the Porting Guide.

Build options

The following build options are necessary for the device under test (DUT) involved in certification testing:

  • BORDER_ROUTER
  • COMMISSIONER
  • DHCP6_CLIENT (optional)
  • JOINER

Section 8 of the Thread 1.1.1 Specification defines the in-band Mesh Commissioning Protocol (MeshCoP) for the secure authentication, commissioning, and joining of new, untrusted radio devices to a mesh network. To use MeshCoP for in-band commissioning test cases, the Commissioner and Joiner roles must be enabled.

OpenThread provides basic DHCPv6 support, but DHCPv6 is listed as optional in the Thread 1.1.1 Specification. Three test cases use DHCPv6 client functionality: 5.2.5 (REED), 5.3.8 (Leader), and 5.3.9 (Router). If your application uses DHCPv6, enable DHCPv6 in your build.

For example, to build the CC2538 platform with DHCPv6 for use as a DUT in certification tests:

make -f examples/Makefile-cc2538 BORDER_ROUTER=1 COMMISSIONER=1 DHCP6_CLIENT=1 JOINER=1

For more information on how to use configuration and build options, see the Building Guide.

Reference stack build options

The following build options are necessary for the reference stack involved in certification testing:

  • BORDER_ROUTER
  • CERT_LOG
  • COMMISSIONER
  • DHCP6_CLIENT
  • DHCP6_SERVER
  • JOINER
  • MAC_FILTER

For example, to build the CC2538 for use as a reference stack in certification tests:

make -f examples/Makefile-cc2538 BORDER_ROUTER=1 CERT_LOG=1 COMMISSIONER=1 \
     DHCP6_CLIENT=1 DHCP6_SERVER=1 JOINER=1 MAC_FILTER=1

Hardware

  • 32 Thread reference devices (we used TI CC2538 boards), either running OpenThread 1.1 or another Thread implementation supported by the Test Harness
  • An NXP/Freescale Sniffer USB-KW24D512, running the sniffer firmware provided by the Test Harness
  • A DUT (the device you're certifying) running OpenThread 1.1
  • An RF shield box for the following test cases:
    • 5.6.7 (REED)
    • 6.3.2 (MED, SED)
    • 9.2.9 (Leader, Router)
    • 9.2.10 (Router, ED1, SED1)
  • Enough USB Hubs to support at least 33 devices
  • A Windows machine to run the Test Harness software

Software

The GRL Thread Test Harness is required for all certification testing.

Next Steps

When all prerequisites are met, you are ready for certification testing.

To automate certification tests, additional setup is required. See Automation Setup for more information.

To manually run certification tests, see Using the GRL Test Harness.