Zigbee đưa ra tùy chọn dùng đặc điểm ứng dụng (application profile) trong việc phát triển ứng dụng. Một application profile cho phép tương tác giữa những sản phẩm được phát triển bởi những nhà sản xuất phần cứng khác nhau cho một ứng dụng nhất định. Ví dụ, trong ứng dụng điều khiển ánh sáng, nếu hai nhà sản xuất phần cứng (vendor) dùng cùng một application profile để phát triển sản phẩm của họ, công tắc (switch) của một vendor có thể bật và tắt đèn được sản xuất bởi vendor khác. Đặc điểm ứng dụng này được đưa ra như là Zigbee profiles.
Mỗi đặc điểm ứng dụng được xác định bằng một giá trị 16bit được biết như là profile identifier và chỉ có Zigbee alliance mới có thể đưa ra application profile.
Cấu trúc tổng quát của một application profile được chỉ ra trên hình 2.22. Application profile gồm hai thành phần: mô tả cụm và thiết bị (cluster và device description). Một cluster là một thiết lập các thuộc tính được nhóm lại với nhau. Mỗi cluster được xác định bằng một số 16-bit duy nhất được gọi là một cluster identifier. Mỗi thuộc tính trong một cluster cũng được xác định bằng một số 16 bit được gọi là attribute identifier. Những thuộc tính này được dùng để lưu trữ dữ liệu hay giá trị trạng thái. Cho ví dụ, trong ứng dụng điều khiển nhiệt độ, một thiết bị hoạt động như là một cảm biến nhiệt độ có thể lưu trữ trạng thái của nhiệt độ hiện tại trong một thuộc tính. Sau đó, một thiết bị khác hoạt động như là một điều khiển có thể nhận giá trị của thuộc tính này và bật hay tắt thiết bị nhiệt độ. Application profile có một danh sách các cluster identifier.
Phần khác của application profile là device descriptions. Device description cung cấp thông tin liên quan tới chính thiết bị đó. Cho ví dụ, băng tần hoạt động, loại thiết bị logic (coordinator, router, end device) và năng lượng của pin còn lại được cung cấp bởi device descriptions. Mỗi device description được xác định bởi một giá trị 16 bit. Zigbee application profile dùng định nghĩa descriptor data structure. Theo cách này, thay vì bao gồm dữ liệu trong application profile, một giá trị 16 bit được lưu lại và hoạt động như là một con trỏ để trỏ tới vị trí dữ liệu. Con trỏ này được đưa ra như là data descriptor.
Mỗi device descriptions bao gồm 5 phần:
• Node descriptor (mô tả nút): cung cấp thông tin như là loại nút logic và mã sản xuất. • Node power descriptor xác định thiết bị nào được cấp nguồn, và cung cấp mức pin hiện tại • Complex descriptor là một phần mô tả thiết bị tùy chọn và bao gồm thông tin như là số seri
và tên model thiết bị.
• Simple descriptor: nơ chứa profile identifier và cluster
• User descriptor: chứa bất cứ thông tin them vào liên quan tới thiết bị, mô tả này do người dùng định nghĩa.
Hình 2.23 mô tả việc dùng mã xác định cụm (ClusterID) trong thủ tục binding (ràng buộc). Binding là một hoạt động tạo liên kết logic giữa những ứng dụng liên quan. Thiết bị quan hệ logic trong bảng binding được gọi là thiết bị ràng buộc. Trong ví dụ trong hình 2.20, hai chuyển mạch tường (công tắc) cùng chia sẻ băng tần vô tuyến. Do đó, cả hai chuyển mạch chia sẻ một địa chỉ IEEE và địa chỉ mạng. Chuyển mạch được phân biệt với nhau bởi địa chỉ điểm cuối (endpoint). Mỗi chuyển mạch có thể có đối tượng ứng dụng (application object) của chính nó. Mỗi đối tượng ứng dụng được truy nhập độc lập thông qua địa chỉ điểm cuối tương ứng của chúng. Hai chuyển mạch này điều khiển ba bóng đèn phân chia. Tất cả ba bóng đèn cũng được kết nối tới một tần số radio và mỗi đèn có địa chỉ điểm cuối duy nhất. Mỗi cluster có thể là một input cluster hay làm một output cluster. Trong tiến trình binding, hai thiết bị được ghép đôi nếu cả hai thiết bị có cùng clusteIDs nhưng một cái là một input cluster và cái khác là một output cluster. Chuyển mạch ở điểm cuối 1 và đèn ở điểm cuối 1 có clusterIDs giống nhau và do đó chúng được xem là thiết bị ràng buộc. Chuyển mạch ở điểm cuối 2 ràng buộ với cả hai đèn ở điểm cuối 2 và điểm cuối 3. Thông tin liên quan tới liên kết logic này được lưu trữ trong bảng binding.
Hình 2-36 Quan hệ Binding trong ví dụ điều khiển ánh sáng.