Skip to content

LRBridge Companion Module v0.4.2

Latest

Choose a tag to compare

@ninoleto ninoleto released this 18 Jul 01:30

Native Bitfocus Companion control for Adobe Lightroom Classic through LRBridge.

Version 0.4.2 adds a complete ready-to-use preset library while retaining the native Companion actions, live Lightroom slider variables, and context-aware feedback introduced in v0.4.1.

LRBridge Companion preset library

What this repository contains

This repository contains the Bitfocus Companion module for LRBridge.

It does not contain LRBridge itself.

LRBridge is a separate Windows application and Adobe Lightroom Classic plugin. LRBridge must run on the same computer as Lightroom Classic.

LRBridge repository: https://github.com/ninoleto/LRBridge

The communication flow is: Bitfocus Companion → LRBridge → Adobe Lightroom Classic

Feedback returns through: Adobe Lightroom Classic → LRBridge → Bitfocus Companion

What this module does

The LRBridge Companion Module lets users control Adobe Lightroom Classic from Bitfocus Companion using buttons, rotary encoders, pages, variables, feedbacks, browser surfaces, and supported hardware controllers.

Typical uses include:

  • Control Lightroom Develop sliders from Companion.
  • Use Loupedeck Live or Razer Stream Controller as a Lightroom controller.
  • Use Elgato Stream Deck buttons for Lightroom controls.
  • Use Companion rotary encoders for Lightroom sliders.
  • Display current Lightroom slider values on Companion buttons.
  • Refresh displayed values when another photo is selected in Lightroom.
  • Run Lightroom actions such as Auto Tone and Auto White Balance.
  • Control Lightroom from another computer over LAN.
  • Build custom Lightroom control pages without relying on keyboard shortcuts.

What is new in v0.4.2

Version 0.4.2 adds a complete preset library for supported Lightroom controls.

For every supported numeric Lightroom slider, the module provides four ready-to-use presets:

  • Rotary control
  • Decrease button
  • Reset button
  • Increase button

Rotary presets are configured so that:

  • Turning left decreases the slider by 1.
  • Turning right increases the slider by 1.
  • Pressing the rotary resets the slider.
  • The current Lightroom slider value is displayed on the button.

Additional preset improvements:

  • Presets are organized into individual sections for each Lightroom control.
  • Short labels are used to fit controls on smaller hardware buttons.
  • Rotary presets use automatic text sizing for longer control names.
  • Neutral slider values use a neutral background.
  • Positive values can display a blue background.
  • Negative values can display a red background.
  • Controls where positive and negative colors could be misleading remain visually neutral.
  • Auto Tone and Auto White Balance show an amber WAIT indication during the LRBridge cooldown period.
  • Preset descriptions include the Companion live-value variable code for users creating custom buttons.

This release also adds command presets for:

  • Lens Profile ON
  • Lens Profile OFF
  • Remove Chromatic Aberration ON
  • Remove Chromatic Aberration OFF

What to download

Normal Companion users should download:

ninoleto-lrbridge-0.4.2.tgz

Do not download the automatically generated Source code zip or Source code tar.gz unless you are a developer and want to build the module manually.

Required software

This module requires:

  • Bitfocus Companion
  • Adobe Lightroom Classic
  • LRBridge v0.5.1 or newer

LRBridge must be installed and running on the same computer as Adobe Lightroom Classic.

Normal user installation

  1. Download ninoleto-lrbridge-0.4.2.tgz from this release.
  2. Open Bitfocus Companion.
  3. Go to the Modules page.
  4. Click Import module package.
  5. Select ninoleto-lrbridge-0.4.2.tgz.
  6. Add a new connection named LRBridge.
  7. Enter the LRBridge host address and ports.

Default LRBridge ports:

  • Command API Port: 17891
  • Feedback / Web Controller Port: 17892

If Import module package is unavailable, Companion must be started with restricted module imports enabled.

Connection host guide

LRBridge must run on the same computer as Adobe Lightroom Classic.

Companion and LRBridge on the same computer

Use:

  • Host: 127.0.0.1
  • Command API Port: 17891
  • Feedback / Web Controller Port: 17892
  • Feedback Timing: Normal, recommended

Companion and LRBridge on different computers

Use the LAN IP address of the computer running LRBridge and Lightroom Classic.

Example setup:

  • Companion runs on a Linux computer.
  • Lightroom Classic and LRBridge run on a Windows computer.
  • The Windows computer has LAN address 192.168.1.55.

Companion connection settings:

  • Host: 192.168.1.55
  • Command API Port: 17891
  • Feedback / Web Controller Port: 17892
  • Feedback Timing: Normal, recommended

Do not use 0.0.0.0 as the Companion connection host.

0.0.0.0 is used by servers to listen on all available network interfaces. Companion should connect to 127.0.0.1, a real LAN address.

Confirmed working

  • Adjust Lightroom slider
  • Reset an individual Lightroom slider
  • Run LRBridge action
  • Auto Tone
  • Auto White Balance
  • Lightroom slider feedback variables
  • Immediate feedback after native Companion slider actions
  • Context-aware feedback refresh after changing photos
  • Ready-to-use rotary presets
  • Ready-to-use decrease, reset, and increase buttons
  • Imported .tgz module installation in Companion
  • Local network control

Current public action list

