Vial Matrix Tester seems cannot be used
It seems Vial Matrix Tester is cannot be used. It doesn't respond to any input.
Pro Micro RP2040 (16M flash) rmk v0.4.1
good find, it's just not implemented yet :(
@HaoboGu any idea what pieces of the protocol need to be implemented in order for this to work? I'm not that familiar with Vial's protocol, and so far I haven't found the specific command(s) related to this feature.
@HaoboGu any idea what pieces of the protocol need to be implemented in order for this to work? I'm not that familiar with Vial's protocol, and so far I haven't found the specific command(s) related to this feature.
It's SwitchMatrixState event, the qmk implement this way. However, it's hard to do it in Rust. I don't know if there's a easy way to implement this 🥲
Is there a plan to support "NKRO"? Because that (if I know right) NKRO also needs the state storage of every keys, not only 6 + modifiers. But of course there is a difference: vial needs the phisical keys, while NKRO needs the "after mapped to FullSize" keys pressed state...
Also, I was wondering why register_keycode() has this strange code inside:
// First, find the key event slot according to the position
let slot = self.registered_keys.iter().enumerate().find_map(|(i, k)| {
if let Some((row, col)) = k {
if key_event.row == *row && key_event.col == *col {
return Some(i);
}
}
return None;
});
Why is that dealing with row/col positions??? Maybe to use it for VIAL matrix tester?
Adding a note here. Before we add support for vial matrix tester we need to implement the vial security feature, otherwise a malicious program can use the vial protocol to implement a keylogger
Closed by #516
Sorry for necrobump. I can confirm this issue has been fixed with the PR above, which is released in v0.8.0
https://github.com/user-attachments/assets/c5f69633-5132-4efc-84cd-410ea6717557
Thank you all!