lclaudio / bassvamp

Behringer Bass V-Amp2 configuring tool for Linux
GNU General Public License v2.0
4 stars 1 forks source link

Would this work on a normal behringer v amp 2? #1

Open guysoft opened 6 years ago

guysoft commented 6 years ago

Hey, Trying to get this to work with a V amp 2. Wondering if you have any documentation on that?

lclaudio commented 6 years ago

Hi there!

The Bass Vamp2 unit had a different set of commands... The same basic functions, but different byte codes for them. I got the byte codes from the manuals.

Even though there's a long time since I looked at the scripts and the Vamp manual, I believe replacing the byte codes should be enough to get the Vamp 2 (guitar) unit going..

Do you have any experience writing python scripts? I used basic (and hack-ish) python and QT for the graphic interface.

Anyway, I'd be glad to help you.

Best regards, Luis

On Fri, Jul 6, 2018, 12:37 Guy Sheffer notifications@github.com wrote:

Hey, Trying to get this to work with a V amp 2. Wondering if you have any documentation on that?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/lclaudio/bassvamp/issues/1, or mute the thread https://github.com/notifications/unsubscribe-auth/AAqIZS7hq4okNTdGstjTl-T0Q7yVuMnzks5uD5JkgaJpZM4VFuta .

guysoft commented 6 years ago

Hey, yes I write python at work daily and can edit your code. But I am not sure how to find the right midi byte code commands.

I tried connecting, but it won't successfully connect - is there a way to debug communications?

I guess I have to play with amidi

cmd = 'amidi -p hw:%s -S "%s" -r /dev/stdout -t 1' % \ (midi, CMD_identify_device) aux = os.popen(cmd) result = aux.readlines() aux.close() if result == []: return "No Bass V-Amp found!\n"

Getting:

amidi -p hw:2,0,0 -S "F0 00 20 32 7F 7F 01 F7" -r /dev/stdout -t 1

0 bytes read
lclaudio commented 6 years ago

Great!

The functions you want (code listed below) are in the oo_bassvamp.py file. I used "amidi" from alsa tools to get the midi handling simplified. One possibility is the the parameters for amidi have changed.

Nowadays midi libraries for python are way better.

The variable BEHRINGER_SIGNATURE has a value that I can't recall whether it is the general Behringer signature or the signature for the specific device (Bass Vamp2). This is another test to perform. I am leaning towards that being the general signature.

The Bass Vamp2 manuals can be found here:

https://m.musictri.be/brand/c/Behringer/downloads?active=Downloads

You will find the commands for the unity on page 18 ("10. Appendix"). I am pretty certain you will find there the data for you unit. I attached a screenshot of my search parameters for the download page.

Looking at the code, I have forgotten to remove the comment about the hardecoded requirement for the "UM-1G MIDI" device, a midi-to-usb device from Roland.

Again, that would be great to first try the amidi command lines below. Then, to replace the BEHRINGER_SIGNATURE value by whatever is returned by the amidi command.

Sorry for not being able to be more helpful right now. I am at Busch Gardens, holding both my kids while we watch Elmo's show for the 4th time... I will have access to my computer in 10 days, when we get back home :)

The code I mentioned:

def list_midi_devices(self):
    mididevice_list = []
    aux = os.popen("amidi -l")
    devlist = aux.readlines()[1:]
    aux.close()
    for i in devlist:
        mididevice_list.append(i[:-1])  
    return mididevice_list

# hardcoded to use the 'UM-1G MIDI' midi device
def setup_midi(self, device):
    self.midi = device.split()[1][3:]
    text = self.identify_vamp_device(self.midi)
    return text, self.midi

def identify_vamp_device(self, midi):
    cmd = 'amidi -p hw:%s -S "%s" -r /dev/stdout -t 1' % \
                (midi, CMD_identify_device)
    aux = os.popen(cmd)
    result = aux.readlines()
    aux.close()
    if result == []:
        return "No Bass V-Amp found!\n"

    data = result[0]
    # if it is a Behringer device...
    if data[1:4] == BEHRINGER_SIGNATURE:
        self.device = data[5:6]
        text = data[7:-1] + "\n"
    else:
        text = "Not a Behringer device!\n"

    return text

