Mở rộng WebUSB cho Firefox: Tương tác thiết bị USB trực tiếp từ trình duyệt
Một tiện ích mở rộng mới mang khả năng WebUSB vào Firefox, cho phép các ứng dụng web giao tiếp trực tiếp với thiết bị phần cứng. Để hoạt động, công cụ này yêu cầu cài đặt cả tiện ích trình duyệt và một chương trình "native stub" trên máy tính.

Mở rộng WebUSB cho Firefox: Tương tác thiết bị USB trực tiếp từ trình duyệt
Một tiện ích mở rộng mới mang khả năng WebUSB vào Firefox, cho phép các ứng dụng web giao tiếp trực tiếp với thiết bị phần cứng. Để hoạt động, công cụ này yêu cầu cài đặt cả tiện ích trình duyệt và một chương trình "native stub" trên máy tính.
Giới thiệu về WebUSB cho Firefox
WebUSB là một công nghệ cho phép các trang web giao tiếp với các thiết bị USB được kết nối. Tuy nhiên, không giống như Google Chrome, Firefox chưa hỗ trợ tiêu chuẩn này mặc định. Project "awawausb" đã giải quyết vấn đề này bằng cách tạo ra một tiện ích mở rộng sử dụng cơ chế Native Messaging để kết nối trình duyệt với phần cứng.
Cơ chế hoạt động và Cài đặt
Để sử dụng tính năng này, người dùng cần cài đặt hai thành phần:
- Tiện ích mở rộng trình duyệt: Được cài đặt trực tiếp vào Firefox dưới dạng file .xpi.
- Native Stub: Một chương trình nhỏ chạy độc lập trên hệ điều hành để làm cầu nối giữa trình duyệt và driver USB.
Quá trình cài đặt có thể thực hiện thông qua các tệp nhị phân có sẵn (prebuilt binaries) hoặc biên dịch từ mã nguồn. Đối với đa số người dùng, việc tải file .xpi và chạy script cài đặt (install.sh cho Linux/macOS hoặc install.bat cho Windows) là phương pháp đơn giản nhất.
Các tệp nhị phân được hỗ trợ trên nhiều nền tảng khác nhau, bao gồm macOS (x86_64 và ARM64), Linux (x86_64 và aarch64), và Windows (AMD64 và ARM64).
Yêu cầu hệ thống
Do phụ thuộc vào các thư viện hiện đại và khả năng hỗ trợ của Firefox, tiện ích này yêu cầu các phiên bản hệ điều hành sau:
- macOS: Phiên bản 10.15 trở lên (khuyến nghị macOS 12 để có hiệu suất tốt nhất).
- Windows: Windows 10 trở lên, do yêu cầu về hỗ trợ nền tảng của Rust.
- Linux: Kernel phiên bản 4.8 trở lên. Hệ thống phải có
/devvà/sysđược mount, cùng với một userspace hỗ trợ udev để phát hiện thiết bị.
Cấu hình Native Manifest
Để Firefox có thể tìm thấy và giao tiếp với chương trình Native Stub, một tệp cấu hình JSON gọi là "Native Manifest" cần được đặt ở vị trí cụ thể trên hệ thống.
Trên Windows, quy trình này phức tạp hơn một chút do yêu cầu đăng ký đường dẫn tệp manifest vào Registry của hệ thống.
Cấu hình Registry trên Windows
Các khóa Registry cần thiết bao gồm HKLM\SOFTWARE\Mozilla\NativeMessagingHosts\awawausb_native_stub (toàn hệ thống) hoặc HKCU... (cho người dùng cụ thể).
Nội dung tệp manifest JSON sẽ chứa thông tin về tên, đường dẫn chương trình và danh sách các tiện ích mở rộng được phép kết nối.
Biên dịch từ nguồn (Dành cho nhà phát triển)
Native stub được viết hoàn toàn bằng ngôn ngữ lập trình Rust. Điều này cho phép biên dịch chéo (cross-compilation) dễ dàng giữa các nền tảng như macOS, Linux và Windows. Project sử dụng musl libc cho Linux để đảm bảo tính tương thích rộng rãi, và mingw-w64 cho Windows.
Với sự ra mắt của tiện ích này, các nhà phát triển web giờ đây có thể xây dựng các ứng dụng tương tác với phần cứng USB ngay trên trình duyệt Firefox mà không cần chuyển sang Chrome.
Bài viết liên quan

Phần mềm
CEO Canva Melanie Perkins: Chuyển mình lớn sang nền tảng AI doanh nghiệp
20 tháng 4, 2026
Công nghệ
Giải quyết bài toán "con gà và quả trứng" cho các sàn giao dịch hai chiều
20 tháng 4, 2026

Phần mềm
Microsoft tung bản vá khẩn cấp khắc phục lỗi khởi động lại liên tục trên Windows Server
20 tháng 4, 2026
