| ## Source Code |
| |
| ### Directory Structure |
| |
| The CHIP `src` directory is structured as follows: |
| |
| | File / Folder | Contents | |
| | ------------- | -------------------------------------------------- | |
| | app | Application Layer -- Zigbee Cluster Library (ZCL) | |
| | ble | BLE Layer -- Bluetooth Transport Protocol (BTP) | |
| | controller | Controller API | |
| | crypto | Cryptography libraries | |
| | darwin | Darwin Framework (iOS and macOS) | |
| | include | Public headers | |
| | inet | Network Layer -- TCP and UDP endpoints | |
| | lib | Core and Support libraries | |
| | lwip | Lightweight IP adaptation (to third_party library) | |
| | platform | Device Layer -- platform portability adaptations | |
| | qrcodetool | QR code tool | |
| | setup_payload | QR code setup data encode / decode library | |
| | system | System Layer -- common APIs for mem, work, etc. | |
| | test_driver | Framework for on-device testing | |
| |
| #### Darwin |
| |
| ##### Near Field Communication Tag Reading |
| |
| NFC Tag Reading is disabled by default because a paid Apple developer account is |
| required to have it enabled. If you want to enable it and you have a paid Apple |
| developer account, go to the CHIPTool iOS target and turn on Near Field |
| Communication Tag Reading under the Capabilities tab. |