Biến router Wi-Fi 7 thành máy thu SDR băng rộng 320 Msps

Công nghệ12 tháng 10, 2026·6 phút đọc

Dự án mã nguồn mở W1700K SDR biến router Gemtek W1700K Wi-Fi 7 thành một máy thu vô tuyến định nghĩa bằng phần mềm (SDR) băng rộng, thu trực tiếp tín hiệu IQ 14-bit lên tới 320 Msps và hiển thị phổ tần trực tiếp trên trình duyệt. Điểm đáng chú ý là toàn bộ firmware cho chip MediaTek MT7996 đều được viết lại từ đầu, không dùng mã của nhà sản xuất.

Biến router Wi-Fi 7 thành máy thu SDR băng rộng 320 Msps

Biến router Wi-Fi 7 thành máy thu SDR băng rộng 320 Msps

Một dự án mã nguồn mở mang tên W1700K SDR đang gây chú ý trong cộng đồng yêu thích vô tuyến phần mềm khi chứng minh rằng một chiếc router Wi-Fi 7 thông thường có thể bị "hóa phép" thành máy thu vô tuyến định nghĩa bằng phần mềm (SDR) băng cực rộng. Toàn bộ quá trình xử lý tín hiệu được thực hiện bằng firmware tự viết, không dùng bất kỳ mã nào của MediaTek.

Ý tưởng cốt lõi

Dự án khai thác phần cứng có sẵn trong router Gemtek W1700K: chip vô tuyến MediaTek MT7996 và SoC Airoha AN7581. Thay vì chạy firmware gốc của nhà sản xuất, nhóm phát triển đã viết lại toàn bộ ngăn xếp phần mềm, cho phép router thu trực tiếp tín hiệu IQ 14-bit thô với tốc độ lấy mẫu lên tới 320 Msps (triệu mẫu mỗi giây).

Tín hiệu sau đó được truyền qua cổng 10 GbE về một máy chủ Linux, nơi nó hiển thị dưới dạng phổ tần và biểu đồ thác nước (waterfall) trực tiếp ngay trên trình duyệt, kèm các nút điều khiển máy thu ngay bên cạnh.

Phổ tần 2,4 GHz trực tiếp ở tốc độ 320 MspsPhổ tần 2,4 GHz trực tiếp ở tốc độ 320 Msps

Những gì hệ thống có thể làm

Điểm đáng kinh ngạc là thiết bị này không hoạt động như một router Wi-Fi thông thường nữa, mà như một máy thu SDR chuyên nghiệp.

  • Tốc độ lấy mẫu: 40, 80, 160 hoặc 320 Msps tín hiệu IQ phức 14-bit trên mọi băng tần; ở băng 2 còn có chế độ 640/2 với độ phẳng tới ±155 MHz.
  • Băng tần: 2,4 GHz (MT7976), 5 GHz và 6 GHz (hai chip MT7977); có thể chuyển băng tần chỉ bằng một lệnh ghi thanh ghi trong khi luồng dữ liệu đang chạy.
  • Căn chỉnh tần số: Không chia theo kênh như Wi-Fi, mà bộ dao động nội (LO) có thể đặt ở bất kỳ tần số nào mà bộ tổng hợp của băng đó khóa được, với bước nhảy chỉ từ 2,98 Hz (băng 2,4 GHz) hoặc 11,9–14,3 Hz.
  • Phần đầu vào: Tự động điều chỉnh độ lợi (AGC) hoặc điều khiển thủ công LNA/baseband; bộ lọc tương tự 20–320 MHz.
  • Vận chuyển dữ liệu: Radio DMA vào một vòng đệm 1 GiB trong DRAM của SoC; nhân Linux gửi từng lát 8 KiB dưới dạng một gói UDP theo cơ chế zero-copy qua cổng 10 GbE.

Kiến trúc phần mềm thuần tự viết

Điều làm nên sự khác biệt của dự án nằm ở chỗ firmware MT7996 hoàn toàn do nhóm phát triển tự viết, bao gồm một bản vá ROM, thành phần WM (khởi động radio, thiết lập băng tần, điều khiển RF) và WA (bộ đóng gói dữ liệu). Không có dòng mã nào của MediaTek trong đó.