Luis

On Fri, Jul 6, 2018, 13:33 Guy Sheffer notifications@github.com wrote:

Hey, yes I write python at work daily and can edit your code. But I am not sure how to find the right midi byte code commands.

I tried connecting, but it won't successfully connect - is there a way to debug communications?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/lclaudio/bassvamp/issues/1#issuecomment-403099623, or mute the thread https://github.com/notifications/unsubscribe-auth/AAqIZQkaFThlSbbqb7hBU_9kPDB9DoV9ks5uD59VgaJpZM4VFuta .

lclaudio commented 6 years ago

Oops forgot bthe screenshot :)

On Fri, Jul 6, 2018, 14:43 Luis Claudio R. Goncalves lclaudio@uudg.org wrote:

Great!

The functions you want (code listed below) are in the oo_bassvamp.py file. I used "amidi" from alsa tools to get the midi handling simplified. One possibility is the the parameters for amidi have changed.

Nowadays midi libraries for python are way better.

The variable BEHRINGER_SIGNATURE has a value that I can't recall whether it is the general Behringer signature or the signature for the specific device (Bass Vamp2). This is another test to perform. I am leaning towards that being the general signature.

The Bass Vamp2 manuals can be found here:

https://m.musictri.be/brand/c/Behringer/downloads?active=Downloads

You will find the commands for the unity on page 18 ("10. Appendix"). I am pretty certain you will find there the data for you unit. I attached a screenshot of my search parameters for the download page.

Looking at the code, I have forgotten to remove the comment about the hardecoded requirement for the "UM-1G MIDI" device, a midi-to-usb device from Roland.

Again, that would be great to first try the amidi command lines below. Then, to replace the BEHRINGER_SIGNATURE value by whatever is returned by the amidi command.

Sorry for not being able to be more helpful right now. I am at Busch Gardens, holding both my kids while we watch Elmo's show for the 4th time... I will have access to my computer in 10 days, when we get back home :)

The code I mentioned:

def list_midi_devices(self): mididevice_list = [] aux = os.popen("amidi -l") devlist = aux.readlines()[1:] aux.close() for i in devlist: mididevice_list.append(i[:-1])
return mididevice_list

hardcoded to use the 'UM-1G MIDI' midi device

def setup_midi(self, device): self.midi = device.split()[1][3:] text = self.identify_vamp_device(self.midi) return text, self.midi

def identify_vamp_device(self, midi): cmd = 'amidi -p hw:%s -S "%s" -r /dev/stdout -t 1' % \ (midi, CMD_identify_device) aux = os.popen(cmd) result = aux.readlines() aux.close() if result == []: return "No Bass V-Amp found!\n"

  data = result[0]
  # if it is a Behringer device...
  if data[1:4] == BEHRINGER_SIGNATURE:
      self.device = data[5:6]
      text = data[7:-1] + "\n"
  else:
      text = "Not a Behringer device!\n"

  return text

Luis

On Fri, Jul 6, 2018, 13:33 Guy Sheffer notifications@github.com wrote:

Hey, yes I write python at work daily and can edit your code. But I am not sure how to find the right midi byte code commands.

I tried connecting, but it won't successfully connect - is there a way to debug communications?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/lclaudio/bassvamp/issues/1#issuecomment-403099623, or mute the thread https://github.com/notifications/unsubscribe-auth/AAqIZQkaFThlSbbqb7hBU_9kPDB9DoV9ks5uD59VgaJpZM4VFuta .

guysoft commented 6 years ago

Hey, Thanks for updating over a busy situation, hope you are having fun :)

So I have been playing around - and I can't seem to communicate with my V-Amp 2, even on windows, I can see on the MIDI device information going out on the midi-out LED, but nothing coming in the "midi-in" LED, (even on the windows program). I opened up the v-amp and saw the firmware inside is version 1.2 (sticker on it). And I saw there are People saying you should upgrade the eprom to 2.2.4 (or 2.24).

