GoXLR-on-Linux / goxlr-utility

An unofficial GoXLR App replacement for Linux, Windows and MacOS
MIT License
635 stars 36 forks source link

No GoXLR Devices Found #172

Open TheRedHerring95 opened 2 weeks ago

TheRedHerring95 commented 2 weeks ago

Not sure if I've missed a step somewhere, or if I've missed an already sorted issue, but I've taken a look and been unable to find anything that seems to provide guidance on this.

I've got both a GoXLR Mini and a full sized GoXLR, and have been unable to get either showing up in the utility. Levels adjust as expected, at least on the full sized (haven't tested that on the Mini yet) running the newest firmware, and the Mini powers up, both show in Audio with their individual channels.

Pipewire with Pulse appears to be the default on my OS, and I was unable to see whether this is likely to be what that caused, or if there's something else that may be the cause; I'm slowly working through getting it set up to know what I need to do to swap into my main system, but I'm still gradually working my way through figuring some things out.

Running on NixOS, with the following being all I can find regarding my sound configuration so far

# Enable sound with pipewire.
  sound.enable = true;
  hardware.pulseaudio.enable = false;
  security.rtkit.enable = true;
  services.pipewire = {
    enable = true;
    alsa.enable = true;
    alsa.support32Bit = true;
    pulse.enable = true;
    # If you want to use JACK applications, uncomment this
    jack.enable = true;

Not sure what else may be needed or useful, but if there's anything else me know.

FrostyCoolSlug commented 2 weeks ago

Could you provide the log files and let me know how you installed the utility? If I were to guess, the udev rules for the GoXLR are missing.

TheRedHerring95 commented 2 weeks ago

Thanks for the quick response, unfortunately it was just as I got to bed so I couldn't respond earlier.

I'd love to provide the logs, but could you specify which ones? I'd hate to provide ones that aren't useful, and I'm still a little green to Linux to know which handle what.

As for how I installed it, I installed it through the NixOS configuration file, which currently installs v1.0.0 (not sure if that also affects it?). Any advice for how to check the udev rules? I think I saw something while going through previous issues posted about it, but my attempts to run the copy through sudo cp 50-goxlr.rules /etc/udev/rules.d/50-goxlr.rules && sudo udevadm control --reload-rules && sudo udevadm trigger failed with cp: cannot stat '50-goxlr.rules': No such file or directory; I'm assuming I'm just running it in the wrong place, but I'm not sure where the right place would be.

Sorry if these seem like stupid or basic questions, I'm still working on picking things up as quickly as I can.

Edit: Realised I was on NixOS 23.11, upgraded to 24.05 which has utility version 1.1.1, and the issue still persisted, so not a v1.0.0 issue at least.

FrostyCoolSlug commented 1 week ago

The Nix package for the GoXLR Utility is managed by a third party, so it's a little tricky to help support there (I'm personally not a Nix user), but I'll give @Sporesirius and @errnoh a ping (sorry!), as they were responsible for getting the package sorted there.

For the logs, they're available in ~/.local/share/goxlr-utility/logs/, the latest goxlr-daemon.log may provide insight.

errnoh commented 1 week ago

Thanks for the ping @FrostyCoolSlug

I'm using the latest version from Nix so "works on my machine", but lets see if I can help with debugging. If nothing else, at least I might be able to rubberduck.

So for the relevant background:

If it worked correctly should be able to see the file installed at /etc/udev/rules.d/50-goxlr.rules, if not, maybe you don't have services.goxlr-utility.enable = true; set?

After confirming that my next question would be about your overall setup. goxlr-utility is using XDG autostart, a feature which I hadn't run into before I added this nix package (but that has worked really well so no complaints there), what I don't know is if XDG autostart has some requirements from the system itself (maybe @FrostyCoolSlug knows more about that part?). Anyways, if that ends up being the issue back when I created the module I added services.goxlr-utility.autoStart.xdg option that can be disabled in case someone wants to run it manually or using some other method they desire.

errnoh commented 5 days ago

@TheRedHerring95 did you resolve your issue?

TheRedHerring95 commented 5 days ago

Sorry, it's been a busy few days at work and I haven't had the chance to jump on my laptop and test this again since your suggestions and guidance. Only one more day till the weekend, so hopefully I'll be able to get back to troubleshooting it in the next day or so.

I appreciate you checking whether I'd solved it though; as much as I like to think I'll jump straight on and confirm it's working with just what it was, I acknowledge that there's definitely a chance I'd get side tracked and end up not getting the comment added with just what happened to get everything working.

Different-Name commented 4 days ago

I am also having this issue - also on NixOS

goxlr-daemon.log showed the following error repeated: [ERROR] Couldn't load potential GoXLR on bus 1 address 2: Access denied (insufficient permissions) Am I perhaps missing a group on my user?

errnoh commented 3 days ago

@TheRedHerring95 no worries, just wanted to make sure there's nothing wrong with the package that I'd need to fix :) and to make sure that the issue gets sorted out within decent time.

@Different-Name this does also look like it's due to missing udev rules. Check my message above ( https://github.com/GoXLR-on-Linux/goxlr-utility/issues/172#issuecomment-2187155379 ) and ensure you have the goxlr utilities module enabled.

Different-Name commented 3 days ago

@errnoh sorry I forgot to mention I checked the rules were in place, the file was indeed there. I have the module enabled

errnoh commented 3 days ago

@Different-Name hmm, weird. Assuming the contents of /etc/udev/rules.d/50-goxlr.rules also match https://github.com/GoXLR-on-Linux/goxlr-utility/blob/main/50-goxlr.rules then the next steps in debugging would probably be:

But do report back even if that doesn't help, the Access denied (insufficient permissions) just seems like quite generic udev error that should be fixed with just turning things on and off in correct order :sweat:

Different-Name commented 3 days ago

To continue the trend I'm unfortunately not going to have access to my goxlr for the next week 🥲

I'll double check and get back to you when I can - thank you