diff --git a/keyboards/planck/config.h b/keyboards/planck/config.h
index f7dce70207..71111eca21 100644
--- a/keyboards/planck/config.h
+++ b/keyboards/planck/config.h
@@ -21,8 +21,7 @@ along with this program. If not, see .
#include "config_common.h"
/* USB Device descriptor parameter */
-#define VENDOR_ID 0xFEED
-#define PRODUCT_ID 0x6060
+#define VENDOR_ID 0x03A8
#define MANUFACTURER OLKB
#define PRODUCT Planck
diff --git a/keyboards/planck/keymaps/via/keymap.c b/keyboards/planck/keymaps/via/keymap.c
new file mode 100644
index 0000000000..d469cd6aec
--- /dev/null
+++ b/keyboards/planck/keymaps/via/keymap.c
@@ -0,0 +1,97 @@
+/* Copyright 2015-2017 Jack Humbert
+ * Updated 2020 mixedfeelings
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+#include QMK_KEYBOARD_H
+
+#define LOWER FN_MO13
+#define RAISE FN_MO23
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ /* Qwerty
+ * ,-----------------------------------------------------------------------------------.
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Esc | A | S | D | F | G | H | J | K | L | ; | " |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
+ * `-----------------------------------------------------------------------------------'
+ */
+ [0] = LAYOUT_ortho_4x12 (
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+ KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_SFTENT,
+ KC_NO, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
+ ),
+
+ /* Lower
+ * ,-----------------------------------------------------------------------------------.
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+ [1] = LAYOUT_ortho_4x12 (
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
+ KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+ ),
+
+ /* Raise
+ * ,-----------------------------------------------------------------------------------.
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+ [2] = LAYOUT_ortho_4x12 (
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+ ),
+
+ /* Utility
+ * ,-----------------------------------------------------------------------------------.
+ * | |RESET |DEBUG | | | | | | | | |Del |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | |
+ * `-----------------------------------------------------------------------------------'
+ */
+ [3] = LAYOUT_ortho_4x12 (
+ KC_TRNS, RESET, DEBUG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ )
+
+};
diff --git a/keyboards/planck/keymaps/via/readme.md b/keyboards/planck/keymaps/via/readme.md
new file mode 100644
index 0000000000..a3cd80f1db
--- /dev/null
+++ b/keyboards/planck/keymaps/via/readme.md
@@ -0,0 +1,8 @@
+# VIA QWERTY layout for Planck Rev6
+A heavily simplified version of the Planck Layout that deals with VIA layer limit by stripping out Dvorak, Colemak, and Plover layouts as well as all internal audio, lighting, and mod switching keys.
+
+Predefined Layers:
+- 0 - Default Planck QWERTY keymap (minus lighting control, plus SHIFT ENTER)
+- 1 - Default Planck LOWER keymap
+- 2 - Default Planck RAISE keymap
+- 3 - UTILITY keymap (RESET, DEBUG)
diff --git a/keyboards/planck/keymaps/via/rules.mk b/keyboards/planck/keymaps/via/rules.mk
new file mode 100644
index 0000000000..36b7ba9cbc
--- /dev/null
+++ b/keyboards/planck/keymaps/via/rules.mk
@@ -0,0 +1,2 @@
+VIA_ENABLE = yes
+LTO_ENABLE = yes
diff --git a/keyboards/planck/light/config.h b/keyboards/planck/light/config.h
index c570ec7667..ccf9f09843 100644
--- a/keyboards/planck/light/config.h
+++ b/keyboards/planck/light/config.h
@@ -5,8 +5,7 @@
#undef PRODUCT
#define PRODUCT Planck Light
-#undef PRODUCT_ID
-#define PRODUCT_ID 0x6065
+#define PRODUCT_ID 0xBEA2
#define DEVICE_VER 0x0001
#undef MATRIX_ROW_PINS
diff --git a/keyboards/planck/rev1/config.h b/keyboards/planck/rev1/config.h
index 397887a73f..82f9acd8f9 100644
--- a/keyboards/planck/rev1/config.h
+++ b/keyboards/planck/rev1/config.h
@@ -1,3 +1,4 @@
#pragma once
+#define PRODUCT_ID 0xAE01
#define DEVICE_VER 0x0001
diff --git a/keyboards/planck/rev2/config.h b/keyboards/planck/rev2/config.h
index bed78bca3f..09ec6c4470 100644
--- a/keyboards/planck/rev2/config.h
+++ b/keyboards/planck/rev2/config.h
@@ -1,3 +1,4 @@
#pragma once
+#define PRODUCT_ID 0xAE01
#define DEVICE_VER 0x0002
diff --git a/keyboards/planck/rev3/config.h b/keyboards/planck/rev3/config.h
index fd6f0460e5..a57e42dfbc 100644
--- a/keyboards/planck/rev3/config.h
+++ b/keyboards/planck/rev3/config.h
@@ -1,3 +1,4 @@
#pragma once
+#define PRODUCT_ID 0xAE01
#define DEVICE_VER 0x0003
diff --git a/keyboards/planck/rev4/config.h b/keyboards/planck/rev4/config.h
index 572852bbf0..c802efa8d4 100644
--- a/keyboards/planck/rev4/config.h
+++ b/keyboards/planck/rev4/config.h
@@ -1,3 +1,4 @@
#pragma once
+#define PRODUCT_ID 0xAE01
#define DEVICE_VER 0x0004
diff --git a/keyboards/planck/rev5/config.h b/keyboards/planck/rev5/config.h
index 9369220780..c2ff086f33 100644
--- a/keyboards/planck/rev5/config.h
+++ b/keyboards/planck/rev5/config.h
@@ -1,3 +1,4 @@
#pragma once
+#define PRODUCT_ID 0xAE01
#define DEVICE_VER 0x0005
diff --git a/keyboards/planck/rev6/config.h b/keyboards/planck/rev6/config.h
index 055610c699..63c44001f6 100644
--- a/keyboards/planck/rev6/config.h
+++ b/keyboards/planck/rev6/config.h
@@ -19,6 +19,7 @@
#define REV6_CONFIG_H
/* USB Device descriptor parameter */
+#define PRODUCT_ID 0xA4F9
#define DEVICE_VER 0x0006
#undef MATRIX_ROWS