Firmware upload is done via webdfu
emscripten_toolchain for Bazel is taken from https://github.com/emscripten-core/emsdk/tree/master/bazel/emscripten_toolchain
libusb.cc -- universal shim, inspired by