Not sure how to test more if the signal is actually going in, but it seems like I might need to try and upgrade before I can proceed.

Also in the meantime I found Free V-AMP which is from the free software foundation. But still interested in this project, because I could build with it a wahwah pedal using a RaspberryPi (or with something based on it). Assuming I can actually communicate with the V-AMP.

Things I tried:

  1. Going in to edit mode and select A, making sure the channel is 1
  2. Making sure tap light is of so midi-through does not work (also, no in signal when midi-though is on, which is fishy).
  3. chancing channels.
lclaudio commented 6 years ago

On Sun, Jul 08, 2018 at 08:54:03AM -0700, Guy Sheffer wrote:

Hey, Thanks for updating over a busy situation, hope you are having fun :)

So I have been playing around - and I can't seem to communicate with my V-Amp 2, even on windows, I can see on the MIDI device information going out on the midi-out LED, but nothing coming in the "midi-in" LED, (even on the windows program). I opened up the v-amp and saw the firmware inside is version 1.2 (sticker on it). And I saw there are People saying you should upgrade the eprom to 2.2.4 (or 2.24).

Not sure how to test more if the signal is actually going in, but it seems like I might need to try and upgrade before I can proceed.

Hi!

Did you get any success on the upgrade/accessing your Vamp2 unit?

Also in the meantime I found Free V-AMP which is from the free software foundation. But still intrested in this project, because I could build with it a wahwah pedal using a RaspberryPi (or with something based on it). Assuming I can actually communicate with the V-AMP.

Is there anything I can do in order to help you? I arrived home on Monday and now I can even remove the dust from my old Bass Vamp2 and run a few tests, if necessary. :)

Best regards, Luis

guysoft commented 6 years ago

Ok, update - got a working midi usb.

amidi -p hw:2,0,0 -S "F0 00 20 32 7F 7F 01 F7" -r /dev/stdout -t 1

returns:

� 2BEHRINGER V-AMP-2 2.2.4�

or:

F0 00 20 32 00 11 02 42 45 48 52 49 4E 47 45 52 20 56 2D 41 4D 50 2D 32 20 32 2E 32 2E 34 F7

I can see this should work:

BEHRINGER_SIGNATURE = "\x00\x20\x32"

Indeed data[1:4] == BEHRINGER_SIGNATURE

UI does not seem to respond though.

disorder commented 5 years ago

Hi @guysoft, there is V-Amp software at http://www.nongnu.org/freevamp/ but I did have to patch it to work with V-Amp Pro. I just published my changes in https://github.com/disorder/freevamp/tree/vamppro

Hope this helps you or somebody else.

guysoft commented 5 years ago

Hey, so apparently the MIDI usb cable I has was defected. Only OUT worked, not in. Its a fault in the whole line of cheap midi files on ebay.

I managed to get Vamp2.exe working with wine. So I know there are no hardware problems at the moment.

I'll test and update.

Also @disorder I am using a Vamp-2, nto a V-Amp pro. How did you get freevamp to work? It would not see my midi devices, does it work with alsa midi devices?

guysoft commented 5 years ago

Been giving up and using the wine emulator since, so if you want you can close.

lclaudio commented 5 years ago

On Thu, Feb 14, 2019 at 03:42:40PM +0000, Guy Sheffer wrote:

Been giving up and using the wine emulator since, so if you want you can close.

Have you tried using the script again, after you fixed the midi cable problem? Did it recognize your device model?

Luis

your-highness commented 4 years ago

Dear @guysoft ,

I can not find the the Behringer V AMP 2 Windows Software anywhere on the net. Can you tell me how you set up WINE and maybe provide an executable for installation of the software?

Best,

guysoft commented 4 years ago

Hey, I sold my vamp, have a Zoom Me 25 now.

I just ran

wine ./Vamp2.exe

Here I uploaded the one I am using here: https://gnethomelinux.com/files/Vamp2.exe

Make sure you have latest wine.

your-highness commented 4 years ago

Thanks!