Coder Social home page Coder Social logo

Mustang V v2 amp not recognized. about plug HOT 26 OPEN

beelzebud avatar beelzebud commented on July 18, 2024
Mustang V v2 amp not recognized.

from plug.

Comments (26)

offa avatar offa commented on July 18, 2024

Thanks for reporting. Can you check die usb vid / pid of your amp (eg. using lsusb)? It should show a vid of 0x1ed8 and a pid of either 0x0014 or 0x0016 (supported pid's).

from plug.

beelzebud avatar beelzebud commented on July 18, 2024

Ok today I had a chance to see the output of lsusb. In normal mode the amp reads 0x0016, and in maintenance mode it reads 0x0017

from plug.

beelzebud avatar beelzebud commented on July 18, 2024

Also if it helps, the old software recognized the amp at v1.2.1. https://bitbucket.org/piorekf/plug/src/default/ is the version that works with the MustangV v2.

from plug.

offa avatar offa commented on July 18, 2024

The vid is still 0x1ed8? The supported pid's don't have changed between both versions and 0x0016 is still available. What kind of error do you get btw.?

Since there's a working earlier version, the udev rule or other permission issues aren't the root cause.

If you have some time left, you can use git bisect to figure out the causing commit. There are tags for the mercurial v1.2.1 and initial importing commit. Unfortunately I don't have a V2 around.

from plug.

zavorra avatar zavorra commented on July 18, 2024

Hi, I didn't noticed this issue, so i forked your project and added an initial support for V2 amps.

To be more precise, my Mustang II V2 was recognized and works correctly, but plug lacks the "V2-only" features (some mod, stomp and amp).

moreover, I am trying to fix some weird issue on raspberry pi with USB communication, and changed something in USBComm to handle transmission retries (as in mustang-midi-bridge). Some other changes including loadfromfile to handle (maybe) incorrect fuse files.

Still no changes in updater

Could you please review my changes and in case take them into account?

You can find them in https://github.com/zavorra/plug.git

from plug.

offa avatar offa commented on July 18, 2024

Still no changes in updater

Are there still updates for V2? V1 is dead.

Great to see people working on this! Feel free to submit PRs – either here or on Gitlab, whatever suits best for you.

from plug.

Snayler avatar Snayler commented on July 18, 2024

Getting a similar issue on a Mustang IV V2.

lsusb output as follows:
Bus 002 Device 007: ID 1ed8:0016 FENDER MUSICAL INSTRUMENTS CORPORATION Mustang IV v.2

On the GUI it only says:
Error: Failed to open usb device

Are there any log files that I can check?

Are there still updates for V2? V1 is dead.

The latest firmware update for V2 is 2.2, it's some years old and with fender removing support for Mustang V1/V2, I doubt there will be more updates.

from plug.

offa avatar offa commented on July 18, 2024

VID / PID look good, so the application should pick it up correctly. The error indicates there's no device found though. Does this happen always?

Just to be sure: udev rules are installed and working?

Are there any log files that I can check?

Unfortunately no, the application itself doesn't write any logs yet. Maybe you can get some hints through the system logs.

Are there still updates for V2? V1 is dead.

The latest firmware update for V2 is 2.2, it's some years old and with fender removing support for Mustang V1/V2, I doubt there will be more updates.

So the situation is the same as V1. 👎
Is there a still a reason to keep the updater code? If so, it definitely needs some improvements.

from plug.

Snayler avatar Snayler commented on July 18, 2024

Just to be sure: udev rules are installed and working?

Ok, the issue was I forgot to create the plugdev group and add my user to that group. Might be a good idea to include the same note piorekf added to his wiki to your README.md file.

Could also be a good idea to change the links to a wayback machine link, since apparently piorekfs repository is no longer available.

Is there a still a reason to keep the updater code? If so, it definitely needs some improvements.

Could be useful if someone is still running an older version of the firmware and wants to update. Some digging would need to be done to find the firmware files, as fender decided to stop hosting everything Mustang V1/V2 related. I keep a backup of everything on my computer just in case.

On another note, have you included anything from zavorra's repo?

from plug.

offa avatar offa commented on July 18, 2024

Ok, the issue was I forgot to create the plugdev group and add my user to that group. Might be a good idea to include the same note piorekf added to his wiki to your README.md file.

make install takes care of the udev files already. Is it a good idea to include another target, which installs the udev files only (in case someone wants the rules, but not the application installed)?

Could also be a good idea to change the links to a wayback machine link, since apparently piorekfs repository is no longer available.

Good point, all links back to Bitbucket are dead now. Well done Atlassian.

Could be useful if someone is still running an older version of the firmware and wants to update. Some digging would need to be done to find the firmware files, as fender decided to stop hosting everything Mustang V1/V2 related. I keep a backup of everything on my computer just in case.

The updater code is still there, but the updater is disabled in the UI (however, just a boolean to flip). Let's see if someone realy needs it.

On another note, have you included anything from zavorra's repo?

Not yet.

from plug.

offa avatar offa commented on July 18, 2024

Coming back to the origial issue: To get some more infos out of the USB device error, it's neccessary to replace the related libusb code, allowing error handling. It shouldn't be difficult though. But at this point it's worth thinking about replacing plain C libusb calls with something improved, eg. libusbpp or libusbpp11 (suggestions welcome).

from plug.

Odzinic avatar Odzinic commented on July 18, 2024

I'm unsure if I'm experiencing the same issue, but I have been receiving a ERROR: Invalid amp id: 0 error for my Mustang I (V.2) with a lsub output of ID 1ed8:0014 FENDER MUSICAL INSTRUMENTS CORPORATION Mustang I (V.2).

from plug.

offa avatar offa commented on July 18, 2024

@Odzinic what version are you using? The usb vid / pid are ok.

from plug.

Odzinic avatar Odzinic commented on July 18, 2024

@Odzinic what version are you using? The usb vid / pid are ok.

1.4.2 compiled from git yesterday.

from plug.

offa avatar offa commented on July 18, 2024

Could you test with latest master? I've rewritten most of the USB code. You can enable additional libusb logging by setting LIBUSB_DEBUG.

from plug.

Odzinic avatar Odzinic commented on July 18, 2024

Sorry my previous message was my convoluted way of saying I compiled from master so I think I'm as up to date as possible.

I ran debugs 1-3 and didn't get anything other than ERROR: Invalid amp id: 0 but I captured the debug output if it can help:
plug_debug.txt

from plug.

offa avatar offa commented on July 18, 2024

The exception indicates a corrupted amp packet – unfortunately not more information. Does this happen always? I've experienced the issue too, but quite rarely. Typically a reconnect of the usb connection solved it.

In doubt, we could try to dump all received packets to get some more insight of what's transmitted actually.

from plug.

Odzinic avatar Odzinic commented on July 18, 2024

This has happened to me every single time I've tried to run plug with this amp. I have never been able to connect successfully (tried with other versions in the past as well but can't recall the exact versions).

