WebUSB ve Web Serial API: hangisi ne zaman?
Modern Chromium tarayıcıları donanıma iki farklı kapıdan erişir: WebUSB ve Web Serial API. İkisi de aynı işi yapıyor gibi görünse de katmanları, izinleri ve doğru kullanım alanları farklıdır.
İki API, iki katman
WebUSB, bir USB cihazının ham arayüzlerine ve uç noktalarına (endpoint) doğrudan erişim verir. Tarayıcı, işletim sisteminin bir sürücü yüklemesini beklemez; belirli bir üretici sınıfı (vendor-class, 0xFF) arayüzüyle konuşur. Bu, cihaza özel bir protokolü — çerçeveleme, komut seti, doğrulama — uygulamanın en esnek yoludur.
Web Serial API ise işletim sisteminin gördüğü seri portlara (COM portu / tty) erişir. Bir CDC-ACM cihazı, FTDI/CH340/CP210x köprüsü ya da gerçek bir UART adaptörü — hepsi işletim sistemi tarafında bir seri port olarak görünür ve navigator.serial bunlara baud/parite/durdurma biti ayarıyla bağlanır.
Pratik farklar
- Erişim seviyesi: WebUSB uç-nokta seviyesinde ham paket; Web Serial satır/bayt akışı seviyesinde seri port.
- Sürücü: İkisi de Chromium'da sürücüsüz çalışır; ancak WebUSB, işletim sisteminin bir COM portu oluşturmasına hiç ihtiyaç duymaz.
- Tarayıcı desteği: Her ikisi de Chromium tabanlı tarayıcılarda (Chrome, Edge) çalışır. Web Serial'ın Android desteği 2026 Nisan'ında betaya girdi; Safari ve Firefox ikisini de tam desteklemez.
- İzin modeli: Her ikisi de kullanıcı jesti (tıklama) ve bir cihaz seçim penceresi gerektirir — sayfa arka planda sessizce cihaz tarayamaz.
Salixus neden ikisini birden kullanıyor?
Salixus cihazları tek kabloda kompozit bir USB arayüzü sunar: bir WebUSB üretici arayüzü + iki adet CDC-ACM seri port. Bu, üç mantıksal kanalın aynı anda açık olması demektir.
Birleşik tarayıcı GUI'si, protokol zekâsını taşıyan değer katmanı için WebUSB kanalını kullanır: SDI-12 komut setleri, LIN tarayıcı, Modbus çerçeve çözümleme. Bu kanal, cihaza özel çerçevelemeyle ([kanal][veri]) konuşur ve GUI açıkken sizin PLC/terminal yazılımınız aynı anda CDC portlarını kullanmaya devam edebilir.
Bağımsız terminal sayfası (terminal.html) ise Web Serial API üzerinden çalışır — çünkü CDC portları sıradan işletim sistemi seri portlarıdır ve bu sayfa yalnızca Salixus'la değil, herhangi bir USB-seri adaptörle (FTDI, CH340, CP210x, Arduino, PLC) çalışacak şekilde tasarlanmıştır.
Hangisini seçmeli?
Cihaza özel bir protokol, doğrulama ya da çok kanallı bir mux tasarlıyorsanız WebUSB doğru katmandır. Elinizde sıradan bir seri cihaz varsa ve tek ihtiyacınız baud ayarlı bir konsolsa, Web Serial daha az koddur. Salixus'un yaklaşımı ise ikisini bir arada sunmak: değer katan protokol zekâsı WebUSB'de, açık ve evrensel seri erişim Web Serial'da.
Tarayıcıdan çalışan, sürücüsüz ve izole Salixus protokol köprülerini keşfedin.
Ürünleri gör Web Serial terminalini dene