The module intentionally exposes only three action types:

  • Adjust Lightroom slider
  • Reset Lightroom slider
  • Run LRBridge action

The action list is deliberately kept small so the module remains safe and predictable during real Lightroom editing work.

Live slider feedback

The module provides Companion variables containing current Lightroom slider values.

Examples:

$(LRBridge:slider_exposure)
$(LRBridge:slider_contrast)
$(LRBridge:slider_temperature)
$(LRBridge:slider_tint)
$(LRBridge:slider_highlights)
$(LRBridge:slider_shadows)
$(LRBridge:slider_whites)
$(LRBridge:slider_blacks)
$(LRBridge:slider_texture)
$(LRBridge:slider_clarity)
$(LRBridge:slider_dehaze)
$(LRBridge:slider_vibrance)
$(LRBridge:slider_saturation)

HSL / Color Mixer examples:

$(LRBridge:slider_hueadjustmentred)
$(LRBridge:slider_hueadjustmentorange)
$(LRBridge:slider_hueadjustmentyellow)
$(LRBridge:slider_hueadjustmentgreen)
$(LRBridge:slider_hueadjustmentaqua)
$(LRBridge:slider_hueadjustmentblue)
$(LRBridge:slider_hueadjustmentpurple)
$(LRBridge:slider_hueadjustmentmagenta)

The exact connection prefix depends on the name of the LRBridge connection in Companion.

Use Companion's variable picker to insert the correct variable into a custom button.

Important feedback note

Use the native LRBridge Companion actions and presets when immediate slider feedback is required.

Native actions:

  • Adjust Lightroom slider
  • Reset Lightroom slider
  • Run LRBridge action

Generic HTTP actions can still send commands directly to LRBridge, but this module cannot detect when an unrelated Generic HTTP action is executed.

Because of this, Generic HTTP actions do not trigger the module's immediate feedback refresh.

For the best results, use the native actions and presets included with this module.

Context-aware photo feedback

LRBridge v0.5.1 provides a /context endpoint.

The module checks this endpoint to detect:

  • Selected photo changes
  • Lightroom module changes
  • Develop-state changes

When LRBridge reports a context change, the Companion module performs a one-time refresh of Lightroom slider variables.

This allows Companion, Loupedeck, Stream Deck, Razer Stream Controller, and browser pages to display the correct values after another photo is selected in Lightroom.

Constant background polling of every Lightroom slider remains disabled by default.

Feedback timing

The module provides three feedback timing options:

  • Fast, experimental
  • Normal, recommended
  • Safe, slower

Normal is recommended for most users.

Fast can occasionally read an older Lightroom value on slower computers or large Lightroom catalogs.

Safe waits longer and can be more reliable on slower systems or demanding catalogs.

Lens Profile and Chromatic Aberration limitation

LRBridge v0.5.1 does not provide authoritative feedback for the current state of these Lightroom checkboxes.

The presets therefore send explicit commands:

  • LENS ON sends value 1.
  • LENS OFF sends value -1.
  • CA ON sends value 1.
  • CA OFF sends value -1.

These buttons send commands only. They do not display the current Lightroom checkbox state.

Real checkbox-state feedback may be added in a future LRBridge release.

Intentional limitations

This release intentionally does not include:

  • Reset all sliders
  • Reset slider group
  • Keyboard shortcut sending
  • Direct Lightroom keyboard emulation
  • Operating-system-level Lightroom automation

Reset All and Reset Group are excluded because they can be risky during real Lightroom editing work.

Keyboard shortcuts should be handled separately, for example through Vicreo Hotkey, unless LRBridge later adds a safe Lightroom-specific shortcut system.

The module remains focused on safe Lightroom API control, useful presets, and reliable feedback through LRBridge.

Supported Companion surfaces

The module and presets can be used with:

  • Loupedeck Live
  • Razer Stream Controller
  • Elgato Stream Deck
  • Companion browser surfaces
  • Other Companion-compatible buttons and rotary encoders

The exact layout and visual appearance depend on the capabilities and button size of the selected Companion surface.

Technical summary for developers and AI assistants

Repository purpose:

  • This repository is a Bitfocus Companion module.
  • It is not the LRBridge desktop application.
  • It does not communicate directly with the Adobe Lightroom SDK.
  • It communicates with LRBridge through local HTTP APIs.
  • LRBridge communicates with Lightroom Classic through its Lightroom plugin.
  • Command traffic uses port 17891 by default.
  • Feedback and Web Controller traffic use port 17892 by default.
  • LRBridge remains the source of truth for Lightroom behavior and slider values.

The intended public action list should remain focused on:

  • Adjust one slider
  • Reset one slider
  • Run one LRBridge action

Do not add Reset All, Reset Group, keyboard emulation, or unrelated operating-system automation without a clear design and safety reason.

When adding new Lightroom controls, update the action choices, variables, feedback handling, presets, and documentation together.

Keywords

Adobe Lightroom Classic control surface
Bitfocus Companion Lightroom module
LRBridge Companion module
Loupedeck Lightroom controller
Razer Stream Controller Lightroom
Stream Deck Lightroom control
Lightroom rotary encoder control
Lightroom slider feedback
Lightroom HTTP API
Lightroom remote control
Lightroom automation
Lightroom Classic external controller

Status

v0.4.2 stable release for LRBridge v0.5.1 or newer.