Dewb / monome-rack

VCV Rack plugin for monome Eurorack modules
GNU General Public License v2.0
227 stars 13 forks source link

faderbank does not read 14bit data correctly. #195

Open jpnielsen opened 8 months ago

jpnielsen commented 8 months ago

I compiled and flashed your 14bitCC branch 16n_faderbank_firmware.ino , and it works fine with the "VCV MIDI CC > CV" module, when "14 bit CC 0-31/32-63" is chosen in the module right-click-menu. yay! thanks! 👍

However, "faderbank" seems to swap high7bit and low7bit ? when i move a fader from 0 to 10, the virtual fader moves 0-10, 0-10, 0-10 . . . 127 times.

image

Dewb commented 8 months ago

14-bit faderbank support hasn't been released yet. I hope to get it into the next update of monome-rack! But right now the faderbank 14-bit firmware is an experiment, need to discuss with the maintainers about making it official, and ideally that would happen before the VCV Rack support is finalized. But I might put it out as a beta feature without waiting.

The behavior you're observing is the expected behavior of a non-14-bit-aware receiver listening to the LSB CC, I'm afraid.

If you want to help test, and you're willing to build monome-rack yourself, prototype 14-bit support is in the feat/14bit-fb branch.

jpnielsen commented 8 months ago

I built 2.2.7 feat/14bit-fb. But it's behaving like before. (VCV Midi CC > CV is set to 14bit mode).

very small move physical fader 1 can move virtual fader to top. image

physical fader 1 moved to top. image

(MSB/LSB swapped?)

Dewb commented 1 week ago

Hi @jpnielsen, what's probably happening here is that the module is still listening to CCs 32-63 in the default configuration, so it's only seeing the LSBs. You need to also pick the 16n under "MIDI output" and then run "Autodetect 16n configuration" so the module knows what CCs to listen to.

Apologies that this isn't more obvious. The next update to this prerelease branch will expand the configuration options to make it clearer what the module is listening for (and allow you to modify the 16n config via sysex, not just receive it.)