TallyOBS: Push scene changes to WiFi-enabled tally lights

OBS Python TallyOBS: Push scene changes to WiFi-enabled tally lights 1.4.0

A small tweak - NDI and Decklink sources are now discovered and added for tally lights. A big thank you to matthewwestfall for the fix!
Both TallyPi and TallyCircuitPy for Raspberry Pi and CircuitPython boards (like the ESP32-S2) have been updated to add a local dashboard for individual lights. Libraries & packages were also updated for the latest Raspberry Pi OS & CircuitPython HTTP libraries. Check 'em out!

Just updated the Tally Lights script for OBS 28:
  • Ensures that video sources are properly discovered after startup
  • Will shut down lights on OBS exit
  • Improves discovery of video sources on settings updates
TallyOBS has been tested with OBS 28 and appears to be operating as expected with Python 3. The installation instructions have now been updated to include both OBS 28 and OBS 27 installation instructions. The same script should work for both.

If you have any issues let me know!
You can now support multiple lights per source! Additional addresses can be supplied in a comma separated list, so that you can have one tally light mounted on the camera and a second with a remote operator.

TallyOBS is now separated from TallyPi and TallyESP as well - that way multiple hardware sources can be supported, all managed by a single OBS script.
The Tally Light family has grown with support for both CircuitPython devices as well as the Raspberry Pi! Given the wider range of codebases (and devices) now supported, I've broken this project out into three pieces:
Please do open a support request in TallyOBS Issues if this is confusing or documentation is incomplete - will clear things up as soon as I can.
Support for the ESP32-S2 (via CircuitPython) is underway, with the first tested device being the PixelWing ESP32-S2 RGB Matrix. This will be compatible with the existing OBS script, so you can mix and match Raspberry Pi or ESP32 devices depending on what you have in your parts drawer.

With the release of Oak Development Technologies' PixelWing and CircuitPython 7.0, this will be the simplest (and cheapest) way to get a network-connected tally light going. After development and a few weeks of field testing, this will likely be the target platform for the TallyPi going forward.

So I guess TallyPi is becoming... TallyESP?
Release 0.5.2 is out - this provides support for additional breakout boards including:
- NeoPixel platforms (especially the PixelLeaf 5x10 Matrix)
- The Pimoroni Blinkt! pHat
- Cont'd support for Pimoroni Unicorn pHat

This also moves the Raspberry Pi server software to Python 3 - getting us off of the legacy 2.x platform.

The Python script for OBS has also been improved to ensure calls to the tally lights don't block OBS scene transitions, with HTTP connections now being performed asynchronously in the background.
Now returns the tally light's hostname, so it can be shown in the dashboard. Name a tally light "camera01" and have that show on the web dashboard to make life a bit easier.
TallyPi will offer the Python plugin script as the default, but Lua will continue to be supported for those who prefer that.

A new web dashboard to search for your lights & modify color + intensity is now available as well! This allows for ease of finding each light's IP address on your network, and confirming their color and brightness.
Top