Bitfocus AS
logo
logo
Bitfocus AS
logo
logo
Sign upSign in

Loading...

Bitfocus

Subscribe to our newsletter

The latest news, articles, and resources, sent to your inbox.

FacebookInstagramGitHubYouTubeLinkedIn

Products

  • Buttons
  • Companion

Integrations

  • Supported Devices
  • Developer Community
  • Connection Development

Support

  • Support Overview
  • Documentation
  • Video Tutorials
  • Community Forum

Sales

  • Resellers & Integrators
  • Buttons Pricing

Updates

  • Case Studies
  • Events & Trade Shows
  • Press Releases
  • Product Updates
  • Webinars

Legal

  • Legal Overview
  • Privacy Policy
  • Buttons EULA
  • Terms & Cookie Policy

Company

  • About us
  • Press kit
  • Careers

© 2026 Bitfocus AS. All rights reserved.

Send ATEM tally and labels to a UMD
Docs for
Overview
Getting started
What is Bitfocus Buttons?
Install Buttons and get started
Manage your Buttons license
Activate Buttons offline
Find your way around Buttons
Create your first backup
Add an ATEM connection
Choose a control method
Choose an installation path
Install Buttons on Debian or Ubuntu
Understand HA clustering
Kubernetes HA
Update or remove Buttons
Positions
Understand positions
Create a position
Add controls and sections to a position
Create your first button
Use a connection's presets
Build more capable button actions
Add more feedback to a button
Organize controls in a section
Shift Section
Organize controls with a Folder Section
Add a Popover Section
Build and reuse a Shared Section
Build a Router Section
Understand Custom Routers
Custom Router panel
Surfaces
Surface compatibility
Add and attach a surface
Device orientation
Connections
Update a connection's module safely
Monitor and troubleshoot a connection
Router integrations
VideoHub and AJA KUMO
Utah Scientific BPS
Generic SW-P-08
Nevion VideoIPath
Arkona BLADE//runner
Routing
Physical routing
Configure ports and labels
Take a physical route
Understand route status
Topology graph
Routing Presets
Get started with virtual routing
Configure Nested Shapes
Reverse routing
Tielines
Routing Projects
Routing settings
Troubleshoot a route
Tally
Understand the Tally system
Send ATEM tally and labels to a UMD
Interpret Active Tally state
TSL/UMD connections
Diagnose tally problems
NMOS
Understand NMOS in Buttons
Connect Buttons to an NMOS Registry
Built-in Registry Server
Configure NMOS connections
Discover and adopt
Browse the NMOS inventory
Manage NMOS multicast addresses
Diagnose NMOS problems
Understand Cuelists
Build a Cuelist
Read and advance a running Cuelist
Control a Cuelist from a Position
Workflows
Understand workflows
Build your first workflow
Reuse a group of workflow nodes safely
Troubleshoot a workflow
Recipes
Sequence a timed automation
Call an HTTP endpoint from a workflow
REST endpoint
Use variables
Understand variable scope
Understand nested variables
Update expressions for v1.8
Plan and use Tags
Access
Create and manage users
Create roles and assign permissions
Grant access to specific resources
Show different controls by role
Sessions
Set up PIN and NFC sign-in
SSO
Get started with SSO
Connect a generic OIDC provider
Connect LDAP or Active Directory
Map identity claims to roles
Secure a Buttons deployment
Integrations
External control
Connect to Bitfocus Listener
USB Relay
Install USB Relay on Windows
Install USB Relay on macOS
Install USB Relay on Linux
Install USB Relay on a Raspberry Pi
Get started with the Control API
Secure and monitor the Control API
Control API reference
API reference
Administration
Enable and manage installable features
Services and health
Configure and monitor scheduled backups
Restore a backup and verify it
Export or import Buttons configuration
Store and rotate connection secrets
Replace the HTTPS certificate
HA backup and recovery
Settings
Collect support information
Reference
Glossary
Button Inspector reference
Network ports reference
Expressions
Internal actions reference
Routing Presets panel reference
Startup configuration reference
Workflow nodes
Connection workflow nodes
Workflow workflow nodes
Internal workflow nodes
Position workflow nodes
API workflow nodes
Utility workflow nodes

Loading...

