flowrs-device Copyright 2024-2026 David Charlot and the flowRS contributors Licensed under either of the Apache License, Version 2.0 (LICENSE-APACHE) or the MIT license (LICENSE-MIT), at your option. This crate is part of flowRS. Third-party material: src/webbluetooth.rs follows AuraSense engine-web's Web Bluetooth source (engine-web/src/sources/ble.rs and util.rs); three small helpers match util.rs: AuraSense engine-web, Copyright AuraSense Tech Corporation. Licensed under the Apache License, Version 2.0 or the MIT license. CAN (src/can*): the frame layouts, request numbers, structures and command sequences are interoperability facts, restated from the specifications and documentation they come from, with no code taken: ISO 11898-1 and CiA 610-1; the Linux kernel's include/uapi/linux/can.h (its userspace ABI); candleLight's include/gs_usb.h and usbd_gs_can.c (MIT) for the gs_usb structures and constants; the Lawicel CAN232/CANUSB manuals for SLCAN. The Linux gs_usb and slcan drivers (GPL-2.0), can-utils (GPL-2.0 OR BSD-3-Clause) and python-can (LGPL-3.0) were read for request values, the order a host follows and the line formats only; none of their code is in this crate. Everything else in this crate was written for flowRS, from the specifications it implements (IVI-6.1 HiSLIP, VXI-11, USBTMC/USB488, USB CDC PSTN, IEEE 488.2 and SCPI, the LXI identification schema, RFC 5802/7677 SCRAM, RFC 4616, RFC 5929, RFC 6762/6763, the WebSerial, WebUSB, WebHID and Web Bluetooth specifications, the Linux sysfs PWM and IIO interfaces). The test certificates in fixtures/tls/ were generated for flowRS by fixtures/tls/regenerate.sh.