Keyboard: VIA / VIAL support?

Hey all,

I was digging around out of interest to see how configuring the QMK keyboard works, and it seems… well, painful to say the least, or it is with the official QMK tools (which, have poor Linux support from what I’ve read).

I did run across a new project which is based on the QMK tools, but with greatly improved compatibility and with proper Linux support, but I’ve found out that, in order to use it, the keyboard firmware needs to support something called VIA.

So, does the keyboard (and numpad / RGB macropad) support VIA?

Here’s the project I speak of:

And some info about VIA:

As far as I understand it, you can just flash a VIA enabled firmware onto the keyboard, which if Framework doesn’t offer, the community will.

I can help with QMK and Vial questions.
To start with, Framework is building a firmware version that supports Via. I haven’t seen them say if that will be the default firmware they ship with. It may not be decided yet. If needed, you can flash over to it & then you can configure many basic functions in the Via web browser GUI. If you don’t want or need QMK’s more advanced things, then you don’t need to go further.

Are you talking about the QMK toolbox? You don’t need that. That’s just a helper for those that no experience doing anything in a terminal. Most Linux users can at least copy & paste commands into a terminal.

As I mentioned, Framework is building a firmware version that supports Via. But I think the information you’ve read about Vial is a little old. It used to be the case where Via support was enough, but since then, Vial has added features beyond what Via can do. To use Vial’s additional configuration options, Vial specific firmware is now needed. If Framework doesn’t create Vial specific firmware then the community probably will, porting over isn’t too hard. I’ve been tempted to do it, even though I haven’t even preordered a Framework-16 yet. :upside_down_face:

1 Like

Yes, the keyboard, numpad, and macropad modules support VIA.


Has it been decided if the Via firmware with be the default that devices are shipped with?

The firmware is open source and in active development here: GitHub - FrameworkComputer/qmk_firmware: Fork of QMK for the Framework Laptop 16

1 Like

What about Vial?

1 Like

There were a couple comments about Vial in this github issue VIA/Remap Support · Issue #14 · FrameworkComputer/qmk_firmware · GitHub
No response though.

I suspect that they are busy with everything concerning the Framework-16, so it might be hard to get an official Vial fw build.

I do think Vial is a much better option than Via, more configuration option than Via, and it just aligns better with Framework’s ethos. But Vial is less known, so fewer voices to let Framework know it’s better.

Fingers crossed for Vial support in 1 form or another.

Is there a website, by the way to compare all the features of QMK, VIA, and Vial?

I’m not aware of such website, but I just want to say VIA and Vial sit on top of QMK, not replace it.

That’s true, but a GUI like Vial and Via provide is an added feature. So a chart or list comparing the features of Vial, Via, and just QMK is valid.

1 Like

Plus VIAL requires custom firmware I’m pretty sure

Both VIA and Vial require modifications on top of the existing QMK firmware.

I found this, don’t know how good the source is:

No longer accurate.
It might have been accurate when he posted it, but it’s certainly outdated now. And he doesn’t say what “speed” is supposed to mean. All options preform just as fast. I presume he means time it takes to reconfigure, but just listing “speed” is much too unclear.

1 Like

I’m going to necro this thread, because I just got my framework today and RIGHT off the bat the features I’m using on my Ergodex a LOT. (Tapdance) don’t seem to be supported in VIA. (Well limited support KP_LSPO etc. Not arbitrary keybinds. Now I could try and compile flash things, but /sigh I found Vial with support, and if we map the JSON from VIA to Vial maybe maybe it will work? (The web does detect the macropad, just doesn’t have the JSON to load the view??? Maybe other issues…)

I’m top of this, is it my imagination, or is layer 0 reserved for the num pad? I don’t know what happened but the macropad boots onto layer 1, and I can’t swap to layer 0, no clue what is up, maybe I need to bind a reset keybinding…

Yeah, Via doesn’t have tapdance. Whereas Vial does have tapdance, plus combos, key overrides, and a range of qmk settings. I use Vial on my 15 button mouse, where I couldn’t even live without tapdance anymore.

You could enter your tapdances directly into qmk, but having it available in a GUI is much nicer.

For LSPO, you mean Space Cadet- Left Shift, Parenthesis Open? Haven’t used it myself, but Vial is supposed to support it, and tapdance can also do it.

Do you mean, like, sideloading a draft keyboard definition in Via? I’m afraid more is needed for Vial. Porting guide - Vial

Which keyboards were you looking to do? ANSI, ISO, keypad, macropad?
I made an ANSI vial layout .json which you could use, so you don’t have to do that part of the porting at least. Feature Request: Num Lock on boot, Schematics for Keyboards (to build vial support) - #7 by MJ1

Now, Framework has made a few changes in their QMK fork that you should bring over to a Vial build, but I don’t know how many are absolutely necessary. For example, there is Airplane mode button support which Framework added, but if you don’t use that, then you might not bother bringing it over.

You can’t switch layers at all? The macropad uses numlock. So if your OS turns numlock on or off for any reason, that will control your macropad layer. Perhaps that’s happening?

Otherwise, yeah, maybe Via’s memory got screwed up & it’s stuck. For resetting, note that Via does not accept the EE_CLR alias, you need to use the full QK_CLEAR_EEPROM.