Firmware này tự khởi động radio từ trạng thái nguội hoàn toàn, dựa trên việc giải mã từng thanh ghi trong quá trình khởi tạo và hiệu chuẩn của MediaTek, đối chiếu với dấu vết hoạt động của firmware gốc.

Phía máy chủ Linux có ba thành phần chính:

  • w1700k-stream: nhận luồng IQ và chia sẻ cho mọi ứng dụng qua bộ nhớ chia sẻ (định dạng int16 phức), kèm tùy chọn hiệu chỉnh độ dốc suy giảm của bộ lọc.
  • w1700k-spectrum: thực hiện FFT 262.144 điểm ở tốc độ 100 khung hình mỗi giây, cung cấp giao diện web với phổ tần và thác nước.
  • sdr-recv: ghi lại luồng tín hiệu để xử lý sau.

Giao diện phổ tần băng 5 GHz trên trình duyệtGiao diện phổ tần băng 5 GHz trên trình duyệt

Cài đặt và vận hành

Để bắt đầu, bạn cần một chiếc W1700K, một bộ chuyển đổi USB-serial 3,3 V cắm vào header console của router, một cáp Ethernet vào cổng lan3 để cài đặt, và một card mạng 10 GbE trên máy chủ nối vào cổng wan của router.

Quy trình về cơ bản gồm các bước: biên dịch mã nguồn (make), chạy bộ kiểm thử (make check), thiết lập liên kết mạng, cài đặt firmware vào NAND (có sao lưu trước), rồi khởi động máy chủ stream và giao diện web trên cổng 8073.

Các yêu cầu biên dịch khá phổ thông với lập trình viên nhúng: trình biên dịch C/C++, make, git, Python 3.10+, clang, llvm-objcopy, openssl và thư viện FFTW3. Đáng chú ý là không cần tải bất kỳ firmware của nhà sản xuất nào.

Giao diện thu phóng 24 MHz quanh 5250 MHzGiao diện thu phóng 24 MHz quanh 5250 MHz

Lưu ý quan trọng: firmware của dự án này chỉ thu, không phát. Nó không chạy các bước hiệu chuẩn phát của MediaTek và giữ đường phát của MAC ở trạng thái vô hiệu hóa. Tuy nhiên, đừng bao giờ nối thẳng cổng ăng-ten vào thiết bị đo nhạy cảm mà không có bộ suy giảm tín hiệu.

Những điều cần cân nhắc trước khi dùng

Dự án đưa ra một số cảnh báo quan trọng mà người dùng cần nắm rõ:

  • Bản vá ROM không ghi eFuse: Khác với các bản vá ROM của MediaTek từ năm 2025 vốn lập trình vĩnh viễn một bit eFuse ngay lần chạy đầu tiên, bản vá của dự án này không làm điều đó. Tuy nhiên, nếu thiết bị từng chạy firmware MediaTek, bit đó đã bị đặt.
  • Việc cài đặt sẽ thay thế hệ điều hành gốc: Lệnh init/install sao chép toàn bộ NAND về máy chủ trước, nhưng để khôi phục firmware gốc cần một công cụ ghi NAND thô mà dự án không cung cấp.
  • Rủi ro phần cứng: Truy cập vào các địa chỉ không được ghi chú của MT7996 hoặc AN7581 có thể làm treo SoC hoặc kẹt radio cho đến khi khởi động lại nguồn. Mã nguồn có đánh dấu mọi điểm nguy hiểm đã biết.

Dự án được phát hành theo giấy phép MIT, ngoại trừ trình điều khiển Linux và các bản vá nhân (GPL-2.0-only), bản vá U-Boot (GPL-2.0+), và các tệp phái sinh từ trình điều khiển mt76 của MediaTek (BSD-3-Clause-Clear).

Ý nghĩa với cộng đồng

Đây là một minh chứng ấn tượng cho sức mạnh của phần cứng thương mại khi được giải phóng khỏi phần mềm đóng. Với mức giá của một router Wi-Fi 7 phổ thông, người dùng có được một máy thu SDR băng rộng với tốc độ lấy mẫu mà các thiết bị chuyên dụng như USRP hay HackRF thường đắt đỏ hơn nhiều để đạt được. Đối với cộng đồng nghiên cứu vô tuyến, an ninh mạng không dây và các dự án IoT, đây là một nền tảng đáng để khám phá.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