Measure parent choice and radio duty
Compare a leaf-only node’s route and radio duty with always-on CSMA and a scheduled TSCH configuration.

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 ToolCompare a leaf-only node’s route and radio duty with always-on CSMA and a scheduled TSCH configuration.
Download 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
- Open cooja-mesh-exercises-csma.csc and let it finish at 300 seconds. Trace the leaf-only node 5 through relay 3 to root 1.
- You will see
- The CSMA run selects 5 → 3 → 1 and delivers 85/85 requests from all three clients.
- Why it matters
- A non-forwarding role and a sleeping radio are separate configuration choices. Leaf-only does not make CSMA duty-cycle its radio.

Step 1 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 2
- Do
- Filter Energest. Read ID:5’s final complete 60-second period and calculate Radio total / Total time.
- You will see
- CSMA reports 60,000,000 / 60,000,000 = 100% radio activity, displayed as 1000 permil.
- Why it matters
- Radio state-time is an energy proxy. It is not a current measurement or a battery-lifetime prediction.

Step 2 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 3
- Do
- Open cooja-mesh-exercises.csc, the TSCH variant, and let it finish. Trace the parent arrows and compare delivery.
- You will see
- The same layout selects 5 → 3 → 1 and delivers 83/83 attempted requests. TSCH uses scheduled radio slots.
- Why it matters
- The traffic pattern is matched, but boot, association and jitter can change how many requests fit in the fixed window. Compare ratios and startup as well as counts.

Step 3 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 4
- Do
- Filter ^--|TSCH|Received ping reply. Inspect rpl-nbr, rpl-status, tsch-schedule and tsch-status in the full log.
- You will see
- Leaf 5 uses parent fe80::203:3:3:3, Rank 413 and a two-hop root path. The TSCH status names time source 0003.0003.0003.0003; root ping returns TTL 63 in 265 ms.
- Why it matters
- A parent choice, synchronization source, schedule and replying destination are different observations. Read their timestamps together.

Step 4 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 5
- Do
- Filter Energest. Calculate the final ID:5 duty ratio from the raw counts; compare the first interval separately.
- You will see
- At 240.971 s, Radio total is 2,566,500 / 60,000,000 = 4.2775%, displayed as 42 permil. The first interval includes association and shows 315 permil.
- Why it matters
- The printed integer is truncated. Startup cost and observation window matter; do not claim a fixed 4.2% duty cycle for every workload.

Step 5 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 6
- Do
- Bring Radio messages to the front. Inspect the frame exchanges, then complete the README exercise ledger and protocol-boundary worksheet.
- You will see
- The simulator exchanged real radio frames while application requests and replies succeeded. No Zigbee binding table, profile, Matter endpoint or Thread sleepy-child poll was executed.
- Why it matters
- TSCH demonstrates scheduled low-power operation, not Zigbee/Thread sleepy-device semantics. Keep the legacy application-profile exercises on paper.

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 Zigbee device has joined the network and its packets route correctly. What has that NOT yet proven?
Return to the chapter’s knowledge checkIn the Zigbee application model, what is the relationship between endpoints, clusters, and attributes?
Return to the chapter’s knowledge check