PepperDash.Essentials.Plugins.Lutron.Quantum 3.0.0

dotnet add package PepperDash.Essentials.Plugins.Lutron.Quantum --version 3.0.0
                    
NuGet\Install-Package PepperDash.Essentials.Plugins.Lutron.Quantum -Version 3.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="PepperDash.Essentials.Plugins.Lutron.Quantum" Version="3.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="PepperDash.Essentials.Plugins.Lutron.Quantum" Version="3.0.0" />
                    
Directory.Packages.props
<PackageReference Include="PepperDash.Essentials.Plugins.Lutron.Quantum" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add PepperDash.Essentials.Plugins.Lutron.Quantum --version 3.0.0
                    
#r "nuget: PepperDash.Essentials.Plugins.Lutron.Quantum, 3.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package PepperDash.Essentials.Plugins.Lutron.Quantum@3.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=PepperDash.Essentials.Plugins.Lutron.Quantum&version=3.0.0
                    
Install as a Cake Addin
#tool nuget:?package=PepperDash.Essentials.Plugins.Lutron.Quantum&version=3.0.0
                    
Install as a Cake Tool

Essentials Lutron Quantum Plugin

Device Config

Lutron Quantum

{
    "key": "lights1",
	"name": "Lutron QS",
	"type": "lutronQuantum",
	"group": "plugin",
	"properties": {
		"control": {
			"method": "com",
			"controlPortDevKey": "processor",
			"controlPortNumber": 1,
			"comParams": {
				"protocol": "RS232",
				"baudRate": 115200,
				"dataBits": 8,
				"parity": "None",
				"stopBits": 1,
				"softwareHandshake": "None",
				"hardwareHandshake": "None"
			},
			"tcpSshProperties": {
				"address": "",
				"port": 23,
				"username": "",
				"password": "",
				"autoReconnect": true,
				"autoReconnectIntervalMs": 10000
			}
		},
		"username": "admin",
		"password": "lutron",
		"integrationId": "1",
		"shadeGroup1Id": "11",
		"shadeGroup2Id": "12",
		"scenes": [
			{
				"name": "Lights Full",
				"id": 1
			},
			{
				"name": "Lights Med",
				"id": 2
			},
			{
				"name": "Lights Low",
				"id": 3
			},
			{
				"name": "Lights Off",
				"id": 0
			}
		]
	}
}       

Lutron QSE-IO

{
	"key": "qse-io1",
	"name": "Lutron QSE-IO",
	"type": "lutronQseIo",
	"group": "plugin",
	"properties": {
		"lightingDeviceKey": "lights1",
		"integrationId": "21"
	}
}

Bridge

{
	"key": "plugin-bridge",
	"uid": 11,
	"name": "Plugin Bridge",
	"group": "api",
	"type": "eiscApiAdvanced",
	"properties": {
		"control": {
			"tcpSshProperties": {
				"address": "127.0.0.2",
				"port": 0
			},
			"ipid": "A1",
			"method": "ipidTcp"
		},
		"devices": [
			{
				"deviceKey": "lights1",
				"joinStart": 1
			},
			{
				"deviceKey": "qse-io1",
				"joinStart": 71
			}

		]
	}
}

Lutron NWK Login Usage (nwk vs nwk2)

For all integrations with the Lutron QSE-CI-NWK-E, the nwk login should be used instead of nwk2.

Reason

The nwk user automatically terminates any existing session using the same login when a new connection is established. This behavior allows the system to recover from stale or orphaned sessions without requiring a reboot.

In contrast:

  • The nwk2 user does not reliably replace existing sessions, which can lead to persistent "login: connection in use" errors if a previous session was not properly closed.

Important Note (Passphrase Prompt)

On first-time setup, logging in with either nwk or nwk2 may trigger a prompt to set a passphrase. The integration must handle this prompt correctly (e.g., respond "no" if not using a passphrase), otherwise the login process will remain incomplete and can lead to stuck sessions.

Conclusion

Standardizing on nwk ensures more reliable connection handling and prevents lockout conditions caused by stale Telnet sessions, provided the initial passphrase prompt is handled correctly.

Join Map

Lutron Quantum Lighting BridgeJoinMap

Digitals
Join Number Join Span Description Type Capabilities
1 1 Lighting Controller Online Digital ToSIMPL
1 1 Lighting Controller Select Scene By Index Digital FromSIMPL
2 1 Raise lighting level Digital FromSIMPL
3 1 Raise lighting level Digital FromSIMPL
11 10 Lighting Controller Select Scene DigitalSerial ToFromSIMPL
41 10 Lighting Controller Button Visibility Digital ToSIMPL
61 1 Raise Shade Group 1 Digital FromSIMPL
62 1 Lower Shade Group 1 Digital FromSIMPL
63 1 Raise Shade Group 2 Digital FromSIMPL
64 1 Lower Shade Group 2 Digital FromSIMPL
Analogs
Join Number Join Span Description Type Capabilities
1 1 Device communication monitor status feedback Analog ToSIMPL
2 1 Device socket status feedback Analog ToSIMPL
Serials
Join Number Join Span Description Type Capabilities
1 1 Device Name Serial ToSIMPL
1 1 Lighting Controller Set Integration Id Serial FromSIMPL
2 1 Sets the Shade Group 1 ID Serial FromSIMPL
3 1 Sets the Shade Group 2 ID Serial FromSIMPL
4 1 Command Passthru Serial ToFromSIMPL
11 10 Lighting Controller Select Scene DigitalSerial ToFromSIMPL

Lutron QSE-IO BridgeJoinMap

Digitals
Join Number Join Span Description Type Capabilities
1 5 Contact closure feedback Digital ToSIMPL
Analogs
Join Number Join Span Description Type Capabilities
Serials
Join Number Join Span Description Type Capabilities
1 1 Device Name Serial ToSIMPL

DEVJSON Commands

devjson:1 {"deviceKey":"lights1", "methodName":"PrintScenes", "params":[]}
devjson:1 {"deviceKey":"lights1", "methodName":"SelectScene", "params":[1]}
devjson:1 {"deviceKey":"lights1", "methodName":"MasterRaise", "params":[]}
devjson:1 {"deviceKey":"lights1", "methodName":"MasterLower", "params":[]}
devjson:1 {"deviceKey":"lights1", "methodName":"MasterRaiseLowerStop", "params":[]}
devjson:1 {"deviceKey":"lights1", "methodName":"ShadeGroupRaise", "params":[1]}
devjson:1 {"deviceKey":"lights1", "methodName":"ShadeGroupLower", "params":[1]}

devjson:1 {"deviceKey":"lights1", "methodName":"ResetDebugLevels", "params":[]}
devjson:1 {"deviceKey":"lights1", "methodName":"SetDebugLevels", "params":[2]}
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.0.0 40 9/17/2026
3.0.0-feature-v3-migration.3 43 9/16/2026
3.0.0-feature-v3-migration.2 41 9/16/2026
3.0.0-feature-v3-migration.1 44 9/16/2026