1. Giới thiệu

OpenThread (OT) của Google là một cách triển khai nguồn mở của Thread. Google đã phát hành OpenThread để cung cấp rộng rãi hơn cho các nhà phát triển công nghệ mạng được dùng trong các sản phẩm của Google Nest, nhằm đẩy nhanh quá trình phát triển sản phẩm cho nhà thông minh và các toà nhà thương mại. Với lớp trừu tượng nền tảng hẹp và mức sử dụng bộ nhớ nhỏ, OpenThread có tính di động cao. Nền tảng này hỗ trợ cả thiết kế hệ thống trên chip (SoC) và bộ đồng xử lý mạng (NCP).
Quy cách Thread xác định một giao thức giao tiếp không dây đáng tin cậy, an toàn và tiêu thụ ít điện năng giữa các thiết bị dựa trên IPv6 cho các ứng dụng nhà ở và toà nhà thương mại.
Silicon Labs đã cải tiến OpenThread để hoạt động với phần cứng của Silicon Labs. Mã nguồn này có trên GitHub và cũng là một bộ công cụ phát triển phần mềm (SDK) được cài đặt cùng với Simplicity Studio 5 (SSv5). SDK này bao gồm một bản chụp đã được kiểm thử đầy đủ của mã nguồn GitHub. Phiên bản này hỗ trợ nhiều loại phần cứng hơn so với phiên bản trên GitHub, đồng thời có cả tài liệu và các ứng dụng mẫu không có trên GitHub.
Hướng dẫn này mô tả cách bắt đầu phát triển các ứng dụng OpenThread bằng Silicon Labs OpenThread SDK và Simplicity Studio 5. Hình ảnh bên dưới cho thấy các bảng (BRD) và phần cứng được thiết lập bằng một Bộ định tuyến biên OT (OTBR) và 2 thiết bị Thread được dùng trong lớp học lập trình.

Kiến thức bạn sẽ học được
- Cách tạo dự án OpenThread bằng IDE Silicon Labs Simplicity Studio.
- Cách tạo và flash các tệp nhị phân OpenThread CLI vào các bo mạch vô tuyến của Silicon Labs.
- Cách thiết lập Raspberry Pi 3B+ trở lên làm Bộ định tuyến biên OpenThread (OTBR) bằng Docker.
- Cách tạo mạng Thread trên OTBR.
- Thiết lập thiết bị ngoài băng tần trên mạng Thread.
- Cách xác minh giao tiếp Thread giữa các nút bằng lệnh ping.
2. Điều kiện tiên quyết
Phần cứng:
- 3 bảng vô tuyến EFR32MGxx – bạn có thể sử dụng kết hợp bất kỳ các thiết bị này. Lớp học lập trình này sử dụng BRD4166A làm RCP và 2 BRD4168A làm Thiết bị có đầy đủ chức năng của luồng.
- EFR32MG12 (BRD4161A, BRD4166A, BRD4170A, BRD4304A)
- EFR32MG13 (BRD4168A)
- EFR32MG21 (BRD4180A, BRD4180B)
- BRD4001A: Bo mạch chính khởi động không dây (WSTK) để lưu trữ các bo mạch vô tuyến. Ngoại trừ BRD4166A, tất cả các bảng vô tuyến đều cần có một bảng chính khởi động. Cáp USB mini để kết nối và cấp nguồn cho các bo mạch chính hoặc cáp USB micro cho BRD4166A.

