OneShot seems to be broken (Is it due to broken key switch?)

This is very similar to Oneshot is broken.

I compile OneShot using the ArduinoIDE. It compiles fine and I can flash the resulting firmware. I then can enter some text, including uppercase letters. However, OneShot behaviour does not work (Shift, A instead of Shift+A).

My Key_V has a broken key switch I did not fix so far. Most of the time the key switch does not send any signal. I disabled it using XXX. Could the broken OneShot be due to the disfunct switch? I would like to “repair” the plugin without having to repair the switch for the moment.

Does anyone know more about that OneShot behaviour?

Thank you very much.

It could be caused by the bad switch, but if it’s not causing any output (while you have it mapped to Key_V), that’s unlikely. It could be caused by an interaction with other plugins. Are you able to share your whole sketch? That would make debugging much easier.

Sorry, I wasn’t clear enough.

The problem remains even when I use the OneShot example layout.
My current layout can be found at https://github.com/MaxG87/Model01-Firmware. It too suffers from not working OneShot.

To give a bit of context: The now broken key switch worked before a vacation and did not after it. Before the vacation OneShot worked. After I adapted the layout for the broken switch, OneShot did not work anymore. Unfortunately, I did not pay attention on whether it worked in between.

I tried to fix the key switch by replacing the upper half. By this, I broke it completely. Now OneShot works again.

So I guess a broken key switch infers with OneShot even if it does not send key presses all the time.

1 Like

This makes sense. The faulty switch was still toggling its state, which ended up calling plugin event handlers with the value Key_NoKey, and OneShot wasn’t seeing that as a keypress, even though it would produce no output.