Errors while enabling oneshot functionality


Trying to install oneshot functionality onto my Model 01 using the instructions from here but I am running into problems.

I was basically trying to copy the format of the oneshot code that needs to be inserted into my firmware from this example but Im running into the following errors.

Here is my code as currently stands.

Any ideas about what error I made and/or how to correct it?

Thanks. I have very little experience with programming and none with Arduino so Im a little in the deep end here.

(James Cash) #2

It looks like you need to define OSMALTCTRL before you use it in the keymap - probably put that in your enum on line 86.

(Gergely Nagy) #3

The error is about M(OSMALTCTRL) - this is not part of OneShot. M() stands for “Macro”, and judging by the name, it’s probably a key that sets Alt and Ctrl as one-shot at the same time (as in, if you pressed a oneshot alt and a oneshot control quickly after each other).

I’d suggest not doing that at first, and sticking to simple OneShots, and iterate from there.


Got rid of any reference to M(OSMALTCTRL) in my firmware code and tried to verify but a huge pile of errors were returned.

After the changes my code now looks like this.

Thanks for the feedback!


still trying to get this oneshot working. I started again and followed the instructions from I included all the code snippets in my code but im still getting a whole host of errors.

Can anyone suggest what’s going wrong?

(Gergely Nagy) #6

I’ll try to have a look at your sketch tomorrow.

(Brian Almeida) #7

You likely at least need a comma after “USBQuirks”, as it’s no longer the last item in the list.

Also, try just using “OneShot” instead of KALEIDOSCOPE_INIT_PLUGINS(OneShot), since you are in the KALEIDOSCOPE_INIT_PLUGINS() function already.


@thunderkeys i made the changes you suggested and now everything works. Thanks very much for taking the time to have a look at that. You have most likely have saved me hours of work there.

And thanks to everyone else for your input!