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.

Add controls and sections to a position
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
← Create a position
Next
Create your first button →
Contact support →
You are viewing documentation for Buttons 1.8.See the docs for Buttons 1.6
Buttons/Positions/Add controls and sections to a position

Add controls and sections to a position

Build a position by placing elements on its canvas. Start with a section for one part of the job, then add buttons or more specialized sections. Open Position → Position, select the position, then select Open Editor.

Create an element#

  1. On the canvas, click an empty cell or drag across several cells to select the area the element should occupy.
  2. Right-click the selected area.
  3. Under Create..., choose an element type.
  4. Configure the new element in the inspector.
  5. Select Apply when you are ready to save the layout and configuration.
The selection determines the initial location and size. You can move or resize the element later.
For a first layout, create a Section large enough for a small group of related controls, then create a Button inside it.

Choose the right element#

Button#

A Button is a control that can perform actions and display state. Use one for a direct task such as muting a channel, recalling a scene, starting playback, or taking a prepared route.
A button can use:
  • Actions that run when it is pressed, released, or operated through an encoder.
  • Feedbacks that become active when a condition is true and can override its appearance.
  • Variables that display values such as -12 dB, Camera 2, or slide 7 of 24.
Use a connection preset when one provides a suitable ready-made button. Start with a direct button instead of a workflow when no additional logic is needed.
Shortcut: B

Section#

A Section groups related controls in one area of the position. Use sections to make the workspace match the work: for example, separate playback, monitoring, audio, and routing controls.
A section can contain buttons and nested sections. If its contents exceed the visible area, configure independent scrolling so the additional controls remain reachable. See Organize controls in a section.
Shortcut: S

Shift Section#

A Shift Section provides alternate layers of controls in the same area. It starts with Main and Shift pages.
For example, the main layer can recall PTZ camera presets while the shifted layer saves the current camera position to those presets. See Add secondary controls with a Shift Section.
Shortcut: Shift+S

Folder Section#

A Folder Section organizes controls into navigable pages. It starts with a Main page and child folders.
Use it when operators need to browse categories in a fixed area: for example, choosing a studio and then a device within that studio. Always provide clear labels and a visible route back so the current location is not ambiguous.
Shortcut: F

Popover#

A Popover keeps additional controls behind one compact launcher. Pressing it opens a temporary panel that can contain buttons and nested sections.
Use it for controls that should remain nearby but do not need permanent canvas space, such as confirmation choices or occasional adjustments. Configure its open direction and dismissal behavior so it does not obscure controls needed at the same time. See Add a Popover Section.
Shortcut: P

Router#

A Router creates an XY-style routing interface from routing resources available to Buttons. Use it when people need to choose sources and destinations, inspect route state, and take routes from a position.
The selected area must be at least 6 × 2 cells or 5 × 4 cells. Routing can change real signal paths immediately, so configure the available sources, destinations, levels, and take behavior before making the section available for production use.

Note

A Router generates a complete routing panel for you from the resources you pick. A Custom Router, described next, instead gives you an empty context that you populate yourself, button by button. Both are labeled Router in the inspector, so check which one you created if you're unsure. See Build a Router Section for the full configuration walkthrough.

Shortcut: R

Custom Router#

A Custom Router is an empty section that owns the current routing selections and displayed state for the controls inside it. Use it to mix and match source, destination, Preset, level, label, and utility controls in a routing panel you lay out yourself. See Understand Custom Routers for how that shared context, its take behavior, and its control modes work.
Folders, popovers, and shared sections can organize the controls. As long as they remain inside the Custom Router, their routing buttons work with the state owned by that Custom Router. A routing button outside it has no Custom Router to operate on.
See Build a focused routing panel with Custom Router for a complete example using sources, destinations, Take, Clear Selection, and nested navigation. See Routing Presets panel reference for every button type available there.
Routing can change real signal paths. Confirm the permitted sources, destinations, levels, and take behavior before testing the panel against production equipment.

Shared Section#

A Shared Section inserts centrally maintained controls into a position. Choose an existing shared section or select Create New Master to create one.
Use it when several positions need the same controls and future updates should be made once. Use an ordinary section when the controls belong only to this position or need to diverge independently.

Role Section#

A Role Section automatically loads the controls and features appropriate to a user's role. It requires a Pro license.
For example, a person can scan an NFC card on a Stream Deck Studio. After Buttons identifies their role, the Role Section presents the controls configured for that role in the same area of the position. This lets several people use the same surface while each receives the features needed for their work.
Use a Role Section when controls should follow the person who authenticates rather than remain fixed for the position. Use a regular, shift, or folder section when everyone at the position should see the same controls.
Shortcut: O

Test changes safely#

The editor keeps its runtime state separate from the live position, and layout changes do not become saved configuration until you select Apply.

Warning

Holding Shift and pressing a button in the editor enters Execute Mode and performs its actions against connected equipment or software. Confirm that the action is safe before testing it.

After testing pages, popovers, action steps, or local state in the editor, select Push State to Live only when the live position and its surfaces should adopt that runtime state. Push State to Live does not replace Apply.

Where to go next#

  • Create your first button, with a harmless action and state feedback.
  • Protect a section only when it has a genuine access or safety requirement.
  • Create a shared section when the same controls are needed in another position.

Was this helpful?

Was this helpful?

0 of 0 users found this page helpful