mdias / rs_asio

ASIO for Rocksmith 2014
MIT License
1.01k stars 96 forks source link

HX Stomp - "It sounds like your cable is unplugged, connect a Rocksmith Real Tone Cable" #455

Open Rms92 opened 1 month ago

Rms92 commented 1 month ago

HX Stomp is on the latest firmware 3.71. Guitar cable is connected to the Stomp's "L/MONO" Input jack, and the Stomp is connected by USB cable straight to the PC motherboard's USB port. PC automatically recognizes HX Stomp and I can set it as input/output device in sound setting. As an input device it shows up as "Digital Audio Interface (Line 6 HX Stomp)". HX Stomp is also detected by the HX Edit app.

I also have a JDS Labs Element headphone amplifier connected to the PC.

I copy/pasted the RS_ASIO files into the game directory and changed the .ini files as per this config.

However, when I load up the game, it gives me the "your cable is unplugged" message. Below is the log txt file. No idea if something is wrong with the Stomp or the game.

RS_ASIO-log.txt

mdias commented 1 month ago

Your log contains a very strange behavior indeed. Can you check that C:\Windows\SysWow64\L6HXStompAsio_OnInterposer.dll exists in your filesystem and that the 32 bit executable in the ASIO Driver Tester works for you?

Rms92 commented 1 month ago

The L6HXStompAsio_OnInterposer.dll file does not exist. I am able to launch both the 32 bit and the 64 bit executable in the driver tester folder. In both executables, when I click on 'Devices', I see three of them: ASIO Helix, ASIO HX Stomp, and ASIO JDS Labs USB Audio Device. Clicking on the first two devices returns "Driver not found".

Edit: The dll files are actually in the following directory: `C:\Program Files (x86)\Line6\Tools\Driver2 Archive\HxStomp

It also contains the file:" L6HXStompAsio_OnInterposer_x64.dll".

mdias commented 1 month ago

Right, so your ASIO driver doesn't appear to be registered correctly in the system. The registry says the driver is located on C:\Windows\SysWow64\L6HXStompAsio_OnInterposer.dll and when RS ASIO tries to load it, it fails, just like the ASIO Driver Tester.

Try reinstalling the latest drivers for your interface to see if that fixes the problem.

Rms92 commented 1 month ago

Ohh I see. When I tried to install the driver, the installer automatically chose Program Files (x86) as the installation directory. What if I just move or copy/paste all the files from the previous folder into SysWow64?

I tried doing this with L6HXStompAsio_OnInterposer.dll, and the tester finally detected the driver. Files

mdias commented 1 month ago

It might work, but it's not the best idea. In fact it would probably be better to go in the registry and change the path to the Program Files one, but that's also very annoying.

If those drivers install the files in one location, but then the registry entry points into another location, it sounds like there's a bug with the installer as I suppose no other ASIO-enabled application will work with that. Could be worth checking if just reinstalling fixes the issue, and if not then maybe contacting Line6's support to let them know about it could help.

Rms92 commented 1 month ago

Reinstalling does not help. Could you point me to a tutorial for regedit? Or is it a very lengthy process? Either way, I will contact Line6 support for sure and use the Stomp as I'm for now. Will update when I hear back from them.

mdias commented 1 month ago

HKEY_LOCAL_MACHINE\SOFTWARE\ASIO contains several folders with the driver names, if you open the one you want (ASIO HX Stomp), inside there will be a CLSID key; let's imagine that key is {ffffffff-ffff-ffff-ffff-ffffffffffff}.

Now, inside HKEY_CLASSES_ROOT\WOW6432Node\CLSID\{ffffffff-ffff-ffff-ffff-ffffffffffff}\InProcServer32 (note this would be your previously found key) the default key will point to the 32-bit DLL file. To change he 64-bit DLL path look into HKEY_CLASSES_ROOT\CLSID\{ffffffff-ffff-ffff-ffff-ffffffffffff}\InProcServer32.

You should be able to change these to point to the correct drivers locations. You can see the path RS ASIO tries to load from on the log it generates.

If for some reason it's not reading from the path you expect after you changed the paths, use the Find functionality in regedit to find more entries of your driver key {ffffffff-ffff-ffff-ffff-ffffffffffff} and change as appropriate.

Rms92 commented 1 month ago

Ok, so I tried reinstalling the drivers and what I noticed was that the installer automatically sets the destination folder to be in program files (x86)\Line6.

This is the same with many of the Line6 software I downloaded. E.g., HX Edit (the preset editing software), also installs to program files (x86), and you have the option to install drivers for other devices (all of which are placed in program files).

Don't know if that is of much help but just thought it could be worth sharing. I tried changing registry as you said. The log file points to the correct path now but also ends in error. I've attached the log file as well.

Stomp Driver installer

HX Edit installer 1

HX Edit installer 2

RS_ASIO-log.txt

mdias commented 1 month ago

The path on the log still appears to be wrong:

C:\Program Files (x86)\Line6\Tools\Driver2 Archive\ HxStomp\L6HXStompAsio_OnInterposer.dll

notice the extra space in \ HxStomp