I tried reconnecting the USB five times but kept getting the same error. The only difference was that id went from 0 to 1 on the second reconnection:

ERROR:  Invalid amp id: 0 (Running plug first time)
ERROR:  Invalid amp id: 0 (First USB reconnection while plug was still open)
ERROR:  Invalid amp id: 1
ERROR:  Invalid amp id: 1
ERROR:  Invalid amp id: 1
ERROR:  Invalid amp id: 1

from plug.

zavorra avatar zavorra commented on July 18, 2024

from plug.

offa avatar offa commented on July 18, 2024

This is strange ...

Does the amp setting on your amp show any amp listed here?

It could be interesting to see whether you'll get past the amp packet or fail on the next. Eg. replace the throw clause with a return of a valid value (one of the switch statements).

from plug.

Odzinic avatar Odzinic commented on July 18, 2024

Forgive my stupid question, have you tried different cables? And, you are using an usb3 port? An USB hub? Could you try different hw? Z P.S. Is It a Raspberry Pi or a PC?

I have used multiple cables and have had the same issue on all. I just tested both USB2.0 and 3.0 but it persisted on both. I have tested this on a PC and just tried testing it on my RPi but it seems I have to have a display connected to run the program due to its GUI.

This is strange ...

Does the amp setting on your amp show any amp listed here?

It could be interesting to see whether you'll get past the amp packet or fail on the next. Eg. replace the throw clause with a return of a valid value (one of the switch statements).

The amp that I was testing with was FENDER_65_TWIN_REVERB but I just tested it with every other amp setting in that list and they all returned ERROR: Invalid amp id: 0. If I try connecting to the amp again after I get that error without removing the usb cable I get ERROR: Resource busy.

A thought that popped into my mind was that I do recall connecting the amp to the official fender amp program a while back. I can't recall if it was through Wine or a dual boot but could that have possible changed around the amp ids to make them undetectable by plug?

from plug.

offa avatar offa commented on July 18, 2024

So at least we can eliminate a HW issue.

I'll write a dumper so we get some insight what's going on here.

A thought that popped into my mind was that I do recall connecting the amp to the official fender amp program a while back. I can't recall if it was through Wine or a dual boot but could that have possible changed around the amp ids to make them undetectable by plug?

No, the former FUSE software doesn't change anything persistent on the amp (except doing an update of course 😄). A simple power off, power on reverts back to the state saved on the amp.

from plug.

offa avatar offa commented on July 18, 2024

I've pushed a test branch: test/amp_id_repro. It'll print all packets received.

Additionally, building with -DINTEGRATIONTEST=ON creates a simple test executable test/integration/CommIT without UI. It connects to the amp, receives the stored preset data and closes.

from plug.

Odzinic avatar Odzinic commented on July 18, 2024

Thanks for creating the branch. Here is the response I received when running it: plug_debug.txt.

from plug.

offa avatar offa commented on July 18, 2024

@Odzinic lets move this problem to a new issue (#6).

from plug.

offa avatar offa commented on July 18, 2024

I have pushed some v2 related changes (see #6), could you give them a try?

from plug.

Related Issues (18)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.