mbuesch / razer

Razer device library and tools
http://bues.ch/h/razercfg
GNU General Public License v2.0
250 stars 50 forks source link

Support for Diamondback Chroma #98

Closed ghost closed 7 years ago

ghost commented 7 years ago

Hello mbuesch,

first of all many thanks for starting this project initially!

I added support for the Diamondback Chroma mouse. The code is basically a copy of the Mamba TE code, which seems to work fine with the Diamondback as well: setting DPI and frequency and setting color, status and mode for all LEDs at once has been working out of the box.

Support for configuring the three LEDs separately is missing.

I'd be glad, if you merged my changes into your code!

Thanks and regards, Marcus

mbuesch commented 7 years ago

Thanks a lot for your contribution.

When you say

The code is basically a copy of the Mamba TE code

how much new code is there? What did you need to adapt? Did you capture the USB traffic of the original driver to check the protocol?

Support for configuring the three LEDs separately is missing.

Do you have an idea what is needed to get this working?

ghost commented 7 years ago

Hi Michael,

I have checked against the original driver with a Windows VM. The signals transmitted are the same. There is actually no new code, I just created a copy of librazer/hw_mamba_tournament_edition.c, renamed the constants and functions and set the maximum DPI from 10000 to 16000.

I guess, writing some more abstract code to support both mice at once would be better, though.

Considering the LEDs: I haven't really used that feature so far, but I just had a look at it: there aren't 3, but 21 LEDs that can be managed individually. If this feature is on, there is constant traffic (between 2 and 5 repeating messages depending on the settings, about 10 per second) from host to device. I think the mouse's memory is to small, to handle all possible settings. Have a look at the screenshot to get an idea.

Also, to get this working in a usable way, a frontend similar to the screenshot would be needed.

It looks like a lot of work, for a feature i actually don't miss.

Regards, Marcus

On 02/11/2017 10:10 PM, Michael Büsch wrote:

Thanks a lot for your contribution.

When you say

The code is basically a copy of the Mamba TE code

how much new code is there? What did you need to adapt? Did you capture the USB traffic of the original driver to check the protocol?

Support for configuring the three LEDs separately is missing.

Do you have an idea what is needed to get this working?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/mbuesch/razer/pull/98#issuecomment-279176006, or mute the thread https://github.com/notifications/unsubscribe-auth/ADNvfxvmW42G7gJmWgHjh5dg7hYSFSwgks5rbiPVgaJpZM4L-KqU.

mbuesch commented 7 years ago

Thanks a lot for explaining this.

there is constant traffic (between 2 and 5 repeating messages depending on the settings, about 10 per second) from host to device.

Oh wow. There is no way such a thing would go into razercfg. Hell no. :)

ghost commented 7 years ago

Thanks for merging!

Cheers, Marcus On 03/28/2017 07:14 PM, Michael Büsch wrote:

Merged #98 https://github.com/mbuesch/razer/pull/98.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/mbuesch/razer/pull/98#event-1018971843, or mute the thread https://github.com/notifications/unsubscribe-auth/ADNvf4NxsOZyF2yhJ9tsXpEzfy30n6ebks5rqT_tgaJpZM4L-KqU.