Previous
← Understand the Tally system
Next
Interpret Active Tally state →
Contact support →
You are viewing documentation for Buttons 1.8.See the docs for Buttons 1.6
Buttons/Tally/Send ATEM tally and labels to a UMD

Send ATEM tally and labels to a UMD

This guide creates a first end-to-end tally path from an ATEM connection to a TSL-compatible multiviewer or UMD display.
The finished path works like this:
ATEM Program or Preview state
→ Tally Provider for the affected ATEM input
→ Program or Preview Tally Channel on that source port
→ Tally Consumer watching an ATEM destination
→ TSL client connection
→ Multiviewer or UMD display
The Provider translates ATEM state into tally state inside Buttons. The Consumer watches a destination, follows its active source, resolves that source's label and Tally Channels, and sends the result to the external display.

Before you begin#

You need:
  • A non-production ATEM connection that is online in Buttons.
  • ATEM source and destination routing resources.
  • A TSL-compatible multiviewer or UMD display.
  • The display's IP address, TSL port, supported TSL version and transport, UMD address, and screen number where applicable.
  • A destination that can be changed without affecting a production output.
This guide uses Input 2 as the source and ME 1 Program as the destination. Substitute resources reserved for your own setup work.

Warning

Consumer Test Mode sends output through the configured TSL connection. Use a non-production UMD address and make sure temporary labels or tally indications cannot be mistaken for live production state.

Create the Program and Preview channels#

Tally Channels give operational meaning to tally state. In this setup, Providers activate Program or Preview, and Consumers map those channels to UMD indicators.
  1. Open Routing → Tally / UMD.
  2. Open Channels.
  3. Select Add.
  4. Under Or quick add a preset, select Preview.
  5. Select Add again.
  6. Select the Program preset.
The presets create:
  • Preview, with short label PVW and a green color.
  • Program, with short label PGM and a red color.
If these channels already exist, use the existing channels rather than creating duplicates. The switcher Quick Setup recognizes channels named Program and Preview and selects them for the corresponding ATEM roles.

Create Providers from the ATEM#

The ATEM knows whether each input contributes to Program or Preview. Quick Setup creates Providers that read those connection feedbacks and apply the matching Tally Channel to each ATEM source port.
  1. Open Providers.
  2. Select Quick Setup.
  3. Select Generate tally from a switcher (ATEM, etc.).
  4. Under Switcher Connection, select the non-production ATEM.
  5. Wait for Buttons to read the available inputs and Program/Preview suggestions.
  6. Under Program tally channels, confirm Program.
  7. Under Preview tally channels, confirm Preview.
  8. Review the number of Providers that will be created.
  9. Select Create Providers.
Quick Setup creates one Provider for each suggested input and each mapped role. Each Provider:
  • Watches an ATEM Program or Preview feedback for one input.
  • Uses the corresponding ATEM source port as its subject.
  • Activates the selected Tally Channel when that feedback is active.

Tip

Map only the Program and Preview roles you need. Quick Setup creates one Provider per input for every mapped role, so omitting an unused role avoids unnecessary Providers.

Confirm that ATEM tally reaches Buttons#

Use a non-production ATEM route or switcher operation to place Input 2 on the selected Program destination.
  1. Open Active under Tally / UMD.
  2. Find the Input 2 source port.
  3. Confirm that Program appears under Active Channels.
  4. Confirm that the corresponding ATEM Provider appears under Responsible Providers.
  5. Change the ATEM state away from Input 2.
  6. Confirm that its Program tally clears or moves to the newly active source.
This proves the first half of the path: ATEM state is reaching a Provider and becoming a Tally Channel on the correct source port. It does not yet prove that the UMD output is configured.

Create the TSL client connection#

A TSL client connection sends labels and tally indications from Buttons to the multiviewer or UMD display.
  1. Open TSL Connections.
  2. Select Add.
  3. Enter a Label, such as Studio 2 Multiviewer.
  4. Set Connection Type to Client (Connect).
  5. Enter the display's IP address or hostname under Host.
  6. Enter the display's TSL Port.
  7. Select Create.
  8. Open the new connection.
  9. Under Protocol, select the TSL version and transport required by the display.
  10. Save the connection.
  11. Confirm that the connection does not show Unconfigured or Error.
