Error: MSB Sysex is 8bit value

Home Forums General Programming Error: MSB Sysex is 8bit value

Tagged: 

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #22869
    wikter
    Participant
    • Topics: 5
    • Replies: 49
    • Total: 54

    Well… we’ve got a problem for the tuning parameters in Sysex…
    R3 sends a “polarity” value whe it reaches 0 and starts the negative values:
    00 -1 = FF
    FF in not be the value expected from a 7bit (00-7f) parameter.
    Should be:
    00 -1 = 7F

    RAW:[f0 42 30 7d 41 11 00 14 00 02 00 f7]
    RAW:[f0 42 30 7d 41 11 00 14 00 01 00 f7]
    RAW:[f0 42 30 7d 41 11 00 14 00 00 00 f7]
    RAW:[f0 42 30 7d 41 11 00 14 00 7f 7f f7]
    RAW:[f0 42 30 7d 41 11 00 14 00 7e 7f f7]
    RAW:[f0 42 30 7d 41 11 00 14 00 7d 7f f7]

    On CTRLR I’ve used LSB/MSB but the output of MSB becomes 8bit!!! And sometimes it makes data disappear when it’s substracted…

    RAW:[f0 ** ** ** ** ** ** ** ** LSB MSB f7]
    RAW:[f0 42 30 7d 41 11 00 15 00 03 00 f7]
    RAW:[f0 42 30 7d 41 11 00 15 00 02 00 f7]
    RAW:[f0 42 30 7d 41 11 00 15 00 01 00 f7]
    RAW:[f0 42 30 7d 41 11 00 15 00 00 00 f7]
    RAW:[f0 42 30 7d 41 11 00 15 00 7f ff f7]
    RAW:[f0 42 30 7d 24 f7]
    RAW:[f0 42 30 7d 41 11 00 15 00 7e ff f7]

    MVXSynths
    R3 / MOX6 / Electribe2 / Electribe R MkII / Electribe MX / K4R / BCR2000 / XStation61 / XStation25 / Virus Rack / Chameleon / Proteus 2500 / RM1X / KN2600

    #22898
    wikter
    Participant
    • Topics: 5
    • Replies: 49
    • Total: 54

    Well, i’ve found a workaround for this rare bug.
    I Use these functions to correct the values exchanged between hardware/Ctrlr.

    lt (modulatorValue, 0, 16384 – (abs(modulatorValue)), modulatorValue)

    lt (midiValue, 128, midiValue, midiValue – 16384)
    or
    lt (midiValue, 128, midiValue, midiValue/2)

    Anyway, it’d be great to know that MSB is 7bits and has a range of 00-7f, instead of the 00-ff 8bit range.

    MVXSynths
    R3 / MOX6 / Electribe2 / Electribe R MkII / Electribe MX / K4R / BCR2000 / XStation61 / XStation25 / Virus Rack / Chameleon / Proteus 2500 / RM1X / KN2600

    #22905
    atom
    Keymaster
    • Topics: 159
    • Replies: 2945
    • Total: 3104
    • ★★★★★

    In the MIDI world everything is 7bits, those MSB/LSB parts are always 7bits and create a 14bit value as per the MIDI specification.

    There are some devices that use 8bit values, but those are always split into 2 MIDI bytes. Usually one is 7bit and one is 1bit. Sometimes (like the DSI Evolver) those are split into 2 4bit MIDI bytes (there is a special SysEx token for this ls/ms 4bit split and LS/MS 7bit split)

    #22919
    wikter
    Participant
    • Topics: 5
    • Replies: 49
    • Total: 54

    Yes, 7 bits. The problem is that msb is 8 bits and lsb 7bits.
    Msb range is 00-ff
    Lsb range is 00-7f
    There are workarounds to avoid those 7f-ff values but a correction in the range of msb values would help to make things easier.

    MVXSynths
    R3 / MOX6 / Electribe2 / Electribe R MkII / Electribe MX / K4R / BCR2000 / XStation61 / XStation25 / Virus Rack / Chameleon / Proteus 2500 / RM1X / KN2600

Viewing 4 posts - 1 through 4 (of 4 total)
  • The forum ‘Programming’ is closed to new topics and replies.
There is currently 0 users and 59 guests online
No users are currently active
Forum Statistics
Threads: 2,495, Posts: 17,374, Members: 77,605
Most users ever online was 12 on January 22, 2019 3:47 pm
Ctrlr