Posts by benvigil


    Few quick questions about the NRPNs you are sending:

    • For Play, why are you sending the 0x00 (release) first and the 0x01 (press) second? shouldn't it be the other way around?
    • What is the functional difference between issuing the play sequence (0x5D) vs Trigger (0x5A)? Don't they do the same thing?
    • For Undo, the script is the sending the same value (0x5D 0x01) as for play. Is that correct?
    • Everything from 0x58 thru 0x5E used except for a gap at 0x59... any ideas what that might do, if anything?

    Thanks!

    In the MIDI docs, page 11, section "Single Parameter Change". The example is to change the Delay Volume, and you send the following SysEx:


    F0 00 20 33 02 7f 01 00 4A 04 40 00 F7


    Breaking it down...
    F0 00 20 33 02 7f (SysEx header)
    01 (function -- i.e. single parameter change)
    00 (ignore)
    4A 04 (NRPN indicating the parameter to change)
    40 00 (NRPN indicating the new value)
    F7 (end SysEx)


    About the NRPNs above.... let's convert the first one... hex to decimal.
    4A = 74
    04 = 4
    NRPN == (74 x 128) + 4 == 9476


    9476 matches the example in the documentation.


    Above, the #74 means "Address Page 74", which is for the delay (SEE page 9)
    On that same page, Delay Volume is #4.... SOOOO the delay volume is at NRPN 4A 04 (9476). Whew.


    The value to change it to is the second NRPN (40 00), which is 8192, or 50% of the max of 16384.


    So, for example, Reverb Time, would be at address page 75, #6
    Which is HEX (4B 06), or decimal 9606.


    To change it to 50% you would send the SysEx:
    F0 00 20 33 02 7f 01 00 4B 06 40 00 F7


    Etc.

    I'am sure that it could be more detailed with real example and explained in order that Newbie people in NRPN sysex could be able to program a button theirselves...


    Certainly no offense meant, but NPRN/SysEx communication isn't for newbies. Once you get used to thinking in HEX, the document starts to make sense. But unfortunately, reading the document is a skill unto itself.


    And there's no easy way to teach you how to "program a button" because every controller does it differently and the vast majority of them do not support NRPN or SysEx for their buttons.

    UNDO:
    0xB0,0x63,0x7D,0xB0,0x62,0x5D,0xB0,0x06,0x00,0xB0,0x26,0x01
    STOP/ERASE:
    0xB0,0x63,0x7D,0xB0,0x62,0x5E,0xB0,0x06,0x00,0xB0,0x26,0x01
    0xB0,0x63,0x7D,0xB0,0x62,0x5E,0xB0,0x06,0x00,0xB0,0x26,0x00


    Okay so written a different way...


    RECORD: NRPN #16088 / 1
    $B0 $63 $7D (125)
    $B0 $62 $58 (88)
    $B0 $06 $00 (0)
    $B0 $26 $01 (1)


    STOP RECORDING & PLAY: NRPN #16088 / 0
    $B0 $63 $7D (125)
    $B0 $62 $58 (88)
    $B0 $06 $00 (0)
    $B0 $26 $00 (0)


    UNDO: NRPN #16093 / 1
    $B0 $63 $7D (125)
    $B0 $62 $5D (93)
    $B0 $06 $00 (0)
    $B0 $26 $01 (1)


    STOP/ERASE: NRPN #16094 / 1
    $B0 $63 $7D (125)
    $B0 $62 $5E (94)
    $B0 $06 $00 (0)
    $B0 $26 $01 (1)


    STOP/ERASE: NRPN #16094 / 0
    $B0 $63 $7D (125)
    $B0 $62 $5E (94)
    $B0 $06 $00 (0)
    $B0 $26 $00 (0)

    No, it is not the same. Control change numbers are used to toggle things on and off. Continous controller cover a range from 0-127, for example to control volume via CC#7.


    Program Change (PC) is different but Control Change and Continuous Controller (CC) ARE the same message types, just different use cases. You could use CC messages for on/off messages or for things like a volume or wah sweeping.


    Regular 7bit CC can be between 0 and 127. Typically, 0 is used for OFF and everything else is considered ON (typically 1, or 127). Kemper uses 1 for ON officially, but will treat anything greater than 1 to be ON.

    I think MIDI activation of the Looper function is a good idea but I can see that the CAT 5 solution is going to be tighter timing wise.


    Tighter yes, but we are talking fractions of a millisecond here.


    DIN MIDI is 31.5 kbits/sec and CC messages are 3 bytes long (if I recall correctly) and have to be sent and received serially before the message content can be registered at the receiving end. Even if there were no other latency in registering the button press in the remote or buffering of the incoming data at the Kemper end, those 24 bits are going to take a bit less than 1 msec to convey a message to the KPA. Realistically - the delay between button click and action in the KPA is more likely to be more than double that so, for accurate timing, it seems far from ideal. Even 100 Mbit ethernet is of the order of1000 times faster.


    Even at quadruple that (4ms), it's imperceptible.


    A super-sensitive user doesn't notice latency until it reaches 25-30 msec, and most people don't even notice a 50ms latency. Hell, the hardware debounce circuitry in any device with switches is going to take AT LEAST 5ms (average is closer to 10-20ms) to accurately register the click depending on the method they use and how good the switches are.


    I was reading a post last month where a user was questioning the latency of the footswitches in their pedal switcher (can't remember which one, but it was one of the popular ones) and the manufacturer documented it at 33ms.

    Latency in the MIDI protocol will be sub-millisecond and the difference in transmission over DIN vs CAT5 would not be detectible. Those latencies are dwarfed by the latency incurred processing the data by the Kemper CPU, which would be the same for either protocol.

    Yes, I actually agree that the looper was probably tested initially with MIDI.


    But that will still lead many people to an unfortunate conclusion: that MIDI assignments were implemented in software and later removed to sell Remotes.


    And I'll say it again, that's a perfectly viable marketing/sales strategy.

    I'm posting this here, because I am unable to post to the other thread you linked. I get a session expired on that thread alone and further posts to that thread have stopped. Hmmmmmmmm ... but I can post everywhere else. I won't say any more about that...


    There's clearly no technical reason why this can't be done.


    Obviously CK and team can choose to reserve this functionality for Remote users only, but with public awareness that this feature was available and then removed leaves Kemper in a somewhat unenviable position:

    • On the one hand, they have a reputation of listening to users and delivering solutions and upgrades with every update. So this move to actively remove the "hidden" looper features in FW 3.0 runs contrary to that ethos and leaves a bad taste in your mouth. It would benefit users to make the looper functions available via MIDI with little or no work on their part.
    • On the other hand, they have marketed and sold the Remote with "exclusive looper access" being a top-line feature. To simply open up the looper to all users via MIDI would most certainly anger some users. I'm not sure I'd ever use the looper, but if I bought the Remote and part of the purchase motivation was looper access, I'd be pretty upset if it was accessible via MIDI all along.

    There's no right or wrong here and Kemper can decide how and when to market and sell their own products and I don't have a problem with either path they take. It's their company, not mine.


    That said, knowing the MIDI assignments were implemented in software and later removed in tandem with the availability of the Remote, sure does make it appear as though features were removed to sell more Remotes, which certainly doesn't cast Kemper in a very pleasing light.