jcalado

an irregular zine on software · radio · side-projects

entry 19 JUN 2026 CS7BLE / PT

The Ulanzi Stream Controller plugin is now an official Companion surface

# date         : 2026-06-21
# reading_time : 2 min read
$ tree ./toc

Back in April I reverse-engineered the Ulanzi Stream Controller D200 and wrote a Bitfocus Companion surface plugin for it. It started as a developer module you had to clone and side-load. It’s now an official Companion surface: submitted to the Bitfocus module store and pending review, which means once approved it installs straight from inside Companion — no cloning, no build step.

What changed

  • It’s in the store. Submitted as ulanzi-stream-controller v1.0.0 via the Bitfocus developer portal. After a volunteer review it’ll be a one-click install for anyone on Companion 4.0+.
  • The repo moved to the Bitfocus org: github.com/bitfocus/companion-surface-ulanzi-stream-controller. That’s now the home for development, issues, and releases.
  • D200X support. The plugin now also drives the D200X (14 buttons — the small-window slot becomes a regular button), alongside the original D200, plus a screensaver mode and a pile of small-window rendering fixes.

How official surface modules work

Companion’s surface plugin system (4.3.0+) follows the same model as connection modules: you keep your own repo, tag a release, and submit the tag through developer.bitfocus.io. The store references your tagged build — Bitfocus never forks your code. Releasing is just: bump the version, yarn package to verify the build, tag vX.Y.Z, push, and submit.

Get it

Once it clears review it’ll show up under Surfaces in Companion. Until then you can build from the repo — see SETUP.md for the Linux notes (the USB-2 hub requirement still applies).

── EOF ── (231 words · 2 min read)
My avatar

Thanks for reading my blog post! Feel free to check out my other posts or contact me via the social links in the footer.


More Posts