Skip to content

Internal Inputs⚓︎

The JNIORs have optically isolated inputs. You can find out a lot more about the inputs on our website. The main thing to know about the inputs is that they need to detect greater than about 2 volts to go high, and drop less then 1 volt to go low. The different models have a different number of inputs.

The 410 has 8 inputs while the 412 and 412 DMX have only 4 inputs and the 414 has 12 inputs.

Get Input State by Channel⚓︎

Since: Version 26.0.0 - May ##, 2026

Authentication Level: Any

Possible Status Returns: INVALID_UUID, NOT_CONNECTED, INVALID_CHANNEL, OK

Getting the state of states mask in c++ differs from the other languages. Other languages use exceptions to handle code flow when certain error arise. C++ uses a return as a status so the value must be returned a different way.

1
    coming soon...

There are several different errors that could occur when getting the input state or input states mask. C# will throw exceptions if these errors occur.

1
2
3
4
// Example that returns input 1's state
// Referencing inputs using this call is zero based
// Returns 0 for off, and 1 for on
var inputOneState = _jmpConnection.GetInputState(0);

There are several different errors that could occur when getting the input state or input states mask. Java will throw exceptions if these errors occur.

1
2
3
4
// Example that returns input 1's state
// Referencing inputs using this call is zero based
// Returns 0 for off, and 1 for on
int inputOneState = jmpConnection.getInputState(0);

There are several different errors that could occur when getting the input state or input states mask. Python will throw exceptions if these errors occur.

1
2
3
4
# Example that returns input 1's state
# Referencing inputs using this call is zero based
# Returns 0 for off, and 1 for on
inputState = jmp_connection.get_input_state(0)

Get Inputs States Mask⚓︎

Since: Version 26.0.0 - May ##, 2026

Authentication Level: Any

Possible Status Returns: INVALID_UUID, NOT_CONNECTED, OK

Getting the state of states mask in c++ differs from the other languages. Other languages use exceptions to handle code flow when certain error arise. C++ uses a return as a status so the value must be returned a different way.

1
    coming soon...

There are several different errors that could occur when getting the input state or input states mask. C# will throw exceptions if these errors occur.

1
2
// Example that returns all input states as a channel mask
var inputStates = _jmpConnection.GetInputStates();

There are several different errors that could occur when getting the input state or input states mask. Java will throw exceptions if these errors occur.

1
2
// Example that returns all input states as a channel mask
int inputStates = jmpConnection.getInputStates();

There are several different errors that could occur when getting the input state or input states mask. Python will throw exceptions if these errors occur.

1
2
# Example that returns all input states as a channel mask
inputStates = jmp_connection.get_input_states()

Latching⚓︎

Version 26.0.0 - May ##, 2026

An inputs state may be latched. This means that it will be held HIGH until it is cleared. Clearing an input latch can be done based on an amount of time or manually.

1
    coming soon...
1
    coming soon...
1
    coming soon...
1
    coming soon...

Counter⚓︎

Version 26.0.0 - May ##, 2026

The inputs can act as a counter. The JNIOR can accuratly process up to 1.8K rising edger per second. You can get the couter value or reset it to zero.

1
    coming soon...
1
2
3
4
5
6
7
// Example that returns input 1's counter value
// Referencing inputs using this call is zero based
var inputOneCounter = jmpConnection.GetInputCounter(0);

// Example that resets input 1's counter value
// Referencing inputs using this call is zero based
_jmp_connection.ResetInputCounter(0)
1
2
3
4
5
6
7
// Example that returns input 1's counter value
// Referencing inputs using this call is zero based
int inputOneCounter = jmpConnection.getInputCounter(0);

// Example that resets input 1's counter value
// Referencing inputs using this call is zero based
jmp_connection.resetInputCounter(0)
1
2
3
4
5
6
7
# Example that returns input 1's counter value
# Referencing inputs using this call is zero based
inputCounter = jmp_connection.get_counter(0)

# Example that resets input 1's counter value
# Referencing inputs using this call is zero based
jmp_connection.reset_counter(0)

Usage Meter⚓︎

Version 26.0.0 - May ##, 2026

Each input keeps track of how long it has been active. You can get the usage meter or reset it.

1
    coming soon...
1
2
3
4
5
6
7
// Example that returns input 1's usage meter value
// Referencing inputs using this call is zero based
var inputOneCounter = _jmpConnection.GetInputUsageMeter(0);

// Example that resets input 1's usage meter value
// Referencing inputs using this call is zero based
_jmpConnection.ResetInputUsageMeter(0);
1
2
3
4
5
6
7
// Example that returns input 1's usage meter value
// Referencing inputs using this call is zero based
int inputOneCounter = jmpConnection.getInputUsageMeter(0);

// Example that resets input 1's usage meter value
// Referencing inputs using this call is zero based
jmpConnection.resetInputUsageMeter(0);
1
2
3
4
5
6
7
# Example that returns input 1's usage meter
# Referencing inputs using this call is zero based
inputCounter = jmp_connection.get_usage_meter(0)

# Example that resets input 1's usage meter
# Referencing inputs using this call is zero based
jmp_connection.reset_usage_meter(0)

Inversion⚓︎

Version 26.0.0 - May ##, 2026

The state of the input normally tracks the state of the electrical signal wired to the input. You can "invert" the input if you want to state to represet the opposite of the electrical signal state. Most software is written to trigger when the state goes HIGH. So if you want to trigger when the electical signal goes away, or LOW, inversion is needed.

Inversion is also great for testing.

1
    coming soon...
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
// Example that returns the inversion state of input 1
// Referencing inputs using this call is zero based
// Returns 0 for off, and 1 for on
var inputOneCounter = _jmpConnection.IsInverted(0);

// Example that sets input 1's inversion state
// Referencing inputs using this call is zero based
// first parameter is the input, second parameter turns 
// inversion on/off
_jmpConnection.SetInversion(0, true);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
// Example that returns the inversion state of input 1
// Referencing inputs using this call is zero based
// Returns 0 for off, and 1 for on
int inputOneCounter = jmpConnection.isInverted(0);

// Example that sets input 1's inversion state
// Referencing inputs using this call is zero based
// first parameter is the input, second parameter turns 
// inversion on/off
jmpConnection.setInversion(0, true);
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
# Example that returns the inversion state of input 1
# Referencing inputs using this call is zero based
# Returns 0 for off, and 1 for on
inputCounter = jmp_connection.is_inverted(0)

# Example that sets input 1's inversion state
# Referencing inputs using this call is zero based
# first parameter is the input, second parameter turns 
# inversion on/off
jmp_connection.set_inversion(0, true)
dsgf