- Raspberry Pi 3B+ trở lên có hình ảnh Raspbian Stretch Lite OS hoặc Raspbian Stretch with Desktop được kết nối với Internet qua Ethernet. Chúng tôi định cấu hình thiết bị này làm Bộ định tuyến biên OT.
- Hệ thống máy chủ Windows/Linux/Mac có ít nhất 2 cổng USB và kết nối Internet. Kiểm tra các yêu cầu về phần cứng và hệ điều hành tại SSv5.
- Ít nhất một cáp Ethernet để kết nối Raspberry Pi với Internet. WSTK cũng hỗ trợ gỡ lỗi và nhấp nháy qua IP. Do đó, bạn có thể dùng thêm cáp Ethernet (nếu muốn) để kết nối WSTK với hệ thống máy chủ thông qua một Bộ chuyển mạch Ethernet.
Phần mềm:
- Simplicity Studio phiên bản 5 được cài đặt và cập nhật trên hệ thống máy chủ Windows/Linux/Mac bằng
- Chuỗi công cụ GNU ARM
- Gecko SDK Suite 3.2.0 trở lên và Silicon Labs OpenThread SDK.
3. Thiết lập phần cứng
Lớp học lập trình này được tạo bằng
- EFR32MG12 BRD4166A Thunderboard Sense 2 như minh hoạ ở bên trái.
- Hai BRD4168A EFR32MG13 như minh hoạ ở bên phải.
- Simplicity Studio phiên bản 5 được cài đặt trên macOS Catalina 10.15.7 bằng
- Gecko SDK 3.2.0
- GNU ARM phiên bản 7.2.1


Kết nối từng bo mạch chính của Wireless Starter Kit với máy tính lưu trữ bằng USB như trong hình bên dưới. Những kết nối này sẽ cho phép lập trình và phân tích mạng của RCP và các thiết bị đầu cuối. Trước tiên, chúng ta sẽ dùng máy tính lưu trữ để lập trình BRD4166A bằng chương trình cơ sở ot-rcp và cuối cùng kết nối nó với Raspberry Pi. Ngoài ra, các thiết bị đầu cuối có thể được kết nối với máy tính lưu trữ thông qua một bộ chuyển mạch Ethernet chung. Bộ công cụ khởi động cũng hỗ trợ lập trình và phân tích mạng qua IPv4.

4. Thiết lập chương trình cơ sở
Có hai cách để bắt đầu. Cả hai lựa chọn đều cho phép bạn nạp các chương trình cơ sở cần thiết cho lớp học lập trình này.
- Dự án: (Nên dùng) Tạo, tạo bản dựng và flash một ứng dụng mẫu. Lựa chọn này cho phép bạn tuỳ chỉnh ứng dụng trong dự án.HOẶC
- Bản minh hoạ: (Không bắt buộc) Chạy nhanh các bản minh hoạ được tạo sẵn ngay trên bảng điều khiển radio cho bất kỳ ứng dụng mẫu nào. Người dùng nên thử thiết lập chương trình cơ sở bản minh họa như một bài tập không bắt buộc. Vui lòng tham khảo phần "Thiết lập phần mềm không bắt buộc – Bản minh hoạ" ở cuối lớp học lập trình này để biết thông tin chi tiết.
Chúng ta sẽ sử dụng phương thức dựa trên dự án cho lớp học lập trình này.
Tạo dự án bằng các ví dụ
Chúng ta sẽ tạo hai dự án. Dự án ot-rcp cho BRD4166A và dự án ot-cli-ftd cho hai BRD4168A. Vui lòng làm theo các bước này và chọn ứng dụng mẫu phù hợp cho bảng của bạn.
- Mở trình đơn File (Tệp) của Studio rồi chọn New > Silicon Labs Project Wizard (Mới > Trình hướng dẫn dự án của Silicon Labs). Hộp thoại Target, SDK và Toolchain Selection (Chọn mục tiêu, SDK và chuỗi công cụ) sẽ mở ra. Không thay đổi IDE Simplicity / chuỗi công cụ GNU mặc định mà OpenThread hỗ trợ. Nhấp vào Tiếp theo.
- Bảng mục tiêu: Cho biết bảng vô tuyến đã chọn (BRD4168A) cùng với bảng chính (BRD4001A)
- Thiết bị mục tiêu: Trường này cho biết chip vi điều khiển (MCU) trên bo mạch. BRD4168A có MCU EFR32MG13 tích hợp.
- SDK: Tại đây, bạn có thể chọn phiên bản SDK của OT mà bạn đang sử dụng. Thông tin về bộ kiểm thử bao gồm thẻ SDK và bản dựng OpenThread của Silicon Labs, ví dụ:
Platform 4.0.1.0vàOpenThread 2.0.1.0 (GitHub-55af6ce2c). - IDE/ Toolchain: Chuỗi công cụ sẽ được dùng để biên dịch dự án OT. Chúng tôi sử dụng GNU ARM.

