Open RobertoMarcello opened 7 months ago
how were you running the tool? what options were being passed?
by default, it is set to have the values for an 0x8840 device to be programmed as those are the devices i have. to use the 0x8890 (the one you are referencing) you need to change the address to match your USB interface. to get the correct addresses, run
lsusb -s <your device> -v
you need to then find the address associated with your endpoint.
i was able to get my hands on a 0x8890 with a 6 key and 1 knob configuration and i just merged some changes to fix the programming. to program this device i'm running it like this
cargo run -- --product-id 0x8890 --out-endpoint-address 0x02 program -c mapping-8890.ron
that might work for you, but if it does not, consult the output from lsusb as stated above.
note - i just pushed fixes, so please pull again before trying to program your device as until a few days ago, i thought the 0x8890 device only had 4 keys and no rotary encoder...
actually, i simplified the tool with this last commit. instead of having the user supply the proper addresses, i am now doing it in code. so you can just run
cargo run -- program
and the it will find the correct address to use to communicate with the device
hope this helps simplify things!
I'm actually using your last commit and the command that I execute is program without nothing else, but he gave me this error. The program find all that address I show you upper, but if I try manually to use someone of them doesn't work.
Other information that can I gave you is, 'Device vendor 005 ID 1189:8890' and the product id is 34960. Tell me if you need something else.
what OS are you using? if linux, have you installed the udev rules? if windows, have you installed the usb driver?
do you have proper permissions to access usb? are you root/administrator?
i just tested my device, albeit a different configuration (6 keys and 1 knob) but same vid/pid and it works for both windows and linux.
if the above didn't solve it, could you provide the output from the lsusb command i asked above?
@RobertoMarcello is this still an issue?
Hello, sorry, i was busy. Yes, i still have the issue, the OS is windows, I'll send you the output after work.
First of all i want to thank you for taking the effort to make this!
But im facing the same issue on Windows. Ive installed the USB dev kit and my device VID = 1189 and PID = 8890 and upon running im getting No valid interface/endpoint combination found!
What info i can provide you?
@countnazgul thanks for reaching out. could you try setting RUST_LOG environment variable to debug and rerun and provide that output?
could you also provide the USB information of what the in/out endpoints are for this device? on linux, you can run
lsusb -s <your device> -v
on windows, you might need to navigate the GUI to find this information.
sorry, i do not have this device so need your help here
Thanks!
The debug log outputs:
for lsusb
ive downloaded USBDeview to get some info:
(the Properties
window is for the first one in the list)
could you try it like this and post the output? i have tried to make it smart enough to figure out the right endpoint addresses.
cargo run -- program -c example.ron
similar
it would be helpful if you could tell me what the IN endpoint address is for that device. i have a similar one (same vid/pid) but it is a 4 key instead of 3 key 1 knob and here is what mine looks like. my guess is that you only have an IN address as that is how mine is configured. the OUT would be used for reading the configuration (assuming it was supported)
at the bottom of this image, you can see the IN address is 0x81 (or 129 decimal). that is what i am looking for on your device.
@countnazgul i borrowed this device from a friend and tried it out and it works for me. however, i am on linux. have you tried it on linux and if so, do you get the same error? and by linux, not WSL
ill try to setup a windows VM in the coming days to test there as well
setup a windows environment and am still not able to reproduce the issue
@countnazgul @RobertoMarcello were either you able to test this out? i am still not able to reproduce the error that has been reported
Hello, I have a problem when I try to configure my keyboard, I'm getting the error: 'No valid interface/endpoint combination found!' My keyboard have 3 keys and 1 knob, the configuration is very simple. The keyboard id is 34960.
Here there is some other screenshot when I was trying to debug what the problem was