Test the IPv6 mesh boundary below Matter
Use real RPL border-router firmware to test two end devices before and after router loss, then separate mesh evidence from Matter claims.

Radio Remi — I trace the measured path and keep application claims separate.
Predict the reading, then compare it with the measurement.
Contiki-NG Cooja
Third party ToolDownload the complete lab packet and follow README.md to run it in the free simulator.
Download the setup and run guideGet the lab files
Download the complete packet for the simulation and its firmware, or download individual files for inspection. README.md gives the setup and run commands.
Steps
Step 1
- Do
- From Cooja's File menu, open the CSC and let it pause at 89 seconds. Identify border router 1, routers 2/3 and non-forwarding end devices 4/5. Inspect the prefix event in expected-output.txt.
- You will see
- Run: headless cooja-thread-mesh-for-matter.csc; use the step input or filter.
Serial:
PREFIX injected fd00::/64 over SLIP at_us=2065000Expected: the border router injects fd00::/64 over SLIP at 2.065 s. - Why it matters
- Meaning: A border-router network interface is below Matter. This uses RPL as an IPv6 mesh analogue; it does not run OpenThread or Matter. Boundary: This is RPL/IPv6 path evidence, not a Thread or Matter protocol trace.

Step 1 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 2
- Do
- In Cooja's Mote output window, filter Received ping reply|^-- Preferred parent|^-- Rank|^-- OF|^-- State|^-- MOP. Match the two pre-fault end-device pings to root 1.
- You will see
- Run: headless cooja-thread-mesh-for-matter.csc; use the step input or filter.
Serial:
75177952 ID:4 Received ping reply from fd00::201:1:1:1, len 4, ttl 63, delay 112 msExpected: end device 4 receives a pre-fault reply in 112 ms. - Why it matters
- Meaning: A replying mesh endpoint establishes network reachability. It does not establish commissioning, a secure Matter session or cluster behavior. Boundary: This is RPL/IPv6 path evidence, not a Thread or Matter protocol trace.

Step 2 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 3
- Do
- Bring Radio messages to the front, inspect From and To, then minimize that window to return to Network.
- You will see
- Run: headless cooja-thread-mesh-for-matter.csc; use the step input or filter.
Serial:
6179040 ID:3 [INFO: IPv6 ] packet received from fe80::201:1:1:1 to ff02::1aExpected: relay 3 receives a radio-network packet; GUI frame columns are capture-only. - Why it matters
- Meaning: These are simulated 802.15.4/6LoWPAN frames, not Matter interaction or commissioning traces. Boundary: This is RPL/IPv6 path evidence, not a Thread or Matter protocol trace.

Step 3 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 4
- Do
- On Cooja's simulation toolbar, click Start/Pause to continue. The script removes the selected router at 90.065 s; let the run finish at 210 seconds.
- You will see
- Run: headless cooja-thread-mesh-for-matter.csc; use the step input or filter.
Serial:
FAULT removed_router=2 at_us=90065000Expected: router 2 is removed at 90.065 s; end device 5 must change parent. - Why it matters
- Meaning: The test removes a router, then independently checks both end devices; one recovered arrow is not enough. Boundary: This is RPL/IPv6 path evidence, not a Thread or Matter protocol trace.

Step 4 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 5
- Do
- In Cooja's Mote output window, use the same ping/status filter. Compare each post-fault ping with its own baseline result.
- You will see
- Run: headless cooja-thread-mesh-for-matter.csc; use the step input or filter.
Serial:
190153952 ID:5 Received ping reply from fd00::201:1:1:1, len 4, ttl 63, delay 88 msExpected: end device 5 receives a post-fault reply in 88 ms. - Why it matters
- Meaning: Source 5’s affected path recovered, while source 4 provides an unaffected comparison. These RTTs are bounded samples, not a Matter service-level guarantee. Boundary: This is RPL/IPv6 path evidence, not a Thread or Matter protocol trace.

Step 5 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 6
- Do
- In Cooja's Mote output window, filter Unknown ICMPv6|Received ping reply. Compare the successful ICMP probes with the unsupported UDP application, then fill the README Matter scope table.
- You will see
- Run: headless cooja-thread-mesh-for-matter.csc; use the step input or filter.
Serial:
25755168 ID:2 [ERR : IPv6 ] Unknown ICMPv6 message type/code 1Expected: unsupported UDP traffic raises ICMPv6 type/code 1; ping success alone is narrower. - Why it matters
- Meaning: Matter commissioning, data model, fabrics, subscriptions, reset recovery and certification remain paper review items. Approve the mesh reachability test only. Boundary: This is RPL/IPv6 path evidence, not a Thread or Matter protocol trace.

Step 6 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab)
Chapter checks
These questions refer to the chapter’s examples. Use the return links to review their answers.
A Matter plug declares an optional feature in its PICS that the firmware does not correctly implement. What should happen before certification?
Return to the chapter’s knowledge checkA Matter device passes basic command tests, but after a factory reset and re-commissioning onto the same fabric it intermittently fails to establish an operational session. Which evidence is most important before certification readiness can be approved?
Return to the chapter’s knowledge check