- Hộp thoại Example Project Selection (Chọn dự án mẫu) sẽ mở ra. Bạn sẽ thấy danh sách các dự án mẫu. Sử dụng bộ lọc Từ khoá và Loại công nghệ Thread để tìm một ví dụ cụ thể. Hãy nhớ ghi lại số phiên bản của Gecko SDK Suite. Bạn sẽ cần thẻ phiên bản này khi thiết lập Raspberry Pi làm Bộ định tuyến biên. Chọn ot-cli-ftd, rồi nhấp vào TIẾP THEO.

- Hộp thoại Project Configuration (Cấu hình dự án) sẽ mở ra. Tại đây, bạn có thể đổi tên dự án, thay đổi vị trí mặc định của tệp dự án và xác định xem bạn sẽ liên kết hay sao chép các tệp dự án. Các tệp dự án được liên kết sẽ trỏ đến SDK và mọi nội dung sửa đổi bạn thực hiện sẽ được thực hiện trong SDK và được dùng cho các dự án trong tương lai. Sao chép các nguồn dự án, cho phép bạn chỉnh sửa bản sao cục bộ của dự án để các tệp SDK vẫn nguyên vẹn. "Liên kết SDK và sao chép các nguồn dự án" là lựa chọn mặc định và được đề xuất. Nhấp vào HOÀN TẤT.

- Chế độ xem Simplicity IDE sẽ mở ra cùng với Project Configurator ở thẻ OVERVIEW (TỔNG QUAN).

Dự án được định cấu hình từ thẻ Software Components (Thành phần phần mềm) bằng cách cài đặt và gỡ cài đặt các thành phần, đồng thời định cấu hình các thành phần đã cài đặt. Các thành phần đã cài đặt sẽ được kiểm tra. Nhấp vào Installed Components (Các thành phần đã cài đặt) để xem danh sách được lọc gồm các thành phần do ứng dụng mẫu cài đặt. Mọi thay đổi bạn thực hiện đều được lưu tự động và các tệp dự án được tạo tự động. Tiến trình được hiển thị ở góc dưới bên phải của chế độ xem Simplicity IDE.

Trong bản minh hoạ này, chúng ta sẽ sử dụng cấu hình mặc định của các ứng dụng mẫu. Lặp lại các bước trên để tạo dự án ot-rcp cho bảng khác.
Tạo và nạp chương trình cho các dự án
Tạo và cài đặt ROM cả dự án ot-rcp và ot-cli-ftd.
- Sau khi dự án được định cấu hình, hãy nhấp vào Build control (biểu tượng búa) trong thanh công cụ trên cùng. Ngoài ra, bạn có thể nhấp chuột phải vào dự án rồi nhấp vào tạo dự án.

- Tiến trình được hiển thị trong Bảng điều khiển và thanh tiến trình ở phía dưới bên phải. Mọi lỗi hoặc cảnh báo liên quan đến dự án của bạn cũng sẽ xuất hiện trong cửa sổ đầu ra này.

