~/talk

Multiplatform USB:How to Communicate Seamlessly

Talkat Droidcon London 2023 · 2023-10-26..10-27· [embedded-and-hardware]
slides:none on file

Multiplatform pipeline that turns images into a zipped base64 payload, sends it over USB/serial and runs on Android, desktop, terminal and a web frontend; uses Kotlin Multiplatform with a common dithering library (implements Floyd Steinberg dithering), JVM platform modules, Ktor server and a browser client using the web serial API. Automated flashing script prepares 100 badges flashed at the conference, desktop uses Compose and iSerial on macOS, the end‑to‑end flow works locally and a zbatch.cloud deployment is in progress (SSL pending).

AI-written summary · about

  1. 0:00Introduction and setup
  2. 1:56Digital badge communication
  3. 4:44Dithering and image processing
  4. 6:12Kotlin Multiplatform introduction
  5. 8:23Platform-specific USB handling
  6. 11:33Android batch manager details
  7. 13:41Mac batch manager implementation
  8. 15:52Linux and Mac abstraction
  9. 17:18Gradle source sets and dependencies
  10. 18:42Desktop app with Compose
  11. 21:55Terminal app and command-line args
  12. 23:40Current limitations and challenges
  13. 24:45Web Serial API and browser integration
  14. 27:16Server architecture and API design
  15. 30:51Website and user interface
  16. 32:59Deployment and Zbatch.cloud
  17. 34:05Future ideas and closing
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.