Understanding Sections

Sections provide a simplified way to configure groups of hardware components without navigating the full layer tree. Instead of working through complex layer hierarchies, sections let you focus on specific areas of your controller's functionality—like camera adjustments, user buttons, or routing controls.

Most SKAARHOJ default configurations include sections. If you've ever used the Section Selector dropdown in the configurator, you've already been working with sections.

What Are Sections?

A Section is a named group of hardware components (buttons, encoders, faders) that belong together functionally. When you select a section in the configurator, only that section's components are highlighted and editable in the Section View. This makes it easier to:

  • Focus on one functional area at a time
  • Navigate complex configurations without getting lost in the tree
  • Make changes to related controls without affecting other parts

Sections are defined on layers in the configuration tree. Each section specifies which hardware components belong to it, and optionally, which variables control its pages and shift states.

Working with Sections

To work with sections in the configurator:

  1. Open your configuration in the configurator
  2. Look for the Section Selector dropdown near the top of the interface
  3. Click the dropdown to see available sections
  4. Select a section to view and edit its components

When a section is selected, the configurator highlights that section's hardware components on the controller visualization. You can then click on individual components to edit their behaviors.

Section selector dropdown
The Section Selector dropdown showing available sections.

Section Components

Each section defines a list of HWC Keys (Hardware Component Keys)—the names assigned to buttons, encoders, and other controls that belong to that section.

When you're in Section View:

  • Only the section's HWC Keys are shown and editable
  • Other components on the controller still exist but are dimmed or hidden
  • Changes you make only affect the selected section's components

To access components outside the current section, either switch to a different section or use the tree view for the full configuration.

Section view with highlighted HWCs
A section's HWCs highlighted on the controller.

Page Variables and Menu Navigation

Many sections use Page Variables to provide multiple "screens" of functionality on the same physical controls. This is how menu navigation works in most SKAARHOJ configurations.

How Pages Work

When creating and editing pages in the section view, Reactor will create layers and active if conditions accordingly. Page variable is used to select between those layers.

The Page Variable is a standard Reactor variable with multiple options (like "Home", "Exposure", "Color", "Focus"). The section displays different behaviors on its components depending on which page is currently selected.

For example, in the Canon XC Camera Adjustments section:

  • Home page: The 8 encoders control AWB Mode, Color Gain, Shooting Mode, Gain, Iris, and Focus
  • Exposure page: The same 8 encoders now control Auto Iris, Gain Mode, Shutter settings, and ND Filter
  • Color page: The encoders control White Balance, Color Temperature, and Master Pedestal

The physical encoders are the same—only the assigned behaviors change based on the active page.

In Section View, you'll see page navigation controls that let you:

  • See the current page name
  • Switch to different pages
  • Understand which page you're editing

The exact location and appearance of these controls depends on the configuration, but they're typically visible when a section with pages is selected.

Page navigation controls
Page navigation controls in Section View.

Info

Page navigation in Section View is for editing the configuration. The actual runtime page switching is controlled by behaviors on your controller—often a dedicated Page button or encoder that cycles through the page variable's options.

Shift Variables

Shift Variables extend the functionality of your controls without requiring additional physical hardware. By holding a designated Shift button, you can access secondary behaviors on the same controls.

How Shift Works

A Shift Variable typically has two states:

  • Off (Normal): Standard behaviors are active
  • On (Shifted): Secondary behaviors become active

When you hold the Shift button on your controller, the Shift Variable changes to "on", and any shift-specific layers become active. This reveals additional controls that would otherwise be hidden.

Common Shift Patterns

In camera configurations like Canon XC, the Shift button provides access to:

  • Exposure page: Shift reveals Auto Exposure Shift, DNR Mode, Flicker Reduction, Infrared Mode
  • Color page: Shift reveals Matrix controls and extended color gain settings
  • Focus page: Shift reveals additional focus adjustment parameters

This pattern effectively doubles the number of available controls on each page without adding physical buttons.

Shift in Section View