- Các hình ảnh nhị phân được tạo sau khi bản dựng dự án thành công. Bạn có thể cài đặt ROM tệp nhị phân từ chế độ xem Trình khám phá dự án. Xác định vị trí tệp .bin, .hex hoặc .s37 trong thư mục con của trình biên dịch. Nhấp chuột phải vào tệp rồi chọn Flash to Device (Chuyển nhanh sang thiết bị). Nếu bạn có nhiều thiết bị được kết nối, hãy chọn một thiết bị để lập trình, rồi nhấp vào OK. Flash Programmer sẽ mở ra với đường dẫn tệp được điền sẵn. Nhấp vào CHƯƠNG TRÌNH.

5. Tóm tắt quá trình thiết lập chương trình cơ sở
Lúc này, bạn đã tạo, biên dịch và nạp chương trình cơ sở thích hợp vào các bảng vô tuyến. Sau khi ot-rcp được nạp vào BRD4166A, hãy ngắt kết nối thiết bị này khỏi hệ thống máy chủ và kết nối bo mạch này với Raspberry Pi.
Sau khi hoàn tất phần này, chế độ thiết lập phần cứng mạng Thread sẽ có dạng như sau.

6. Thiết lập Bảng điều khiển nối tiếp cho các thiết bị ot-cli-ftd
Để chạy giao diện Bảng điều khiển, trong chế độ xem Simplicity IDE, hãy nhấp chuột phải vào thiết bị J-Link trong cửa sổ Devices View (Chế độ xem thiết bị)/Debug Adapters (Bộ gỡ lỗi). Chọn Launch Console (Khởi chạy bảng điều khiển). Để nhận lời nhắc trên Bảng điều khiển, hãy chọn thẻ Serial 1 rồi nhấn Enter. Kiểm tra trạng thái của nút FTD.

Bạn sẽ nhận thấy rằng chúng tôi chưa có bảng điều khiển cho ot-rcp. Trong bước tiếp theo, chúng ta sẽ định cấu hình Raspberry Pi làm bộ định tuyến biên OT và thiết lập bảng điều khiển cho ot-rcp.
7. Thiết lập Raspberry Pi làm Bộ định tuyến biên
Silicon Labs đề xuất triển khai vùng chứa Docker của công ty bằng OTBR. Việc chạy OTBR trong một vùng chứa cho phép tạo các cấu phần phần mềm có thể triển khai dễ dàng, cũng như tạo mẫu và kiểm thử phát triển nhanh.
Hình ảnh OTBR của Silicon Labs được lưu trữ trên siliconlabsinc DockerHub, có gắn thẻ. Mỗi thẻ tương ứng với một phiên bản GSDK:
https://hub.docker.com/r/siliconlabsinc/openthread-border-router/tags
Bạn phải sử dụng các vùng chứa Docker với RCP được tạo bằng Simplicity Studio 5 cho một bản phát hành nhất định. Đảm bảo bạn sử dụng phiên bản thẻ trong trình chứa phù hợp với phiên bản GSDK mà bạn đang kiểm thử. Ví dụ: nếu phiên bản GDSK của bạn là Gecko SDK Suite v4.0.1 (140) khi bạn chọn ot-rcp trong cửa sổ Example Project Selection (Chọn dự án mẫu), hãy sử dụng hình ảnh siliconlabsinc/openthread-border-router:gsdk-4.0.1.

