Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

If implemented right this could be fantastic, especially for devices like Chromebooks, but am I reading it right that this API basically brings hardware drivers to JavaScript?


This does already (sort of) exist in a couple of projects:

* Chromebots - http://www.iceddev.com/blog/chromebots-lowering-the-barrier-... (for controlling arduino via JS using browser-serialport https://github.com/garrows/browser-serialport as a chrome packaged app (so requires a little more than just 'visit a website, root a /dev'

* Nodebots - http://nodebots.io/ for controlling a multitude of hardware via node.JS through bluetooth, BLE, or USB/Serial (which most hacker level hardware still prefers).

* WhatWG WebSerial - https://whatwg.github.io/serial/ which is doing similar to this, but less from one specific vendor

Ideally the world would converge to a single unified implementation, that said there is a lot of differences between USB-serialport, USB-HID, and a multitude of other communication methods over USB.

TL;DR you can do hardware with JS already, this should make things in the browsers slightly easier (one less dependency) at the risk of making it available for all things.

Sum: Tradeoff, like all the things.


You'll find that most USB drivers do very little beyond moving bytes from one place to another, so it's kind of a natural fit because it can enable a lot of convenience for end users. (Think kids trying to program their Arduino, or a web-based GUI for your ham radio... things like that.)

It's already been played with in Chrome a bit: https://developer.chrome.com/apps/app_usb


I was thinking about how nice it would be to be able to run a GNU Radio client on a local server and have only the downsampling run on a thin client.

Would be lots of fun.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: