Skip to content

Internal Outputs⚓︎

The JNIORs have outputs isolated from one another. You can find out a lot more about the inputs on our website. The main thing to know about the outputs is that they are dry contact and need an external power source to provide power. Each internal output can handle between 5-30volts. The different models have a different number of inputs.

The 410 has 8 outputs, the 412 and 412 DMX have 12 outputs, and the 414 has only 4 outputs.

Get Output States⚓︎

Since: Version 26.0.0 - May ##, 2026

Authentication Level: Any

There are two options when it comes to getting the JNIOR's output states. You can get the state of a specific channel or you can get the states of all the channels at once.

1
    coming soon...
1
2
3
4
5
6
7
// Example that returns output 1's state
// Referencing outputs using this call is zero based
// Returns 0 for off, and 1 for on
var outputState = _jmpConnection.GetOutputState(0);

// Example that returns all output states as a state mask
var outputStates = _jmpConnection.GetOutputStates();
1
2
3
4
5
6
7
// Example that returns output 1's state
// Referencing outputs using this call is zero based
// Returns 0 for off, and 1 for on
int outputOneState = jmpConnection.getOutputState(0);

// Example that returns all output states as a state mask
int outputStates = jmpConnection.getOutputStates();
1
2
3
4
5
6
7
# Example that returns output 1's state
# Referencing outputs using this call is zero based
# Returns 0 for off, and 1 for on
outputState = jmp_connection.get_output_state(0)

# Example that returns all output states as a state mask
outputStates = jmp_connection.get_output_states()

Usage Meter⚓︎

Since: Version 26.0.0 - May ##, 2026

Authentication Level: Administrator

1
    coming soon...
1
2
3
4
5
6
// Example that returns output 1's usage meter value
// Referencing outputs using this call is zero based
var outputUsageMeter = _jmpConnection.GetOutputUsageMeter(0);

// Example that returns output 1's usage meter value to zero
_jmpConnection.ResetOutputUsageMeter(0);
1
2
3
4
5
6
// Example that returns output 1's usage meter value
// Referencing outputs using this call is zero based
int outputUsageMeter = jmpConnection.getOutputUsageMeter(0);

// Example that returns output 1's usage meter value to zero
jmpConnection.resetOutputUsageMeter(0);
1
2
3
4
5
6
# Example that returns output 1's usage meter value
# Referencing outputs using this call is zero based
outputUsageMeter = jmp_connection.get_output_usage_meter(0)

# Example that resets ouput 1's usage mteter value to zero
jmp_connection.reset_output_usage_meter(0)

General Output Control⚓︎

Since: Version 26.0.0 - May ##, 2026

Authentication Level: Administrator

This is a generalized way to control outputs. It allows you to choose the command you wish to perform on the output in the function call.

You must be logged in as a USER or ADMINISTRATOR to control the outputs.

1
    coming soon...
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
// Example that sets output 1's state on
// Referencing outputs using this call is zero based
// First parameter is the command to perform, Second is the 
// output you are controlling
// 
// Commands are (Close, Open, Close Pulse, Close Open, Toggle)
_jmpConnection.ControlOutput("Close", 0);

// Example that sets all outputs on
//
// First parameter is the state mask, and defines which 
// outputs to control, Second parameter is the channel mask
// that defines which of those outputs get activated 
_jmpConnection.SetOutputs(0xff, 0xff);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
// Example that sets output 1's state on
// Referencing outputs using this call is zero based
// First parameter is the command to perform, Second is the 
// output you are controlling
// 
// Commands are (Close, Open, Close Pulse, Close Open, Toggle)
jmpConnection.controlOutput("close", 0);

// Example that sets outputs 1 - 4 on
//
// First parameter is the state mask, and defines which 
// outputs to control, Second parameter is the channel mask
// that defines which of those outputs get activated 
jmpConnection.setOutputs(15, 15);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# Example that sets output 1's state on
# Referencing outputs using this call is zero based
# First parameter is the command to perform, Second is the 
# output you are controlling
# 
# Commands are (Close, Open, Close Pulse, Close Open, Toggle)
jmp_connection.control_output("Close", 0)

# Example that sets outputs 1 - 4 on
#
# First parameter is the state mask, and defines which 
# outputs to control, Second parameter is the channel mask
# that defines which of those outputs get activated 
jmp_connection.set_outputs(15, 15)

Close, Open, Toggle⚓︎

Since: Version 26.0.0 - May ##, 2026

Authentication Level: Administrator

These control commands are more specific. You specify the Open, Close, and Toggle command you wish to perform as part of the function call.

1
    coming soon...
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
// Example that sets output 1's state on
// Referencing outputs using this call is zero based
_jmpConnection.CloseOutput(0);

// Example that sets output 1's state off
// Referencing outputs using this call is zero based
_jmpConnection.OpenOutput(0);

// Example that sets output 1's state opposite of what it currently is
// Referencing outputs using this call is zero based
_jmpConnection.ToggleOutput(0);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
// Example that sets output 1's state on
// Referencing outputs using this call is zero based
jmpConnection.closeOutput(0);

// Example that sets output 1's state off
// Referencing outputs using this call is zero based
jmpConnection.openOutput(0);

// Example that sets output 1's state opposite of what it currently is
// Referencing outputs using this call is zero based
jmpConnection.toggleOutput(0);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# Example that closes output 1's state
# Referencing outputs using this call is zero based
jmp_connection.close_output(0)

# Example that opens output 1's state
# Referencing outputs using this call is zero based
jmp_connection.open_output(0)

# Example that sets output 1's state opposite of what it currently is
# Referencing outputs using this call is zero based
jmp_connection.toggle_output(0)

General Control with Pulsing⚓︎

Since: Version 26.0.0 - May ##, 2026

Authentication Level: Administrator

This is similar to the generalized way to control outputs mentioned previously, but with the ability to specify a duration for the command in milliseconds. It allows you to choose the command you wish to perform on the output in the function call.

1
    coming soon...
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
// Example that sets output 1's state on for 3 seconds
// Referencing outputs using this call is zero based
//
// First parameter is the command to perform, Second is the 
// output you are controlling, Third is the duration in milliseconds
// 
// Commands are (Close, Open, Toggle)
_jmpConnection.PulseOutput("close", 0, 3000);

// Example that sets all outputs on for 3 seconds
//
// First parameter is the state mask, and defines which 
// outputs to control, Second parameter is the channel mask
// that defines which of those outputs get activated, 
// Third is the duration in milliseconds
_jmpConnection.PulseOutputs(0xff, 0xff, 3000);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
// Example that sets output 1's state on for 3 seconds
// Referencing outputs using this call is zero based
//
// First parameter is the command to perform, Second is the 
// output you are controlling, Third is the duration in milliseconds
// 
// Commands are (Close, Open, Toggle)
jmpConnection.pulseOutput("close", 0, 3000);

// Example that sets outputs 1 - 4 on for 3 seconds
//
// First parameter is the state mask, and defines which 
// outputs to control, Second parameter is the channel mask
// that defines which of those outputs get activated, 
// Third is the duration in milliseconds
jmpConnection.pulseOutputs(15, 15, 3000);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
# Example that sets output 1's state on for 3 seconds
# Referencing outputs using this call is zero based
#
# First parameter is the command to perform, Second is the 
# output you are controlling, Third is the duration in milliseconds
# 
# Commands are (Close, Open, Toggle)
jmp_connection.pulse_output("Close", 0, 3000)

# Example that sets outputs 1 - 4 on for 3 seconds
#
# First parameter is the state mask, and defines which 
# outputs to control, Second parameter is the channel mask
# that defines which of those outputs get activated, 
# Third is the duration in milliseconds
jmp_connection.pulse_output(15,15, 3000)

Close, Open, and Toggle Pulse⚓︎

Since: Version 26.0.0 - May ##, 2026

Authentication Level: Administrator

These are specific commands for controlling outputs with the ability to specify how long they last in milliseconds. You specify the Close, Open, or Toggle command you wish to perform as part of the function call.

1
    coming soon...
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
// Example that sets output 1's state on for 3 seconds
// Referencing outputs using this call is zero based
//
// First parameter is the output to pulse closed, Second is the 
// duration in milliseconds
_jmpConnection.ClosePulseOutput(0, 3000);

// Example that sets output 1's state off for 3 seconds
// Referencing outputs using this call is zero based
//
// First parameter is the output to pulse open, Second is the 
// duration in milliseconds
_jmpConnection.OpenPulseOutput(0, 3000);

// Example that sets output 1's state opposite of its current state 
// for 3 seconds
// Referencing outputs using this call is zero based
//
// First parameter is the output to pulse toggle, Second is the 
// duration in milliseconds
_jmpConnection.TogglePulseOutput(0, 3000);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
// Example that sets output 1's state on for 3 seconds
// Referencing outputs using this call is zero based
//
// First parameter is the output to pulse closed, Second is the 
// duration in milliseconds
jmpConnection.closePulseOutput(0, 3000);

// Example that sets output 1's state off for 3 seconds
// Referencing outputs using this call is zero based
//
// First parameter is the output to pulse open, Second is the 
// duration in milliseconds
jmpConnection.openPulseOutput(0, 3000);

// Example that sets output 1's state opposite of its current state 
// for 3 seconds
// Referencing outputs using this call is zero based
//
// First parameter is the output to pulse toggle, Second is the 
// duration in milliseconds
jmpConnection.togglePulseOutput(0, 3000);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
# Example that sets output 1's state on for 3 seconds
# Referencing outputs using this call is zero based
#
# First parameter is the output to pulse closed, Second is the 
# duration in milliseconds
jmp_connection.close_pulse_output(0, 3000)

# Example that sets output 1's state off for 3 seconds
# Referencing outputs using this call is zero based
#
# First parameter is the output to pulse open, Second is the 
# duration in milliseconds
jmp_connection.open_pulse_output(0, 3000)

# Example that sets output 1's state opposite of its current state 
# for 3 seconds
# Referencing outputs using this call is zero based
#
# First parameter is the output to pulse toggle, Second is the 
# duration in milliseconds
jmpConnection.toggle_pulse_output(0, 3000)
dsgf