Thiết lập Raspberry Pi
- Trên thẻ SD, hãy nhớ flash hình ảnh hệ điều hành Raspbian Stretch Lite hoặc Raspbian Stretch with Desktop.
- Bạn có thể SSH vào Raspberry Pi hoặc chọn làm việc trực tiếp với Raspbian Desktop. Mở một cửa sổ dòng lệnh.
- Nhớ cập nhật kho lưu trữ cục bộ và trình quản lý gói (apt-get update và apt-get upgrade trước khi cài đặt Docker).
Cài đặt hình ảnh Docker
- Cài đặt Docker bằng lệnh sau trên RPi.
curl -sSL https://get.docker.com | sh
- Sau khi hoàn tất, bạn có thể sửa đổi chế độ cài đặt người dùng Docker để không yêu cầu sudo trước mỗi lệnh. Bạn cần khởi động lại.
sudo usermod -aG docker $USER
- Phát các lệnh sau để cài đặt vùng chứa. Xin lưu ý rằng bạn chỉ có thể chạy một vùng chứa Border Router tại một thời điểm bằng RCP. Ngoài ra, hãy nhớ so khớp phiên bản GSDK của Simplicity Studio với hình ảnh Docker chính xác. Ví dụ:
gsdk-4.0.1:docker pull siliconlabsinc/openthread-border-router:gsdk-4.0.1
Định cấu hình và chạy Docker
- Bạn cần định cấu hình cổng TTY mà bạn muốn dùng cho OTBR để kết nối RCP khi khởi động. Tìm cổng TTY của thiết bị RCP. Cách dễ nhất để thực hiện việc này là tìm mục
/tty/dev... sau khi RCP được kết nối. Thông thường, giá trị này sẽ là/dev/ttyUSB0hoặc/dev/ttyACM0. - Chạy bản cài đặt Docker bằng lệnh sau. Hãy nhớ thay thế tên hình ảnh Docker của bạn bằng phiên bản GSDK phù hợp. Ví dụ:
gsdk-4.0.1:docker run -d --name "otbr" \ --sysctl "net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1" \ -p 8080:80 --dns=127.0.0.1 -it \ --volume /dev/ttyACM0:/dev/ttyACM0 \ --privileged siliconlabsinc/openthread-border-router:gsdk-4.0.1 \ --radio-url spinel+hdlc+uart:///dev/ttyACM0?uart-baudrate=460800 \ --backbone-interface eth0
-dđảm bảo rằng vùng chứa chạy ở chế độ tách biệt.- Bạn có thể xem nhật ký đang chạy của vùng chứa bất cứ lúc nào bằng lệnh
docker logs. --namesẽ vẫn còn cho đến khi vùng chứa Docker được đóng (hoặc xoá) đúng cách.- Cổng 8080 cho biết cổng của máy chủ web lưu trữ trang quản lý Border Router.
?uart-baudrate=460800là bắt buộc trong các lựa chọn về URL vô tuyến để giải quyết các vấn đề về phân mảnh / tái hợp nhất qua UART, với các hoạt động tốn kém như DTLS với các gói IPv6 dài.
Tương tác với nút RCP
Sau khi docker chạy, bạn có thể giao tiếp với nút RCP thông qua một shell tương tác bằng lệnh này. Kiểm tra trạng thái của nút RCP.
$ docker exec -ti otbr sh -c "sudo ot-ctl" > state disabled Done
Bạn có thể lấy danh sách mã nhận dạng vùng chứa đang chạy
$ docker ps -aq
Bạn có thể kiểm tra cửa sổ đang chạy vùng chứa OTBR Docker để xem đầu ra nhật ký đang chạy của Bộ định tuyến biên hoặc theo dõi nhật ký vùng chứa như sau:
$ docker logs [container-id] -f
Nếu muốn, bạn có thể dừng, xoá hoặc huỷ hình ảnh nếu vùng chứa Docker được tải đúng cách.
$ docker stop otbr
$ docker rm otbr
$ docker kill otbr
Không bắt buộc: Để thoát khỏi shell, hãy dùng tổ hợp phím CNTL + C.
Tại thời điểm này, bạn sẽ có 3 bảng điều khiển.
- Hai bảng điều khiển
ot-cli-ftdtrong Simplicity Studio được thiết lập làm thiết bị Full Thread. - Một shell tương tác
ot-ctltrên Raspberry Pi được thiết lập làm bộ định tuyến biên OT.
Giờ đây, chúng ta đã sẵn sàng tạo một mạng Thread.
8. Tạo mạng Thread
Thiết lập RCP
Để tạo mạng, chúng ta bắt đầu bằng shell ot-ctl trên OTBR. Shell này được dùng để giao tiếp với nút RCP. Nhập các lệnh sau theo thứ tự như minh hoạ bên dưới:
Chỉ mục | Lệnh | Mô tả lệnh | Phản hồi dự kiến | ||
1 |
| Tạo một cấu hình mạng mới. | Xong | ||
2 |
| Cam kết tập dữ liệu mới cho Tập dữ liệu hoạt động đang hoạt động. | Xong | ||
3 |
| Bật giao diện Thread. | Xong | ||
4 |
| Bật và đính kèm hoạt động giao thức Thread. | Xong | ||
Chờ 10 giây để giao diện luồng hoạt động. | |||||
5 |
| Kiểm tra trạng thái thiết bị. Đây phải là thiết bị chính. | Người lãnh đạo | ||
6 |
| Xem cấu hình mạng. | Active Timestamp: 1 | ||
Chúng ta sẽ sử dụng số kênh và khoá mạng trên ot-cli-ftd để kết nối 2 FTD với mạng lưới này.
Thiết lập và thêm FTD vào mạng Thread (phương thức ngoài băng tần)
Với phương thức ngoài băng tần, chúng ta biết tất cả thông tin bảo mật và thêm nút theo cách thủ công. Trong bảng điều khiển Simplicity, hãy thêm cả hai FTD vào mạng của chúng ta bằng cách sử dụng các lệnh sau theo thứ tự như bên dưới.
Chỉ mục | Lệnh | Mô tả lệnh | Phản hồi dự kiến | ||
1 |
| Đặt kênh mà OTBR sử dụng. | Xong | ||
2 |
| Thiết bị chỉ cần có Khoá mạng để kết nối với mạng Thread. | Xong | ||
3 |
| Cam kết tập dữ liệu mới cho Tập dữ liệu hoạt động đang hoạt động. | Xong | ||
4 |
| Bật giao diện Thread. | Xong | ||
5 |
| Bật và đính kèm hoạt động giao thức Thread. | Xong | ||
Chờ 20 giây trong khi thiết bị tham gia và tự định cấu hình. | |||||
6 |
| Xem cấu hình mạng. | child | ||
Giao tiếp giữa các thiết bị Thread
Chúng ta sẽ dùng lệnh ping để kiểm tra xem các thiết bị có thể giao tiếp với nhau hay không. Để sử dụng lệnh ping, chúng ta cần địa chỉ IPv6 của các thiết bị. Bạn có thể lấy các thông tin này bằng lệnh ipaddr.
> ipaddr fd5c:c6b:3a17:40b9:0:ff:fe00:fc00 # Leader Anycast Locator (ALOC) fd5c:c6b:3a17:40b9:0:ff:fe00:1800 # Routing Locator (RLOC) fd5c:c6b:3a17:40b9:84e2:bae8:bd5b:fa03 # Mesh-Local EID (ML-EID) fe80:0:0:0:c449:ca4a:101f:5d16 # Link-Local Address (LLA)
Từ cả hai FTD, hãy ping OTBR bằng địa chỉ RLOC của OTBR.
> ping fd5c:c6b:3a17:40b9:0:ff:fe00:1800 Done > > 16 bytes from fd5c:c6b:3a17:40b9:0:ff:fe00:1800: icmp_seq=3 hlim=64 time=30ms 16 bytes from fd5c:c6b:3a17:40b9:0:ff:fe00:1800: icmp_seq=3 hlim=64 time=52ms
Phản hồi cho biết tải trọng đã nhận được và quá trình giao tiếp đã thành công. Lặp lại quy trình này để ping FTD từ OTBR.
9. Xin chúc mừng
Bạn đã tạo mạng Thread!
Giờ thì bạn đã biết:
- Cách tạo dự án OpenThread bằng IDE Silicon Labs Simplicity Studio.
- Cách tạo và flash các tệp nhị phân OpenThread CLI vào các bo mạch vô tuyến của Silicon Labs.
- Cách thiết lập Raspberry Pi 3B+ trở lên làm Bộ định tuyến biên OpenThread (OTBR) bằng Docker.
- Cách tạo mạng Thread trên OTBR.
- Thiết lập thiết bị ngoài băng tần trên mạng Thread.
- Cách xác minh giao tiếp Thread giữa các nút bằng lệnh ping.
Tài liệu đọc thêm
Hãy xem openthread.io và GitHub để biết nhiều tài nguyên về OpenThread, bao gồm:
- Nền tảng được hỗ trợ – khám phá tất cả nền tảng hỗ trợ OpenThread
- Tạo OpenThread – thông tin chi tiết hơn về cách tạo và định cấu hình OpenThread
- Thread Primer – bao gồm tất cả các khái niệm về Thread có trong Lớp học lập trình này
- Khoá đào tạo về OpenThread của Silicon Labs – giới thiệu về OpenThread, thảo luận về việc thiết lập và bộ định tuyến biên, đồng thời thực hành tạo mạng OpenThread.
- QSG170: Hướng dẫn bắt đầu nhanh về OpenThread của Silicon Labs – trình bày chi tiết quy trình bắt đầu phát triển Thread của Silicon Labs
- AN1256: Sử dụng RCP của Silicon Labs với Bộ định tuyến biên OpenThread – Hướng dẫn xây dựng và cài đặt cho Máy chủ Bộ định tuyến biên Raspberry Pi
10. Thiết lập chương trình cơ sở không bắt buộc – Bản minh hoạ
Bản minh hoạ là hình ảnh phần mềm được tạo sẵn và sẵn sàng tải xuống một thiết bị tương thích. Cách nhanh nhất để biết một linh kiện có bản minh hoạ trong Simplicity Studio hay không là nhấp vào linh kiện đó trong chế độ xem Debug Adapters (Bộ gỡ lỗi) rồi chuyển đến thẻ EXAMPLE PROJECTS & DEMOS (DỰ ÁN VÍ DỤ VÀ BẢN MINH HOẠ) trong Launcher Perspective (Giao diện trình chạy). Tắt bộ lọc Dự án mẫu và đánh dấu vào hộp đánh dấu Nút chọn luồng trong mục Loại công nghệ.

