Skip to content

Add Volume Limiter Support #353

Description

@duckman

Description

Would love to be able to disable the volume limiter on the SteelSeries Arctis Nova 7. Looks like there is a function in the device file but I don't see a way to execute it.

Headset Name

SteelSeries Arctis Nova 7

Activity

  1. Sapd commented on Jun 9, 2024

    @Sapd
    Owner

    Looks like there is a function in the device file but I don't see a way to execute it.

    Yeah the guy implementing it found it probably during his WireShark Session but didn't implement it as headsetcontrol currently has no command for that.

    You can feel free to add one (not really complicated, you can just copy the code for send_microphone_volume):

    • Add here a new funtion, similar to send_microphone_volume:
      int (*send_microphone_volume)(hid_device* hid_device, uint8_t num);
    • In the Arctis 7 file, reference the function you saw here:
      device_arctis.send_sidetone = &arctis_7_send_sidetone;
    • Also in device.h add a capbability just calling it CAP_VOLUME_LIMITER :
      CAP_MICROPHONE_VOLUME,
    • Now you just need to implement the parameter in main.c:
      • Add an option here { "volume-limiter", required_argument, NULL, 0 },
        { "microphone-volume", required_argument, NULL, 0 },
      • Handle that option here, simply copy the microphone volume code and rename things (and create a variable on top):

        HeadsetControl/src/main.c

        Lines 706 to 712 in f64ac48

        } else if (strcmp(opts[option_index].name, "microphone-volume") == 0) {
        microphone_volume = strtol(optarg, &endptr, 10);
        if (*endptr != '\0' || endptr == optarg || microphone_volume < 0 || microphone_volume > 128) {
        fprintf(stderr, "Usage: %s --microphone-volume 0-128\n", argv[0]);
        return 1;
        }
      • Also here:
        { CAP_MICROPHONE_VOLUME, CAPABILITYTYPE_ACTION, &microphone_volume, microphone_volume != -1, {} },
      • Then call your new function in handle feature:
        case CAP_MICROPHONE_VOLUME:

    Feel free if you struggle somewhere

  2. nicola02nb commented on Jun 10, 2024

    @nicola02nb
    Contributor

    I created a pull request for some missing features of the Steelseries Artic Nova 7:

    • microphone mute led brightness
    • microphone volume
    • volume limiter
  3. nicola02nb commented on Jun 10, 2024

    @nicola02nb
    Contributor

    @duckman all the feature for your headphones will be included with my pull request

  4. duckman commented on Jun 10, 2024

    @duckman
    Author

    You sir are a gentleman and a scholar. I'll try it out tonight.

  5. nicola02nb commented on Jun 10, 2024

    @nicola02nb
    Contributor

    If you want to checck out also my GUI you're welcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions