Linux Hardware Support
USB Devices
Linux on ChromeOS was primarily built with software developers in mind, and as such, only a limited subset of USB devices are supported. Supported devices include several microcontrollers, such as the ESP32, Arduino and Raspberry Pi 2040. ChromeOS also includes support for the "adb" protocol, which allows developers to interact with Android devices with USB Debugging Enabled.
Supported Devices
- Android Phones
- Programmable Microcontrollers
If you wish to use a programmable microcontroller on your ChromeOS Device, please refer to the dedicated Microcontroller Development Section of the ChromeOS Guide for specific instructions.
Unsupported Devices
Although fully supported on ChromeOS, it is not possible to connect to any of the following devices from within the ChromeOS Linux environment: Although ChromeOS does allow access to filesystems on USB Mass Storage Devices via the ChromeOS File Manager's "Share with Linux" functionality, the ability to access the USB Mass Storage at the block level is not permitted within a ChromeOS Linux Container. This would mean that tools such as dd, gparted or balenaEtcher would either not work or be severely limited within your Linux container. The following tasks require block level access to storage devices This means that tools such as Balena Etcher, unetbootin or Gnome Disks will not function within the ChrommeOS Linux Environment. The ability to access USB Webcams or a webcam that is built into a ChromeOS device is not permitted within the ChromeOS Linux environment (Crostini). You can, however, use webcams within ChromeOS Applications, Web Applications and Android Applications. It is currently not possible to directly access printers in the ChromeOS Linux Environment that are connected via USB. You can, however, connect to a networked printer on your LAN from within the ChromeOS Linux environment. ChromeOS does support the use of USB and Network Scanners within ChromeOS however the use of scanners is not supported within the ChromeOS Linux Environment. It might be possible to connect to some network-based scanners however the steps to perform this are complicated and may vary based on the scanner you wish to connect to. It is possible to use keyboards and mice to interact with Linux applications in the ChromeOS Linux Environment; however, it is not possible for these applications to capture control of your keyboard or mouse. This means that some games that run in a "windowed" and automatically scroll when your mouse is at the edge of the window may not work properly. This can be solved by running your application in full-screen mode. USB Security Keys are currently not supported in the ChromeOS Linux Environment. ChromeOS does support the use of many hardware-based security keys, however, does not currently have a mechanism to pass-through security keys to the ChromeOS Linux Environment.Block Storage Devices
Webcams/Cameras
Printers
Scanners
Keyboards/Mice
USB Security Keys