Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rival 106 #84

Closed
SethDusek opened this issue Sep 11, 2019 · 7 comments
Closed

Rival 106 #84

SethDusek opened this issue Sep 11, 2019 · 7 comments

Comments

@SethDusek
Copy link

Hi, what would it take to add rival 106 support? I have one so I could test any possible patches, and perhaps even try implementing a patch with a bit of guidance, however if I mess up the config like I did once before trying to shoehorn it into ratbag I would be in a bit of trouble since I'd have to reset it with someones windows machine.

@flozz
Copy link
Owner

flozz commented May 19, 2020

Oops, I forget to answer this issue, sorry. :(

I started writing a doc about contributing if you want to help: https://github.com/flozz/rivalcfg/blob/rivalcfg4.0/doc/contributing.rst#unsupported-devices

@flozz
Copy link
Owner

flozz commented Jul 29, 2020

I think the Rival 106 work the same than the Rival 110... Does someone have some time to make some tests with this mouse? :)

@SethDusek
Copy link
Author

I have the mouse with me, how do I get started? Do I just copy rival110.py and change the product id?

@flozz
Copy link
Owner

flozz commented Jul 29, 2020

Hello,

Clone this repository, checkout to the rivalcfg4.0 branch and simply add the Rival106 mouse to models list in the rival110.py file:

https://github.com/flozz/rivalcfg/blob/rivalcfg4.0/rivalcfg/devices/rival110.py#L13-L18

    "models": [{
        "name": "SteelSeries Rival 110",
        "vendor_id": 0x1038,
        "product_id": 0x1729,
        "endpoint": 0,
    }, {
        "name": "SteelSeries Rival 106",
        "vendor_id": 0x1038,
        "product_id": 0x1816,
        "endpoint": 0,
    }],

Then, just check each options to be sure it work. :)

NOTE: you may need to update udev rules to make it work (rivalcfg will give you the command if it is not up to date). :)

@SethDusek
Copy link
Author

Yup, it works. Thanks! However I noticed that to get rivalcfg's 4.0 branch to work, I had to remove the argument from main, otherwise it would fail to launch with this error message:

Traceback (most recent call last):
File "/usr/bin/rivalcfg", line 11, in
load_entry_point('rivalcfg==4.0.0.dev0', 'console_scripts', 'rivalcfg')()
TypeError: main() missing 1 required positional argument: 'args'

This .patch includes both the changes to main and the product id added, if you're interested

@flozz
Copy link
Owner

flozz commented Jul 29, 2020

Yup, it works. Thanks!

Yeah ! :D

Thanks! However I noticed that to get rivalcfg's 4.0 branch to work, I had to remove the argument from main, otherwise it would fail to launch with this error message:[...]

Oops you are right! I made a mistake here.


I will apply your patch for the Rival 106 part, but i prefer to keep an argument on the main() function, but with a default value (def main(args=sys.argv[1:]):). This argument is required for testing :)

@flozz flozz added this to In progress in Rivalcfg v4.x Jul 29, 2020
flozz pushed a commit that referenced this issue Jul 29, 2020
@flozz
Copy link
Owner

flozz commented Jul 29, 2020

Patch applied and issue fixed, thank you!

@flozz flozz closed this as completed Jul 29, 2020
Rivalcfg v4.x automation moved this from In progress to Done Jul 29, 2020
nixtux pushed a commit to nixtux/rivalcfg that referenced this issue Jul 30, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Rivalcfg v4.x
  
Done
Development

No branches or pull requests

2 participants