skio_usb_serial 0.2.1
skio_usb_serial: ^0.2.1 copied to clipboard
USB serial for Flutter on Android (USB OTG), macOS and web (Web Serial): talk to ESP32, Arduino, STM32 and CH340, CP210x, FTDI adapters. JNI and FFI, no platform channels.
0.2.1 #
SerialConfig,Parity,StopBits,FlowControlandLineReadernow come from skio_core 0.2.0, shared with the newskio_uartpackage. No API changes: imports throughskio_usb_serialwork as before, and apps can now use both packages together.- README points Windows, Linux and Android panel UART users to
skio_uart.
0.2.0 #
- macOS support. Lists USB serial ports through IOKit (with vendor,
product and serial number) and opens them with POSIX termios, all through
dart:ffi: no Swift, Objective-C or CocoaPods. Any baud rate, 5 to 8 data bits, odd/even parity, 1 or 2 stop bits, RTS/CTS, DTR/DSR and XON/XOFF flow control, DTR/RTS lines, plug and unplug events. Reading runs on a background isolate; writes never block the UI. Other processes are kept out of an open port, and opening the same port twice in one app throwsDeviceBusy. - Sandboxed macOS apps need the
com.apple.security.device.serialentitlement; without itopenthrowsAccessDeniedsaying so. - Example: runs on macOS, with macOS-specific hints.
- Verified on a Mac with an ESP32 through its CH340 chip.
0.1.3 #
- README: badges, a FAQ for common questions and a fair comparison with
other packages, plus a guide for migrating from
usb_serial. - pub.dev: clearer description, topics and a link to skio-flutter.dev.
0.1.2 #
- Tested hardware in the README now lists the boards (ESP32, STM32, Nordic nRF) and phones (vivo, OPPO, Samsung, POCO) the package has been used with.
- Includes the 0.1.1 documentation changes below (0.1.1 was not published separately).
0.1.1 (not published separately) #
- README rewritten: every feature explained with an example (finding and picking ports, permission, settings, receiving, line reading, sending, DTR/RTS, plug events, closing), plus an errors table, troubleshooting, tested hardware and limitations.
- Example: text labels on every button, a layout that fits phone screens, and a guide to each control in its README.
0.1.0 #
First stable release. No API changes since 0.1.0-beta.1.
- Verified on real hardware with a CH340 adapter: Android 16 (POCO M7 5G) over USB OTG, and Chrome on macOS through Web Serial. Listing, USB permission, open, receive, send and DTR/RTS work.
- Example: a labelled "Choose port" button on the web, step-by-step help, inline error hints and a Logs page with copy for bug reports.
0.1.0-beta.1 #
First beta. Web Serial has been checked in Chromium. The Android backend is
verified on an emulator and against the usb-serial-for-android source, but
not yet on real USB hardware; please report results with SkioLog output.
UsbSerialPort: list, open, buffered byte input, ordered writes with timeouts, DTR/RTS control, clean close and disconnect handling.SerialConfigwith baud rate, data bits, parity, stop bits and flow control.LineReaderfor splitting byte streams into text lines.- Platform interface with a fake-friendly
UsbSerialPlatformfor tests. - Web Serial backend (Chrome and Edge): port chooser, granted-port listing, connect/disconnect events, open/read/write/close, DTR/RTS.
- Android backend (USB OTG) calling UsbManager and usb-serial-for-android 3.11.0 directly through JNI (jnigen): device listing (one handle per port on multi-port adapters), USB permission dialog without a BroadcastReceiver, attach/detach events, line settings, flow control, DTR/RTS, non-blocking writes on the library's I/O thread, R8 keep rules included.
- Opt-in logging through
SkioLog: open/close, errors, permission results and hex dumps of every byte attrace. - Example app: general-purpose serial terminal.