Các hình ảnh ứng dụng minh hoạ được biên dịch sẵn đi kèm với OpenThread SDK tương thích với các bảng sau:
- BRD4161a
- BRD4166a
- BRD4168a
- BRD4180a
- BRD4304a
Danh sách này có thể được cập nhật trong các bản phát hành SDK sau này để bổ sung thêm các bảng mạch vô tuyến. Vui lòng tham khảo ghi chú phát hành của Silicon Labs OpenThread SDK trong phần Tài liệu để biết danh sách đầy đủ các thành phần được hỗ trợ.
Cài đặt ROM các bản minh hoạ sau trên các bảng tương ứng. Để nhấp nháy, hãy chọn bảng của bạn trong phần Debug Adapters (Bộ gỡ lỗi) ở bên trái rồi nhấp vào RUN (CHẠY) cho các ứng dụng mẫu tương ứng. Một cửa sổ bật lên sẽ cho biết tiến trình flash.
- BRD4166A: ot-rcp – Thiết bị này sẽ hoạt động như một Bộ đồng xử lý vô tuyến cho Bộ định tuyến biên OT. Chúng ta sẽ dùng thiết bị này để tạo mạng Thread và kết nối 2 thiết bị còn lại vào mạng Thread. Là một Bộ định tuyến biên, thiết bị này cũng đóng vai trò là một cổng để các thiết bị trong mạng Thread giao tiếp qua Internet.
- Hai BRD4168A: ot-cli-ftd – Hai thiết bị này sẽ hoạt động như Thiết bị Thread đầy đủ. Các thiết bị này sẽ kết nối với mạng Thread do OTBR tạo.