VIAL is software to configure keyboards like VIA. It is open sourced and has support for Combos, Tap Dance (and possible rotary encoders).
VIA firmware is supported. However won’t have any different functionality then VIA. (File → Download VIA definitions then Refresh button on the right)
To compile a VIAL firmware you need to jump through some hoops. I had a Ubuntu environment already for a different keyboard time vortex project. So for me, it wasn’t terrible for me took about 30~40 minutes after stumbling a few times. Firmware Size can be an issue so a few settings might need to be configured to reduce the size (the official VIAL guide was helpful from their website)
I don’t know if its the future but its nice to have options. The 40s group had some interesting thoughts with combos and tap dance I look forward to trying out.
Vial is decentralized: with Vial you do not have to submit your keyboard as a pull-request to any third-party repositories before it can be used in the GUI; instead, the keymap JSON definition is stored within the keyboard firmware and is retrieved at runtime.
I heard Vial has some cool feature like support for rotary encoder and I will switch to Vial soon.
Vial is decentralized: with Vial you do not have to submit your keyboard as a pull-request to any third-party repositories before it can be used in the GUI; instead, the keymap JSON definition is stored within the keyboard firmware and is retrieved at runtime.
if the JSON is saved in the firmware, meaning firmware size of Vial is bigger than VIA, isn’t it? though that would enable Vial software to detect the keyboard without using “Import Keymap”, am I right?
I already have the environment to build VIA firmware, is that ok for Vial?
I’m using MSYS2 MinGW 64-bit on Windows 10
YES you can use QMK MSYS. It took me a few tries to figure it out. I verified with reflashing my board and making sure it opened up properly in VIAL with the combos and tab dance tabs.
Rename the QMK version installed from MSYS (I called in qmk_firmwareMSYS), default setup location for me was <C:\users{Username}\qmk_firmware>
Move the uncompressed QMK Vial folder “vial-qmk-vial” to the location from the previous step
Rename the QMK VIAL folder “qmk_firmware”
Open QMK MSYS
Run [qmk setup]
If might say something about “not a git…”. In that case copy the “.git” folder from the original qmk_firmare folder into the vial one. That should clear that message.
Run [qmk setup] again. It should ask for cloning something starting with “chib…” (sorry forgot the whole name) anyway enter “y” and press enter
Should complete and you are ready to go.
I know it is a lot of steps but IMO this is easier then setting up Ubuntu IMO (I still am avoiding setting that up on my laptop). Hope this helps. The longest part is downloading/installing QMK MSYS and the vial firmware downloading and unzipping
Woo! glad to see vial getting some recognition on keebtalk, my PCB designer uses vial exclusively, and I love the ease of use of via combined with the full functionality of QMK. make your PCBs vial compatible folks!!!
I would have to disagree here with the VIAL UI. Its not as polished, but it’s a lot more intuitive.
When you go into the macro tab, you know you’re setting up a macro and you can’t assigned it to the keyboard from there. I have gotten myself pretty confused a couple of time which macro tab does what. It’s a minor inconvenience, but in VIAL feels more intuitive.
So this weekend I gave VIAL a try on the Manta75 firmware.
I also tried QMK MSYS that @Dave mentionned.
This version of MSYS makes the QMK setup very easy and idiot proof.
Back to VIAL, their website documentation is very well written.
As for making a VIAL firmware, if you already have a VIA firmware source code (that was my case), this is super fast to do.
It took me only half an hour to compile a working VIAL firmware, including:
Reading the documentation.
Download and install QMK MSYS.
Pull vial-qmk repo and setup it.
Copy my VIA firmware source code and adapt it to VIAL.
Compile it, flash it, and test it with VIAL software.
I was surprised by how fast, easy, and problem free it was !
The good things:
You don’t need to give the json file for your keyboard to be recognised by VIAL software.
You can still use VIA software with the same firmware (but need to give the json file) !
The interface is clear and not so ugly
The less good things:
Firmware flash usage is bigger.
Firmware EEPROM usage also bigger, had to put 3 layers intead of the 4 I had on the VIA only firmware.
Overall, super pumped by this firmware solution, I definitely recommend !!!
Just got my hand wired keyboard set up with Vial yesterday. I’m looking forward to exploring more of the functions. Took me a little while to get from kbfirmware.com sources (based on ~2017 QMK) to current QMK, to VIA, and finally to Vial. The Vial porting guide is very helpful, I’m just new to this and have no idea what I’m doing in regards to programming. I used a fresh install of Manjaro to do most of the work.
Full QMK functionality, VIA only supports basic remapping, RGB, and default layers, whereas vial supports encoders, tap dance, layer taps, and every other QMK feature under the sun.
Being new to QMK in general, I’m kind of overwhelmed with all the possibilities, and being able to open Vial and make changes on the fly has been a big help for getting familiar with different TapDance/ModTap functions and just being able to try different changes to my keymap without having to recompile and flash firmware every time.
same, I personally never used tap dance until I got a VIAL capable board, I was aware of it as a feature, but struggled to implement it on my keymaps with the QMK configurator
Can’t you do tap dance and layer taps in VIA with the ANY key? On my 60% boards, I always map my caps to ANY and then type in LT(KC_CAPS, 1). This way I have caps when tapping and Function (layer 1) when holding.