New connections use TSL 5.0 UDP unless changed in the connection details. Match the display's configuration rather than assuming its protocol.
For UDP output, Buttons can transmit without receiving an acknowledgement from the display. A healthy connection status therefore does not prove that the display is using the messages; verify the result on the display itself.

Create a Consumer for the UMD address#

The Consumer watches ME 1 Program. Its Active Source lookups follow the current source routed to that destination. If Input 2 is active there, the Consumer resolves the Input 2 label and the Program or Preview channels attached to that source.
  1. Open Consumers.
  2. Select Quick Setup.
  3. Select Generate TSL outputs for ports / bundles.
  4. Select the TSL client connection created for the display.
  5. Continue to the mapping step.
  6. Select Add Ports / Bundles.
  7. Select Destinations.
  8. Choose Bundles or Ports to match how the display tile represents the signal.
  9. Select the non-production ME 1 Program destination.
  10. Select Add Selected.
  11. Enter the UMD Address and Screen expected by the display.
  12. Continue to TSL UMD Setup.
  13. Leave Resolved Label Preset set to Active Source.
  14. Leave Resolved Tally Preset set to Active Source.
  15. Under Tally Channel → TSL UMD, confirm the intended mappings. By default, Buttons maps:
    • Preview to Left using the channel color.
    • Program to Right using the channel color.
  1. Continue to Review.
  2. Confirm the generated Consumer label.
  3. Create the Consumer.
Use the UMD address and screen configured on the external display. The first generated mapping starts at address 0 and screen 0, but those defaults are not a statement about the display's configuration.

Verify the Consumer with Test Mode#

Test Mode lets you verify the Consumer's label and tally mapping independently of current ATEM state. It drives the real configured output, so keep the test brief and identifiable.
  1. Open Consumers.
  2. Open the generated Consumer for ME 1 Program.
  3. Turn on Test Mode.
  4. Under the Program Tally Lookup, turn on Active in test.
  5. Under Label Lookups, enter a clear Test value, such as TALLY TEST.
  6. Save the Consumer.
  7. Confirm that the intended UMD tile shows the test label and Program indication in the configured position and color.
  8. Turn off Test Mode.
  9. Save the Consumer again.
  10. Confirm that the temporary test state clears from the display.
When no individual Tally Lookup is marked Active in test, Test Mode activates all configured Tally Lookups. Marking the Program lookup explicitly keeps this check limited to the intended indication.

Verify the complete live path#

After Test Mode is off:
  1. Route Input 2 to the non-production ME 1 Program destination.
  2. Open Active and confirm that Input 2 has the Program channel from the expected Provider.
  3. Confirm that the UMD tile for ME 1 Program displays the resolved Input 2 label.
  4. Confirm that the Program indication appears in the configured UMD position and color.
  5. Change the active source at ME 1 Program.
  6. Confirm that both the resolved label and tally indication follow the new ATEM state.
This verifies each part of the signal flow:
  • The ATEM supplies Program and Preview state.
  • Providers assign Tally Channels to ATEM source ports.
  • The Consumer follows the active source at the watched destination.
  • The TSL client sends the resolved label and tally indication to the display.

If the result is missing or incorrect#

Check the path in order:
  1. Under Active, confirm that the expected source port has the correct Tally Channel and Responsible Provider.
  2. Open the Provider and confirm it is enabled and tied to the expected ATEM input and channel.
  3. Open the Consumer and confirm its Watch Item is the intended destination.
  4. Confirm the label and tally lookups use Active Source.
  5. Confirm the Program and Preview channels map to the intended UMD positions and colors.
  6. Confirm the Consumer's TSL output uses the intended connection, address, and screen.
  7. Open TSL Connections and check the client connection status, host, port, protocol, and enabled state.
  8. Confirm that the external display is configured for the same TSL version, transport, port, address, and screen.
  9. Confirm Test Mode is off after setup work is complete.
If Active shows the correct source and channel but the display does not update, focus on the Consumer, TSL connection, and display configuration. If Active is already wrong, correct the ATEM Provider side before investigating the UMD output.

Where to go next#

  • Understand Tally Channels, Providers, Consumers, subjects, and routing-aware tally.
  • Send or receive tally and labels over TSL/UMD, for protocols, addresses, and external devices.
  • Interpret Active Tally state, for direct, selected, contributing, virtual, and Tieline-aware state.

Was this helpful?

Was this helpful?

0 of 0 users found this page helpful