Posts by Erikcb

    Yes, it can be heavy-going! Take a look at this thread:

    slateboy
    February 22, 2024 at 4:08 PM

    I'll take a look on it, althought i have no idea how to make it work hahah

    Thanks!!

    This is starting to seem pretty hard, i'm ok with "only" using CCs instead od nrpn and the issue with having to press twice for effects is not really too nanoying, i barely enable/disable stuff, but i'd like to use the screen to retrieve info from the kemper, i've been researching for a while, no luck so far

    So apparently it was an issue cause by the kemper sending info and the arduino not reading it, causing the kemper to freeze, i added this

    to my code and apparently it's not freezing now, also, i noticed that normal CCs are working properly (same as they did in my old code).

    So i have a few questions.

    1) If i use the controller to switch between rigs in performance mode, go performance up/down, enable the tuner and turn effects on/off, what's the advantage of using nrpn agains normal CCs as i was using?
    2) My code was not acting properly since the beggining, it wasn't "remembering" the effect status, so some times to turn effects on/off i have to press the button twice (let's say delay is off, i press once, the arduino sends off CC, so it does nothing, and then i have to press it again to turn it on) is there a workaround for that? It's not a big issue for me since i don't play live or anything, but it would be cool to get it fixed.

    3) Any idea how could i make the screen to show kemper info? Mostly performance in one row and rig name on the second one, i dont need too much stuff.

    Thanks!

    Have you got some kind of midi monitor device? Worth checking if there is any unwanted midi data or other noise getting sent that is not required. or perhaps it is sending/getting incomplete midi messages?

    Or maybe (as i have had in the past) the ardiuno is stalling and not sending out a steady/even flow of midi data. I found that constantly updating the screen on the arduino LCD takes a lot of processing-power that affects midi transmission and better to update the display only when needed, ie a change of data. Therefore the priority is prioritising midi data flow rather than a visual.

    This are two different midi monitors (software) showing what the arduino is sending (two messages each, turn on/off, two different presses) there's no more messages unless i press the button again and there's no signs of it disconnecting or anything...

    I don't think there's anything wrong, i set the baud rate to 31250 and it still freezes my kemper as soon as i connect it, i didn't change anything in the code besides the baud rate (maybe there is something wrong with the code? no idea...)

    EDIT: I just tried to connect it with an empty code, and the kemper is not crashing...

    The standard for midi (not USB midi) is a baud rate of 31250 so that must be adhered to

    I already tried with 31250 but the kemper still freezed, i have no idea why

    Quote from slateboy

    this is the bit that i initially figured out with trial-and-error rather than an educated approach.

    The "proper way" would be to find the range of that parameter, in this case -6db to +6db where 0dB is mid-way, therefore a full-scale range of 12

    divide the NRPN range 16383 into 12 = 1365 per dB step (could be taken as smaller steps if you want 0.1dB resolution) then to get the values

    1365 x 6 = 8192 (0dB setting) then divide by 128 for the MSB value which = 64 ( i've lost the LSB value somewhere there...)

    That's actually easier than i thought, thanks.

    I think i'm starting to get closer (even tho i don't fully understand the way to get the values, like how do you know that MSB=80 is going to be +3dB? )

    I managed to send nrpn to the pc and apparently it's recognising them properly (this one turns on/off the amp).

    Is there a way to switch between rigs in performance mode via nrpn? i can't find it in the nprn values...

    But as soon as i connect it to the front USB of the kemper it does nothing but making the kemper freeze, so i have to turn it off and on again no idea why.

    This is the code i'm using for testing (as i said i barely have programming knowledge, so i'm figuring out stuff by myself).

    I also tried 115200 as baud rate.

    Also, i tried that nrpn via midi cable (using my old code) and it turns the amp on and off without problem, i tried the volume one and it also works via midi and via usb the pc is recognising it.

    It just when i connect it to the frontal USB of the kemper it does nothing but freezing the kemper...

    EDIT: I just noticed the kemper freezes as soon as i plug the arduino in the front USB ||

    make sure you are addressing the screen correctly and your code is configured for that type (ie 16x2) You may find that your code needs a tweak depending what outputs you are using, whether you are using an IC2 between the arduino and screen and a few other factors. Go search several LCD-to-arduino codes examples and see how they vary.

    its very satisfying to have built your own midi controller and certainily allows you to do exactly what you want. But it can come at the cost of mental-stress and, obviously the time-cost. After all the controller i have made and used (and gigged with) i have chosen to use an off-the-shelf device for my Kemper player at present.

    Yea, i managed to make it work, it's just i had to use pins 2 and 3 and they were already used by the controller, but the sxreen is working now (at least showing basic text).

    Now i gotta figure out how to send/receive nrpn, i worked on it 3/4 hours yesterday and i still don't even know how to add them to my code (if i have to use "MIDI.sendControlChange" (i've read that nrpn is basically 4 CCs) and send the 4 CCs at the same time, or i gotta use MidiUSB.sendMIDI or send(SystemExclusive or what))

    I know the theory, you gotta check what you want to send, and calculate MBR and LSB, it's just i have no clue how to implement it on my code, i can't find any code example or anything anywhere, no idea what functions i gotta add or anything, kinda weird i couldn't find any example of a proper code here in the forum.

    I find explanations on what NRPNs are, but nothing on how to implement it or anything.

    3 hours in, i'm not understanding a single thing and it's driving me crazy hahahahaha

    i don't even know how to add nrpn to my code (not even gonna talk about sending them via usb :D)

    i don't even know what the format of the nrpn commands is, or how to add it to my arduino c++ code

    this might be harder than i thought hahahah

    still: maybe on the other board the contrast voltage is provided in another way?

    I'd double-check the contrast voltage, and rhe way it is provided.

    if i connect the screen to pins 2 and 3, the screen works normally (just testing with a "hello world" for now, i can edit the text and it shows properly) it's just i already have those pins used by the controller's switches and i don't know if i can edit the code so the screen uses pins 0 and 13 for example (those are the ones i have free at the moment).

    EDIT: i ended up changing the controller pins to 0 and 13 and editing the code, not sure if the 2 and 3 pins as SCL and SDA are hardcoded, time to start trying to understand how nrpn works ;( :D

    black squares: maybe a contrast issue? is there a potmeter you can twist? or is it done with some PWM?

    That's what i thougth at first, apparently the contrast is automatic, also, it should be ok, since it works if i try it on the other arduino i have (it also worked in the one i'm using right now before connecting it to the controller).

    EDIT: i think i found the problem, for some reason the pins sending the info to the screen are digital pins 2 and 3, and those are used by the controller, any idea if i can change the pins the screen uses?

    i didn't set them up, it seems to be like that by default?

    Just got the board and a cheap 16x2 screen, i'm doing some testing.

    So far i can't even make the screen work within the controller (not even using a simple "hello world" print code) it lights but there are no letters, just black squares.

    The weird thing is that when i tried it without the rest of the cables it worked, and if i try it with the old arduino uno board it also works, i'm trying to figure out what could be the problem, but i have no idea so far...

    I didn't even start with nprn or anything yet.

    with a bit of tinkering, you can retrieve data and parameters from the Kemper- another project:

    External Content youtu.be
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    Good to see it, pretty interesting, I'll do some tests tomorrow once i get the board, thanks!

    You can request Rig Info via nrpn midi commands.

    Have a look into my script. ☺️

    gstrotmann
    May 5, 2024 at 7:03 PM

    I see, looks pretty interesting, i gotta see if i'm capable of doing it with the arduino, i'm not using python just arduino IDE, which is C++ i think, do you think it will be doable that way?
    Never used nrpn, only CCs, i didn't manage to make nrpn commands work for me, not sure why (probably cause i don't have programming knowledge hahahah).

    cool. keep us posted. thanks Erikcb

    Here's my most recent Arduino midi controller though it relied on a USB to midi interface/cable rather than directly USB-to-USB

    External Content youtu.be
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    No worries, i'll do.

    Just wondering, that screen is pretty interesting, any idea if it would be doable via USB?
    I'm not sure if the kemper will send info (and if it's gotta be MIDI or what)

    Just bought an Arduino Leonardo, delivered tomorrow apparently, so i'll try to make it work by replacing the Uno i'm using currently and using the USBMIDI library, i'll have to do some changes in the code, i'll let you know if i manage to make it work

    I'm not fully sure what you mean hahah

    I'm using an Arduino Uno copy, "AZDelivery ATmega328P" and i turned it into a foot controller via MIDI by following some tutorials and so, but as i said i'm kind of a noob in this kind of things.

    This is more or less my controller, i did some changes after, more buttons and so.

    I'll have to do some research and see if my board is capable of doing that kind of stuff.

    Thanks anyway for the info!

    The this is i don't know programming or anything, i just gather info here and there and then try some stuff, so even if there was a way to make it work i might never find it hahahah

    Yes, exactly!

    You can now just plugin the USB midi controller on the front USB port, (using an USB-a to USB-b "printer" cable)- no need to use an arduino and try to get it working using the RJ45 "network" connector.

    I think this functionality was already working with other (more recent?) USB midi controllers in the new OS 10 version (I suppose this was added for the Kemper Player, since this pedal does not have a "normal" 5-pin midi connection).

    But for the FBV MKII boards, this didn't work in OS 10. I was in touch with Kemper support to ask why this didn't work for the FBV shortboard and express controllers in the OS 10, and they asked me to install a program to get the midi usb init information for both of these boards (which I sent to them). They said these init sequences were the problem why my FBV boards did not work in OS10.

    I didn't hear from them afterwards (they also made me no promises about adding it), but apparently they did add these 2 boards to the OS 11 beta version. So as usual, great customer support!

    I'm trying to use the arduino to send MIDI CCs via USB, it's a DIY controller i made that i was using via MIDI cable, i'll have to do some research and see if i'm capable of making it work just via usb, that way i can use only one cable for the controller instead of USB + MIDI cables.

    Thanks for the info!

    For anyone who is interested: both FBV shortboard II and FBV express II are correctly working, but only sending MIDI commands, so its difficult to find a setup where the LEDs stay synchronised.

    So, does this mean we can use the front USB port on the rack to send MIDI via usb??
    I'm trying to make it work with an arduino controller i made, but so far i had no luck.