When editing a section with shift support, you may see:

  • A shift state indicator showing whether you're viewing normal or shifted behaviors
  • The ability to toggle shift state to edit shift-specific behaviors
  • Separate layers in the tree for normal and shifted configurations
Normal state

Normal

Shifted state

Shifted

Shift state indicator in Section View. Comparison of normal and shifted states in Section View.

Real-World Example: Canon XC Camera Adjustments

The Canon XC ProClass configuration demonstrates a well-designed section structure. Let's walk through how it uses sections, pages, and shift.

The Camera Adjustments Section

This section maps 8 encoders (Enc1 through Enc8) to camera parameters. It uses:

  • Page Variable: "SettingPage" with 10 different pages
  • Shift behavior: Hold-to-activate for extended controls
Canon XC Camera Adjustments section
The Camera Adjustments section in Canon XC ProClass.

Page Structure

PageEnc1Enc2Enc3Enc4Enc5Enc6Enc7Enc8
HomeAWB ModeColor Gain RColor Gain BShooting ModeGainIrisFocus SpeedFocus Position
ExposureAuto IrisCamera IrisGain Mode(varies)Shutter Mode(varies)ND FilterShooting Mode
ColorAWB Mode--Color TempExec WB AExec WB BMaster PedestalBlack Gamma
FocusFocus ModeFocus SpeedFocus LimitFace AFFocus Area--Focus Position

Each page provides a complete set of related controls, making it easy to adjust one aspect of the camera without navigating through menus.

Different pages showing different encoder labels
Same encoders, different functions per page.

Shift Functionality

On the Exposure page, holding Shift reveals:

  • Auto Exposure Shift and Response settings
  • DNR Mode and settings
  • Flicker Reduction
  • Infrared Mode
  • Image Stabilizer controls

This pattern repeats across pages—Shift always provides access to less frequently used but related parameters.

Workflow Example

A typical workflow using this section:

  1. Select the Camera Adjustments section
  2. Navigate to the Exposure page
  3. Adjust primary exposure settings (Iris, Shutter, Gain)
  4. Hold Shift to access DNR or other advanced settings
  5. Navigate to Color page for white balance adjustments
  6. Return to Home page for quick access to common controls

User Section Pattern

Many SKAARHOJ configurations include a User Section—a dedicated area where users can customize their own button assignments.

User Section Variables

User Sections typically include:

  • SEC_UserPage: Controls which page of user buttons is displayed
  • SEC_UserShift: Provides shift functionality for user controls

These variables work the same way as other page and shift variables, but they're specifically designed for user customization.

Customizing User Sections

In a User Section, you can:

  • Assign behaviors to buttons for your specific workflow
  • Organize related controls across multiple pages
  • Use shift for secondary functions you access less frequently

The User Section is intentionally left more open for customization compared to device-specific sections like Camera Adjustments.

User Section example
A User Section in a routing configuration.

Tip

If your configuration has a User Section, this is usually the best place to add custom behaviors. Changes here won't interfere with the device-specific configurations.

Tips for Working with Sections

When to Use Section View

Section View is ideal when you want to:

  • Quickly adjust behaviors in a specific functional area
  • Understand how a particular group of controls works together
  • Make targeted changes without affecting the rest of the configuration

When to Use Tree View

Switch to Tree View when you need to:

  • Create a new section from scratch
  • Modify the section's page or shift variables
  • Understand the underlying layer structure
  • Make changes that span multiple sections

Finding Section Definitions

To see how a section is defined:

  1. Open the Tree View
  2. Look for layers with section configurations (often indicated in the tree)
  3. Select the layer to see its section settings in the inspector

The section's HWC Keys, Page Variable, and Shift Variable are all defined on this layer.

Section definition in tree view
A section layer in the tree and its inspector.

Variable Scope

Remember that Page and Shift Variables follow tree inheritance:

  • They must be defined at or above the section layer
  • Child layers can read and modify these variables
  • This is why section variables are often defined on the same layer as the section configuration

Understanding this scope helps when troubleshooting why a page or shift isn't working as expected.