###### tags: `via` `qmk` `keyboard`
VIA notes
===
VIA advanced keycodes
---
Reference: https://docs.qmk.fm/#/keycodes
- `MT(MOD_LCTL,KC_ESC)`
- `MT(MOD_LSFT,KC_SPC)`
- `MT(MOD_LSFT,KC_LBRC)`
- `MT(MOD_LSFT,KC_RBRC)`
- `LT(3,KC_F)`
- `LT(2,KC_ENT)`
- `OSM(MOD_LSFT)`
- `G(KC_SPC)`
- `A(KC_SPC)`
VIA more layers
---
- add `config.h` and following line:
```c
#define DYNAMIC_KEYMAP_LAYER_COUNT 6
```
- source: [如何讓VIA支持超過4個層](https://www.zfrontier.com/app/flow/emZo1QgnZ1Jb)
- Max VIA layers of some keyboards
| keyboard name | Max VIA layers |
|:------------------------ |:-------------- |
| `dztech/dz60rgb_wkl/v2` | 6 |
| `dztech/dz60rgb_ansi/v2` | 6 |
| `planck/rev6` | 9 |
| `preonic/rev3` | 7 |
Two main parts make keyboard powered by VIA
---
1. a keymap file compile from `qmk_firmware` with `VIA_ENABLE = yes` in `rules.mk`
2. a via json file that can give VIA the information of the keyboard, such as:
- `vendorId`
- `productId`
- `matrix`
- `layouts`
- etc.