Absolute values for encoders?

The Kilowhat manual says something about encoders being able to use absolute or relative values. How do absolute values work with the endless encoders? So if I set an encoder to send, CC16, and then I grab it and turn it slightly, how will it decide what value to send for that CC?

Hello @mike!

The idea for absolute values, is that you have a customizable range (you can set MIN and MAX values) for each message, normally set to 0-127. For endless encoders then you have this range to work with and when you reach MIN or MAX it just stops sending messages. You can also invert this range inverting MIN and MAX values.

For relative operation, we’re thinking about letting users set LEFT and RIGHT messages, so each encoder pulse would send this messages you define. For example, you define LEFT message to be CC16 with value 5, so every pulse to the LEFT will send the same message, endlessly, and same to the RIGHT.

Hope this clarifies your doubts!

So does the controller remember what value was last sent for that encoder, and pick up from there if you grab it and turn it again?

Absolutely :laughing:! In the absolute mode it’ll be like you say

Not only that, also if you have different banks, each bank will remember its own value, and if you set the feedback messages appropiately, each encoder will update its value with every message that matches its configuration, even if the corresponding bank is not in focus.

Let’s say you have an encoder set to send and receive message CC6 - CH2 on bank 1 and CC6 - CH3 on bank 2.

If you have bank 1 in focus and you receive a CC6 - CH3 message with value 127, when you go to bank 2, you will see the encoder updated correspondingly.

Hope the explanation was clear!

1 Like

very clear, thanks. that sounds great! I might have to replace the pots in a design :slight_smile:

1 Like

a little update on the matter:
this are encoder modes that will be available in the first version:

0 - Absolute (MIN - MAX)
1 - Binary Offset (positive 065 - 127 / negative 063 - 000)
2- 2’s Complement (positive 001 - 064 / negative 127 - 065)
3 - Signed Bit (positive 065 - 127 / negative 001 - 063)
4 - Signed Bit 2 (positive 001 - 063 / negative 065 - 127)
5 - Single Value (increment 096 / decrement 097)

1 Like