From 23f365b6014634bf9f67ed3515853bf8c4372615 Mon Sep 17 00:00:00 2001
From: Ryan <fauxpark@gmail.com>
Date: Thu, 28 Jul 2022 07:44:05 +1000
Subject: [PATCH] Move keyboard USB IDs and strings to data driven: F (#17816)

---
 keyboards/facew/config.h                     | 6 ------
 keyboards/facew/info.json                    | 6 ++++++
 keyboards/fallacy/config.h                   | 8 --------
 keyboards/fallacy/info.json                  | 6 ++++++
 keyboards/fc660c/config.h                    | 7 -------
 keyboards/fc660c/info.json                   | 8 +++++++-
 keyboards/fc980c/config.h                    | 7 -------
 keyboards/fc980c/info.json                   | 8 +++++++-
 keyboards/feels/feels65/config.h             | 7 -------
 keyboards/feels/feels65/info.json            | 6 ++++++
 keyboards/ffkeebs/puca/config.h              | 7 -------
 keyboards/ffkeebs/puca/info.json             | 6 ++++++
 keyboards/ffkeebs/siris/config.h             | 7 -------
 keyboards/ffkeebs/siris/info.json            | 6 ++++++
 keyboards/fjlabs/7vhotswap/config.h          | 7 -------
 keyboards/fjlabs/7vhotswap/info.json         | 8 +++++++-
 keyboards/fjlabs/ad65/config.h               | 7 -------
 keyboards/fjlabs/ad65/info.json              | 8 +++++++-
 keyboards/fjlabs/bks65/config.h              | 7 -------
 keyboards/fjlabs/bks65/info.json             | 6 ++++++
 keyboards/fjlabs/bks65solder/config.h        | 7 -------
 keyboards/fjlabs/bks65solder/info.json       | 6 ++++++
 keyboards/fjlabs/bolsa65/config.h            | 7 -------
 keyboards/fjlabs/bolsa65/info.json           | 6 ++++++
 keyboards/fjlabs/kf87/config.h               | 7 -------
 keyboards/fjlabs/kf87/info.json              | 8 +++++++-
 keyboards/fjlabs/kyuu/config.h               | 7 -------
 keyboards/fjlabs/kyuu/info.json              | 8 +++++++-
 keyboards/fjlabs/ldk65/config.h              | 7 -------
 keyboards/fjlabs/ldk65/info.json             | 6 ++++++
 keyboards/fjlabs/midway60/config.h           | 7 -------
 keyboards/fjlabs/midway60/info.json          | 6 ++++++
 keyboards/fjlabs/mk61rgbansi/config.h        | 7 -------
 keyboards/fjlabs/mk61rgbansi/info.json       | 6 ++++++
 keyboards/fjlabs/polaris/config.h            | 7 -------
 keyboards/fjlabs/polaris/info.json           | 8 +++++++-
 keyboards/fjlabs/ready100/config.h           | 7 -------
 keyboards/fjlabs/ready100/info.json          | 6 ++++++
 keyboards/fjlabs/sinanju/config.h            | 7 -------
 keyboards/fjlabs/sinanju/info.json           | 6 ++++++
 keyboards/fjlabs/solanis/config.h            | 7 -------
 keyboards/fjlabs/solanis/info.json           | 6 ++++++
 keyboards/fjlabs/swordfish/config.h          | 7 -------
 keyboards/fjlabs/swordfish/info.json         | 8 +++++++-
 keyboards/fjlabs/tf60ansi/config.h           | 7 -------
 keyboards/fjlabs/tf60ansi/info.json          | 6 ++++++
 keyboards/fjlabs/tf60v2/config.h             | 7 -------
 keyboards/fjlabs/tf60v2/info.json            | 8 +++++++-
 keyboards/fjlabs/tf65rgbv2/config.h          | 7 -------
 keyboards/fjlabs/tf65rgbv2/info.json         | 6 ++++++
 keyboards/fleuron/config.h                   | 7 -------
 keyboards/fleuron/info.json                  | 8 +++++++-
 keyboards/fluorite/config.h                  | 7 -------
 keyboards/fluorite/info.json                 | 6 ++++++
 keyboards/flx/lodestone/config.h             | 7 -------
 keyboards/flx/lodestone/info.json            | 8 +++++++-
 keyboards/flx/virgo/config.h                 | 7 -------
 keyboards/flx/virgo/info.json                | 8 +++++++-
 keyboards/flxlb/zplit/config.h               | 7 -------
 keyboards/flxlb/zplit/info.json              | 6 ++++++
 keyboards/flygone60/rev3/config.h            | 7 -------
 keyboards/flygone60/rev3/info.json           | 6 ++++++
 keyboards/foostan/cornelius/config.h         | 6 ------
 keyboards/foostan/cornelius/info.json        | 8 +++++++-
 keyboards/for_science/config.h               | 7 -------
 keyboards/for_science/info.json              | 6 ++++++
 keyboards/foxlab/key65/hotswap/config.h      | 7 -------
 keyboards/foxlab/key65/hotswap/info.json     | 6 ++++++
 keyboards/foxlab/key65/universal/config.h    | 7 -------
 keyboards/foxlab/key65/universal/info.json   | 6 ++++++
 keyboards/foxlab/leaf60/hotswap/config.h     | 7 -------
 keyboards/foxlab/leaf60/hotswap/info.json    | 8 +++++++-
 keyboards/foxlab/leaf60/universal/config.h   | 7 -------
 keyboards/foxlab/leaf60/universal/info.json  | 8 +++++++-
 keyboards/foxlab/time80/config.h             | 7 -------
 keyboards/foxlab/time80/info.json            | 8 +++++++-
 keyboards/foxlab/time_re/hotswap/config.h    | 7 -------
 keyboards/foxlab/time_re/hotswap/info.json   | 8 +++++++-
 keyboards/foxlab/time_re/universal/config.h  | 7 -------
 keyboards/foxlab/time_re/universal/info.json | 8 +++++++-
 keyboards/fr4/southpaw75/config.h            | 7 -------
 keyboards/fr4/southpaw75/info.json           | 6 ++++++
 keyboards/fr4/unix60/config.h                | 7 -------
 keyboards/fr4/unix60/info.json               | 6 ++++++
 keyboards/fractal/config.h                   | 7 -------
 keyboards/fractal/info.json                  | 6 ++++++
 keyboards/free_willy/config.h                | 7 -------
 keyboards/free_willy/info.json               | 6 ++++++
 keyboards/friedrich/config.h                 | 7 -------
 keyboards/friedrich/info.json                | 6 ++++++
 keyboards/frooastboard/nano/config.h         | 4 ----
 keyboards/frooastboard/nano/info.json        | 1 +
 keyboards/ft/mars80/config.h                 | 6 ------
 keyboards/ft/mars80/info.json                | 6 ++++++
 keyboards/function96/v1/config.h             | 8 --------
 keyboards/function96/v1/info.json            | 6 ++++++
 keyboards/function96/v2/config.h             | 8 --------
 keyboards/function96/v2/info.json            | 6 ++++++
 keyboards/funky40/config.h                   | 8 --------
 keyboards/funky40/info.json                  | 8 +++++++-
 100 files changed, 314 insertions(+), 367 deletions(-)

diff --git a/keyboards/facew/config.h b/keyboards/facew/config.h
index 14583dc8316..3a38df91302 100644
--- a/keyboards/facew/config.h
+++ b/keyboards/facew/config.h
@@ -19,12 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-#define VENDOR_ID       0x20A0
-#define PRODUCT_ID      0x422D
-#define DEVICE_VER      0x0200
-#define MANUFACTURER    SPRiT
-#define PRODUCT         FaceW
-
 #define RGBLED_NUM 16
 
 #define MATRIX_ROWS 8
diff --git a/keyboards/facew/info.json b/keyboards/facew/info.json
index b8b817970de..fc9b024c2f0 100644
--- a/keyboards/facew/info.json
+++ b/keyboards/facew/info.json
@@ -1,7 +1,13 @@
 {
   "keyboard_name": "FaceW",
+  "manufacturer": "SPRiT",
   "url": "",
   "maintainer": "qmk",
+  "usb": {
+    "vid": "0x20A0",
+    "pid": "0x422D",
+    "device_version": "2.0.0"
+  },
   "layouts": {
       "LAYOUT_all": {
           "layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
diff --git a/keyboards/fallacy/config.h b/keyboards/fallacy/config.h
index c99653f2c57..3bd00eebaec 100755
--- a/keyboards/fallacy/config.h
+++ b/keyboards/fallacy/config.h
@@ -17,14 +17,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter
- */
-#define VENDOR_ID       0xBF00
-#define PRODUCT_ID      0xBFFA
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    SheuBox
-#define PRODUCT         Fallacy
-
 /* key matrix size
  */
 #define MATRIX_ROWS 5
diff --git a/keyboards/fallacy/info.json b/keyboards/fallacy/info.json
index c1ec9328c06..c0a9293267a 100644
--- a/keyboards/fallacy/info.json
+++ b/keyboards/fallacy/info.json
@@ -1,6 +1,12 @@
 {
     "keyboard_name": "Fallacy", 
+    "manufacturer": "SheuBox",
     "maintainer": "Toraifu", 
+    "usb": {
+        "vid": "0xBF00",
+        "pid": "0xBFFA",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_alice_split_bs": {
             "layout": [
diff --git a/keyboards/fc660c/config.h b/keyboards/fc660c/config.h
index 7df5811f42d..82cbfe4c296 100644
--- a/keyboards/fc660c/config.h
+++ b/keyboards/fc660c/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x4853 /* HS */
-#define PRODUCT_ID      0x660C
-#define DEVICE_VER      0x0100
-#define MANUFACTURER    Hasu
-#define PRODUCT         FC660C
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 16
diff --git a/keyboards/fc660c/info.json b/keyboards/fc660c/info.json
index 2259156d0f1..a7f95eea1b6 100644
--- a/keyboards/fc660c/info.json
+++ b/keyboards/fc660c/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "fc660c", 
+    "keyboard_name": "FC660C", 
+    "manufacturer": "Hasu",
     "url": "", 
     "maintainer": "qmk", 
+    "usb": {
+        "vid": "0x4853",
+        "pid": "0x660C",
+        "device_version": "1.0.0"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"x":15.5, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"x":15.5, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.25}, {"x":14.5, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6}, {"label":"Alt", "x":9.75, "y":4, "w":1.25}, {"label":"Win", "x":11, "y":4, "w":1.25}, {"label":"Menu", "x":12.25, "y":4, "w":1.25}, {"x":13.5, "y":4}, {"x":14.5, "y":4}, {"x":15.5, "y":4}]
diff --git a/keyboards/fc980c/config.h b/keyboards/fc980c/config.h
index 250e7336a9a..99089e9e0aa 100644
--- a/keyboards/fc980c/config.h
+++ b/keyboards/fc980c/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x4853
-#define PRODUCT_ID      0x980C
-#define DEVICE_VER      0x0100
-#define MANUFACTURER    Hasu
-#define PRODUCT         FC980C
-
 /* Maximum dynamic keymap layers (constrained by EEPROM space) */
 #define DYNAMIC_KEYMAP_LAYER_COUNT 3
 
diff --git a/keyboards/fc980c/info.json b/keyboards/fc980c/info.json
index 681b2c15030..043df7a9440 100644
--- a/keyboards/fc980c/info.json
+++ b/keyboards/fc980c/info.json
@@ -1,7 +1,13 @@
 {
-  "keyboard_name": "fc980c",
+  "keyboard_name": "FC980C",
+  "manufacturer": "Hasu",
   "url": "",
   "maintainer": "qmk",
+  "usb": {
+    "vid": "0x4853",
+    "pid": "0x980C",
+    "device_version": "1.0.0"
+  },
   "layouts": {
     "LAYOUT": {
       "layout": [
diff --git a/keyboards/feels/feels65/config.h b/keyboards/feels/feels65/config.h
index f311a448343..13ce5c6afd4 100644
--- a/keyboards/feels/feels65/config.h
+++ b/keyboards/feels/feels65/config.h
@@ -17,13 +17,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x04D8
-#define PRODUCT_ID      0xE965
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    Swiftrax
-#define PRODUCT         Feels65
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 16
diff --git a/keyboards/feels/feels65/info.json b/keyboards/feels/feels65/info.json
index 2d00880d815..b295bf90425 100644
--- a/keyboards/feels/feels65/info.json
+++ b/keyboards/feels/feels65/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Feels65",
+    "manufacturer": "Swiftrax",
     "url": "https://github.com/swiftrax",
     "maintainer": "Swiftrax",
+    "usb": {
+        "vid": "0x04D8",
+        "pid": "0xE965",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [
diff --git a/keyboards/ffkeebs/puca/config.h b/keyboards/ffkeebs/puca/config.h
index e8e57c72e8b..779c0fc477c 100644
--- a/keyboards/ffkeebs/puca/config.h
+++ b/keyboards/ffkeebs/puca/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x4646 // FF
-#define PRODUCT_ID   0x0002
-#define DEVICE_VER   0x0001
-#define MANUFACTURER FootFingers
-#define PRODUCT      Puca
-
 #define MATRIX_ROWS 6
 #define MATRIX_COLS 5
                     //    0 , 1 , 2 , 3 , 4 , 5
diff --git a/keyboards/ffkeebs/puca/info.json b/keyboards/ffkeebs/puca/info.json
index 204f0ca497c..14f71ffee7c 100644
--- a/keyboards/ffkeebs/puca/info.json
+++ b/keyboards/ffkeebs/puca/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Puca",
+    "manufacturer": "FootFingers",
     "url": "https://ffkeebs.com/collections/puca/",
     "maintainer": "Sleepdealr",
+    "usb": {
+        "vid": "0x4646",
+        "pid": "0x0002",
+        "device_version": "0.0.1"
+    },
     "layout_aliases": {
         "LAYOUT": "LAYOUT_all"
     },
diff --git a/keyboards/ffkeebs/siris/config.h b/keyboards/ffkeebs/siris/config.h
index 6b7733b361f..f57d79b30d7 100644
--- a/keyboards/ffkeebs/siris/config.h
+++ b/keyboards/ffkeebs/siris/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x04D8
-#define PRODUCT_ID      0xE96C
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    Swiftrax
-#define PRODUCT         Siris
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 12
diff --git a/keyboards/ffkeebs/siris/info.json b/keyboards/ffkeebs/siris/info.json
index fe5161779f3..fc4d7f7f220 100644
--- a/keyboards/ffkeebs/siris/info.json
+++ b/keyboards/ffkeebs/siris/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Siris",
+    "manufacturer": "Swiftrax",
     "url": "https: //github.com/swiftrax",
     "maintainer": "Swiftrax",
+    "usb": {
+        "vid": "0x04D8",
+        "pid": "0xE96C",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [
diff --git a/keyboards/fjlabs/7vhotswap/config.h b/keyboards/fjlabs/7vhotswap/config.h
index 66ee195a582..bc03d3d79e3 100644
--- a/keyboards/fjlabs/7vhotswap/config.h
+++ b/keyboards/fjlabs/7vhotswap/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLaboratories
-#define PRODUCT_ID   0x0014 // 7V Hotswap
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLaboratories
-#define PRODUCT         7V Hotswap
-
 /* key matrix size */
 #define MATRIX_ROWS 6
 #define MATRIX_COLS 15
diff --git a/keyboards/fjlabs/7vhotswap/info.json b/keyboards/fjlabs/7vhotswap/info.json
index 07404031e3f..b577a68bd2f 100644
--- a/keyboards/fjlabs/7vhotswap/info.json
+++ b/keyboards/fjlabs/7vhotswap/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "7V Hotswap PCBs",
+    "keyboard_name": "7V Hotswap",
+    "manufacturer": "FJLaboratories",
     "url": "http://www.fjlaboratories.com/",
     "maintainer": "mrnoisytiger",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x0014",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_75_all": {
             "layout": [
diff --git a/keyboards/fjlabs/ad65/config.h b/keyboards/fjlabs/ad65/config.h
index 3bbf7a01d13..cbab1ed1111 100644
--- a/keyboards/fjlabs/ad65/config.h
+++ b/keyboards/fjlabs/ad65/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLaboratories
-#define PRODUCT_ID   0x0010 // AD65
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    Absolute Designs
-#define PRODUCT         AD65
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/fjlabs/ad65/info.json b/keyboards/fjlabs/ad65/info.json
index 36ed900b6c2..81a65cc2623 100644
--- a/keyboards/fjlabs/ad65/info.json
+++ b/keyboards/fjlabs/ad65/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "Absolute Designs 65",
+    "keyboard_name": "AD65",
+    "manufacturer": "Absolute Designs",
     "url": "https://arnoldh93.wixsite.com/website",
     "maintainer": "FJLaboratories",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x0010",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [
diff --git a/keyboards/fjlabs/bks65/config.h b/keyboards/fjlabs/bks65/config.h
index b1deccd4e1d..7f0fb50e3e8 100644
--- a/keyboards/fjlabs/bks65/config.h
+++ b/keyboards/fjlabs/bks65/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x1001 // BKS65
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         BKS65
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/fjlabs/bks65/info.json b/keyboards/fjlabs/bks65/info.json
index 8ffc39896fd..ba1bd5d9614 100644
--- a/keyboards/fjlabs/bks65/info.json
+++ b/keyboards/fjlabs/bks65/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "BKS65",
+    "manufacturer": "FJLabs",
     "url": "https://www.bolsakeyboardsupply.com",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x1001",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_65_ansi": {
             "layout": [
diff --git a/keyboards/fjlabs/bks65solder/config.h b/keyboards/fjlabs/bks65solder/config.h
index 5dff84a0c10..8d65b22434c 100644
--- a/keyboards/fjlabs/bks65solder/config.h
+++ b/keyboards/fjlabs/bks65solder/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x0099 // BKS65 Solder
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         BKS65 Solder
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/fjlabs/bks65solder/info.json b/keyboards/fjlabs/bks65solder/info.json
index 327c50da205..7528d94dae9 100644
--- a/keyboards/fjlabs/bks65solder/info.json
+++ b/keyboards/fjlabs/bks65solder/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "BKS65 Solder",
+    "manufacturer": "FJLabs",
     "url": "https://www.bolsakeyboardsupply.com",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x0099",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [
diff --git a/keyboards/fjlabs/bolsa65/config.h b/keyboards/fjlabs/bolsa65/config.h
index bf389ee445b..e3280216be8 100644
--- a/keyboards/fjlabs/bolsa65/config.h
+++ b/keyboards/fjlabs/bolsa65/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x0001 // Bolsa65
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         bolsa65 
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/fjlabs/bolsa65/info.json b/keyboards/fjlabs/bolsa65/info.json
index a1baffc056c..b9ce0d3507e 100644
--- a/keyboards/fjlabs/bolsa65/info.json
+++ b/keyboards/fjlabs/bolsa65/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Bolsa65",
+    "manufacturer": "FJLabs",
     "url": "https://www.bolsakeyboardsupply.com",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x0001",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_65_ansi_blocker": {
             "layout": [
diff --git a/keyboards/fjlabs/kf87/config.h b/keyboards/fjlabs/kf87/config.h
index b133e375bb1..9f4a3b239b1 100644
--- a/keyboards/fjlabs/kf87/config.h
+++ b/keyboards/fjlabs/kf87/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLaboratories
-#define PRODUCT_ID   0x0006 // KF87
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLaboratories
-#define PRODUCT         KF87
-
 /* key matrix size */
 #define MATRIX_ROWS 6
 #define MATRIX_COLS 17
diff --git a/keyboards/fjlabs/kf87/info.json b/keyboards/fjlabs/kf87/info.json
index 41542d166be..736bc2b991f 100644
--- a/keyboards/fjlabs/kf87/info.json
+++ b/keyboards/fjlabs/kf87/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "KF87 Replacement PCB's",
+    "keyboard_name": "KF87",
+    "manufacturer": "FJLaboratories",
     "url": "http://www.fjlaboratories.com/",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x0006",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_tkl_all": {
             "layout": [
diff --git a/keyboards/fjlabs/kyuu/config.h b/keyboards/fjlabs/kyuu/config.h
index 75f9643a79e..59ce1c61fa7 100644
--- a/keyboards/fjlabs/kyuu/config.h
+++ b/keyboards/fjlabs/kyuu/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x1012 // Kyuu Hotswap
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         Kyuu Hotswap
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/fjlabs/kyuu/info.json b/keyboards/fjlabs/kyuu/info.json
index 2bb1ebe8436..c1581574189 100644
--- a/keyboards/fjlabs/kyuu/info.json
+++ b/keyboards/fjlabs/kyuu/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "BKS65",
+    "keyboard_name": "Kyuu Hotswap",
+    "manufacturer": "FJLabs",
     "url": "https://www.bolsakeyboardsupply.com",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x1012",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_65_ansi_blocker_badge": {
             "layout": [
diff --git a/keyboards/fjlabs/ldk65/config.h b/keyboards/fjlabs/ldk65/config.h
index 15626c07008..b37f3718129 100644
--- a/keyboards/fjlabs/ldk65/config.h
+++ b/keyboards/fjlabs/ldk65/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x0002 // LDK65
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         LDK65
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/fjlabs/ldk65/info.json b/keyboards/fjlabs/ldk65/info.json
index ae5a0a5924b..562b7c5b6b0 100644
--- a/keyboards/fjlabs/ldk65/info.json
+++ b/keyboards/fjlabs/ldk65/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "LDK65",
+    "manufacturer": "FJLabs",
     "url": "https://www.bolsakeyboardsupply.com",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x0002",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_65_ansi": {
             "layout": [
diff --git a/keyboards/fjlabs/midway60/config.h b/keyboards/fjlabs/midway60/config.h
index f70a932a51f..9dde640beec 100644
--- a/keyboards/fjlabs/midway60/config.h
+++ b/keyboards/fjlabs/midway60/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x1002 // Midway60
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         Midway60
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 14
diff --git a/keyboards/fjlabs/midway60/info.json b/keyboards/fjlabs/midway60/info.json
index 251c57dc8e6..885b74cc5b5 100644
--- a/keyboards/fjlabs/midway60/info.json
+++ b/keyboards/fjlabs/midway60/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Midway60",
+    "manufacturer": "FJLabs",
     "url": "https://www.bolsakeyboardsupply.com",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x1002",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [
diff --git a/keyboards/fjlabs/mk61rgbansi/config.h b/keyboards/fjlabs/mk61rgbansi/config.h
index fdc85713447..54a787103ff 100644
--- a/keyboards/fjlabs/mk61rgbansi/config.h
+++ b/keyboards/fjlabs/mk61rgbansi/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x1011 // mk61-rgb-ansi
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    Mechanical Keyboards LLC
-#define PRODUCT         MK61-RGB-ANSI
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 14
diff --git a/keyboards/fjlabs/mk61rgbansi/info.json b/keyboards/fjlabs/mk61rgbansi/info.json
index 84cc8a46aed..67a8ae88603 100644
--- a/keyboards/fjlabs/mk61rgbansi/info.json
+++ b/keyboards/fjlabs/mk61rgbansi/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "MK61-RGB-ANSI",
+    "manufacturer": "Mechanical Keyboards LLC",
     "url": "https://www.fjlaboratories.com/",
     "maintainer": "Mechanical Keyboards, LLC",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x1011",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_60_ansi": {
             "layout": [
diff --git a/keyboards/fjlabs/polaris/config.h b/keyboards/fjlabs/polaris/config.h
index 6efae34205d..87d8423b9f8 100644
--- a/keyboards/fjlabs/polaris/config.h
+++ b/keyboards/fjlabs/polaris/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLaboratories
-#define PRODUCT_ID   0x9001 // Polaris HS and Solder
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLaboratories
-#define PRODUCT         Polaris
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 14
diff --git a/keyboards/fjlabs/polaris/info.json b/keyboards/fjlabs/polaris/info.json
index f2b1213e853..011776dc40f 100644
--- a/keyboards/fjlabs/polaris/info.json
+++ b/keyboards/fjlabs/polaris/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "Polaris Hotswap and Solder",
+    "keyboard_name": "Polaris",
+    "manufacturer": "FJLaboratories",
     "url": "http://www.fjlaboratories.com/projects/",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x9001",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [
diff --git a/keyboards/fjlabs/ready100/config.h b/keyboards/fjlabs/ready100/config.h
index 31adbd7f4be..8edf1c5d083 100644
--- a/keyboards/fjlabs/ready100/config.h
+++ b/keyboards/fjlabs/ready100/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x1003 // Ready100
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         Ready100
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 14
diff --git a/keyboards/fjlabs/ready100/info.json b/keyboards/fjlabs/ready100/info.json
index 2bc20ad2ffa..4f1762470dd 100644
--- a/keyboards/fjlabs/ready100/info.json
+++ b/keyboards/fjlabs/ready100/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Ready100",
+    "manufacturer": "FJLabs",
     "url": "https://www.ready100.com",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x1003",
+        "device_version": "0.0.1"
+    },
     "layout_aliases": {
         "LAYOUT_64key": "LAYOUT_64_ansi"
     },
diff --git a/keyboards/fjlabs/sinanju/config.h b/keyboards/fjlabs/sinanju/config.h
index c0b22d54839..01d81a2f3dc 100644
--- a/keyboards/fjlabs/sinanju/config.h
+++ b/keyboards/fjlabs/sinanju/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x1022 // Sinanju
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         Sinanju
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 14
diff --git a/keyboards/fjlabs/sinanju/info.json b/keyboards/fjlabs/sinanju/info.json
index e610e36a391..c458b9fd79c 100644
--- a/keyboards/fjlabs/sinanju/info.json
+++ b/keyboards/fjlabs/sinanju/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Sinanju",
+    "manufacturer": "FJLabs",
     "url": "https://www.fjlaboratories.com",
     "maintainer": "mrnoisytiger",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x1022",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_60_ansi_wkl": {
             "layout": [
diff --git a/keyboards/fjlabs/solanis/config.h b/keyboards/fjlabs/solanis/config.h
index 50649889fc4..40b9ad85255 100644
--- a/keyboards/fjlabs/solanis/config.h
+++ b/keyboards/fjlabs/solanis/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLaboratories
-#define PRODUCT_ID   0x0017 // Solanis
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLaboratories
-#define PRODUCT         Solanis
-
 /* key matrix size */
 #define MATRIX_ROWS 6
 #define MATRIX_COLS 17
diff --git a/keyboards/fjlabs/solanis/info.json b/keyboards/fjlabs/solanis/info.json
index d05857e0a86..6fb66c65742 100644
--- a/keyboards/fjlabs/solanis/info.json
+++ b/keyboards/fjlabs/solanis/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Solanis",
+    "manufacturer": "FJLaboratories",
     "url": "http://www.fjlaboratories.com/",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x0017",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [
diff --git a/keyboards/fjlabs/swordfish/config.h b/keyboards/fjlabs/swordfish/config.h
index 32bd17c0d15..ad184d17b67 100644
--- a/keyboards/fjlabs/swordfish/config.h
+++ b/keyboards/fjlabs/swordfish/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLaboratories
-#define PRODUCT_ID   0x0024 // Swordfish
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLaboratories
-#define PRODUCT         Swordfish
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/fjlabs/swordfish/info.json b/keyboards/fjlabs/swordfish/info.json
index 121bf04132c..bdb2e3a2c39 100644
--- a/keyboards/fjlabs/swordfish/info.json
+++ b/keyboards/fjlabs/swordfish/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "Swordfish PCBs",
+    "keyboard_name": "Swordfish",
+    "manufacturer": "FJLaboratories",
     "url": "http://www.fjlaboratories.com/",
     "maintainer": "mrnoisytiger",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x0024",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_alice_all": {
             "layout": [{"x":18.33, "y":0.142}, {"x":2.37, "y":0.27}, {"x":3.37, "y":0.27}, {"x":14.13, "y":0.27}, {"x":15.13, "y":0.27}, {"x":17.13, "y":0.27}, {"x":16.13, "y":0.27}, {"x":18.45, "y":1.142}, {"x":2.24, "y":1.28, "w":1.5}, {"x":3.74, "y":1.28}, {"x":13.75, "y":1.28}, {"x":14.75, "y":1.28}, {"x":15.75, "y":1.28}, {"x":16.75, "y":1.28, "w":1.5}, {"x":18.61, "y":2.142}, {"x":2.1, "y":2.28, "w":1.75}, {"x":3.85, "y":2.28}, {"x":14.16, "y":2.28}, {"x":15.16, "y":2.28}, {"x":16.16, "y":2.28, "w":2.25}, {"x":1.95, "y":3.28, "w":2.25}, {"x":4.2, "y":3.28}, {"x":13.81, "y":3.28}, {"x":14.81, "y":3.28}, {"x":15.81, "y":3.28, "w":1.75}, {"x":17.77, "y":3.48}, {"x":1.95, "y":4.28, "w":1.25}, {"x":3.2, "y":4.28, "w":1.25}, {"x":14.06, "y":4.28, "w":1.25}, {"x":15.31, "y":4.28, "w":1.25}, {"x":16.77, "y":4.475}, {"x":17.77, "y":4.475}, {"x":18.77, "y":4.475}, {"x":0, "y":5.28}, {"x":1, "y":5.28}, {"x":2, "y":5.28}, {"x":3, "y":5.28}, {"x":4, "y":5.28}, {"x":0.5, "y":6.28}, {"x":1.5, "y":6.28}, {"x":2.5, "y":6.28}, {"x":3.5, "y":6.28}, {"x":0.75, "y":7.28}, {"x":1.75, "y":7.28}, {"x":2.75, "y":7.28}, {"x":3.75, "y":7.28}, {"x":1.25, "y":8.28}, {"x":2.25, "y":8.28}, {"x":3.25, "y":8.28}, {"x":4.25, "y":8.28}, {"x":1.25, "y":9.28, "w":1.25}, {"x":2.5, "y":9.28, "w":2.75}, {"x":-4.5, "y":10.08}, {"x":-3.5, "y":10.08}, {"x":-2.5, "y":10.08}, {"x":-1.5, "y":10.08}, {"x":-5.0, "y":11.08}, {"x":-4, "y":11.08}, {"x":-3.0, "y":11.08}, {"x":-2, "y":11.08}, {"x":-4.75, "y":12.08}, {"x":-3.75, "y":12.08}, {"x":-2.75, "y":12.08}, {"x":-1.75, "y":12.08}, {"x":-5.25, "y":13.08}, {"x":-4.25, "y":13.08}, {"x":-3.25, "y":13.08}, {"x":-2.25, "y":13.08}, {"x":-5.25, "y":14.08, "w":2.25}, {"x":-3.0, "y":14.08, "w":1.25}]
diff --git a/keyboards/fjlabs/tf60ansi/config.h b/keyboards/fjlabs/tf60ansi/config.h
index 1b19a0e2ecc..54a787103ff 100644
--- a/keyboards/fjlabs/tf60ansi/config.h
+++ b/keyboards/fjlabs/tf60ansi/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x1004 // tf60ansi
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         TF60ANSI
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 14
diff --git a/keyboards/fjlabs/tf60ansi/info.json b/keyboards/fjlabs/tf60ansi/info.json
index 4ed7aa91dcf..46c386ca5f8 100644
--- a/keyboards/fjlabs/tf60ansi/info.json
+++ b/keyboards/fjlabs/tf60ansi/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "TF60 ANSI",
+    "manufacturer": "FJLabs",
     "url": "https://www.fjlaboratories.com/",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x1004",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_60_ansi": {
             "layout": [
diff --git a/keyboards/fjlabs/tf60v2/config.h b/keyboards/fjlabs/tf60v2/config.h
index 0c1a0694646..54a787103ff 100644
--- a/keyboards/fjlabs/tf60v2/config.h
+++ b/keyboards/fjlabs/tf60v2/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x1005 // tf60v2
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         TF60v2
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 14
diff --git a/keyboards/fjlabs/tf60v2/info.json b/keyboards/fjlabs/tf60v2/info.json
index c2d6c028725..989f18a0016 100644
--- a/keyboards/fjlabs/tf60v2/info.json
+++ b/keyboards/fjlabs/tf60v2/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "TF60 RGB V2",
+    "keyboard_name": "TF60 V2",
+    "manufacturer": "FJLabs",
     "url": "https://www.fjlaboratories.com/",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x1005",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_60_ansi_arrow": {
             "layout": [
diff --git a/keyboards/fjlabs/tf65rgbv2/config.h b/keyboards/fjlabs/tf65rgbv2/config.h
index 111b2c89286..4a71d1dac7e 100644
--- a/keyboards/fjlabs/tf65rgbv2/config.h
+++ b/keyboards/fjlabs/tf65rgbv2/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7074 // FJLabs
-#define PRODUCT_ID   0x1007 // tf60v2
-#define DEVICE_VER   0x0001 // Version 1
-#define MANUFACTURER    FJLabs
-#define PRODUCT         TF65RGBv2
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/fjlabs/tf65rgbv2/info.json b/keyboards/fjlabs/tf65rgbv2/info.json
index fe91dcaec54..3da715d5fa4 100644
--- a/keyboards/fjlabs/tf65rgbv2/info.json
+++ b/keyboards/fjlabs/tf65rgbv2/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "TF65 RGB V2",
+    "manufacturer": "FJLabs",
     "url": "https://www.fjlaboratories.com/",
     "maintainer": "FJLabs",
+    "usb": {
+        "vid": "0x7074",
+        "pid": "0x1007",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_65_ansi": {
             "layout": [
diff --git a/keyboards/fleuron/config.h b/keyboards/fleuron/config.h
index 24212bfdc1e..3e7da105032 100644
--- a/keyboards/fleuron/config.h
+++ b/keyboards/fleuron/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0xFEED
-#define PRODUCT_ID      0x6060
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    You
-#define PRODUCT         Fleuron v1
-
 /* key matrix size */
 #define MATRIX_ROWS 6
 #define MATRIX_COLS 16
diff --git a/keyboards/fleuron/info.json b/keyboards/fleuron/info.json
index 2bb31b852b4..106c3eba5e6 100644
--- a/keyboards/fleuron/info.json
+++ b/keyboards/fleuron/info.json
@@ -1,6 +1,12 @@
 {
-    "keyboard_name": "Fleuron v1.0", 
+    "keyboard_name": "Fleuron v1", 
+    "manufacturer": "Fleuron",
     "maintainer": "qmk", 
+    "usb": {
+        "vid": "0xFEED",
+        "pid": "0x6060",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_ortho_6x16": {
             "layout": [
diff --git a/keyboards/fluorite/config.h b/keyboards/fluorite/config.h
index 397fdaaebf3..b414389c0be 100644
--- a/keyboards/fluorite/config.h
+++ b/keyboards/fluorite/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0xFEED
-#define PRODUCT_ID      0x0000
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    ihotsuno
-#define PRODUCT         fluorite
-
 /* key matrix size */
 #define MATRIX_ROWS 16
 #define MATRIX_COLS 9
diff --git a/keyboards/fluorite/info.json b/keyboards/fluorite/info.json
index d816a6b2513..04d3fa5c537 100644
--- a/keyboards/fluorite/info.json
+++ b/keyboards/fluorite/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "fluorite",
+    "manufacturer": "ihotsuno",
     "url": "",
     "maintainer": "ihotsuno, qmk",
+    "usb": {
+        "vid": "0xFEED",
+        "pid": "0x0000",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [
diff --git a/keyboards/flx/lodestone/config.h b/keyboards/flx/lodestone/config.h
index d4238c8eb80..844e769a6c6 100644
--- a/keyboards/flx/lodestone/config.h
+++ b/keyboards/flx/lodestone/config.h
@@ -18,13 +18,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x4658 //FX
-#define PRODUCT_ID      0x4C53 //LS
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    FLX
-#define PRODUCT         Lodestone
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 16
diff --git a/keyboards/flx/lodestone/info.json b/keyboards/flx/lodestone/info.json
index 8053aa36d46..e68241722f3 100644
--- a/keyboards/flx/lodestone/info.json
+++ b/keyboards/flx/lodestone/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "lodestone",
+    "keyboard_name": "Lodestone",
+    "manufacturer": "FLX",
     "url": "https://prototypist.net/",
     "maintainer": "Flexerm",
+    "usb": {
+        "vid": "0x4658",
+        "pid": "0x4C53",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [
diff --git a/keyboards/flx/virgo/config.h b/keyboards/flx/virgo/config.h
index 8ceb1e4ed15..facc3923586 100644
--- a/keyboards/flx/virgo/config.h
+++ b/keyboards/flx/virgo/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x4658 //FX
-#define PRODUCT_ID      0x5647 //VG
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    FLX
-#define PRODUCT         Virgo
-
 /* key matrix size */
 #define MATRIX_ROWS 12
 #define MATRIX_COLS 9
diff --git a/keyboards/flx/virgo/info.json b/keyboards/flx/virgo/info.json
index 5184e4fb15f..6ae793eefbf 100644
--- a/keyboards/flx/virgo/info.json
+++ b/keyboards/flx/virgo/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "FLX Virgo",
+    "keyboard_name": "Virgo",
+    "manufacturer": "FLX",
     "url": "",
     "maintainer": "mechmerlin",
+    "usb": {
+        "vid": "0x4658",
+        "pid": "0x5647",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [
diff --git a/keyboards/flxlb/zplit/config.h b/keyboards/flxlb/zplit/config.h
index 74c7339bdce..c45931fd320 100644
--- a/keyboards/flxlb/zplit/config.h
+++ b/keyboards/flxlb/zplit/config.h
@@ -20,13 +20,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x7076
-#define PRODUCT_ID      0x0001
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    fluxlab
-#define PRODUCT         zplit
-
 /* key matrix size */
 // Rows are doubled-up
 #define MATRIX_ROWS 8
diff --git a/keyboards/flxlb/zplit/info.json b/keyboards/flxlb/zplit/info.json
index e21f740f35d..4687f16513d 100644
--- a/keyboards/flxlb/zplit/info.json
+++ b/keyboards/flxlb/zplit/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "zplit",
+    "manufacturer": "fluxlab",
     "url": "https://github.com/cccywj/qmk_firmware",
     "maintainer": "flxlb",
+    "usb": {
+        "vid": "0x7076",
+        "pid": "0x0001",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [
diff --git a/keyboards/flygone60/rev3/config.h b/keyboards/flygone60/rev3/config.h
index b670def3386..e75eb646173 100644
--- a/keyboards/flygone60/rev3/config.h
+++ b/keyboards/flygone60/rev3/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x7877
-#define PRODUCT_ID   0x0001
-#define DEVICE_VER   0x0003
-#define MANUFACTURER ShandonCodes
-#define PRODUCT      Flygone60 Rev3
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 14
diff --git a/keyboards/flygone60/rev3/info.json b/keyboards/flygone60/rev3/info.json
index fdae44c6b44..dc446d5efc2 100644
--- a/keyboards/flygone60/rev3/info.json
+++ b/keyboards/flygone60/rev3/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Flygone60 Rev3",
+    "manufacturer": "ShandonCodes",
     "url": "https://qmk.fm/keyboards/",
     "maintainer": "ShandonCodes",
+    "usb": {
+        "vid": "0x7877",
+        "pid": "0x0001",
+        "device_version": "0.0.3"
+    },
     "layouts": {
         "LAYOUT_60_ansi_arrow": {
             "layout": [
diff --git a/keyboards/foostan/cornelius/config.h b/keyboards/foostan/cornelius/config.h
index a3e784150f1..fa3493e4558 100644
--- a/keyboards/foostan/cornelius/config.h
+++ b/keyboards/foostan/cornelius/config.h
@@ -19,12 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x3265
-#define PRODUCT_ID   0x0005
-#define DEVICE_VER   0x0001
-#define MANUFACTURER Yushakobo
-#define PRODUCT      Cornelius
 /* key matrix size */
 #define MATRIX_ROWS 4
 #define MATRIX_COLS 12
diff --git a/keyboards/foostan/cornelius/info.json b/keyboards/foostan/cornelius/info.json
index adb20ded531..fa7a40b5aa1 100644
--- a/keyboards/foostan/cornelius/info.json
+++ b/keyboards/foostan/cornelius/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name":"cornelius",
+    "keyboard_name":"Cornelius",
+    "manufacturer":"Yushakobo",
     "url":"",
     "maintainer":"foostan",
+    "usb": {
+        "vid": "0x3265",
+        "pid": "0x0005",
+        "device_version": "0.0.1"
+    },
     "layouts":{
         "LAYOUT":{
             "layout":[
diff --git a/keyboards/for_science/config.h b/keyboards/for_science/config.h
index 9c2f484dc91..32c335bbb32 100644
--- a/keyboards/for_science/config.h
+++ b/keyboards/for_science/config.h
@@ -16,13 +16,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0xFEED
-#define PRODUCT_ID      0xF22C
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    Peej
-#define PRODUCT         For Science
-
 /* key matrix size */
 // Rows are doubled-up
 #define MATRIX_ROWS 10
diff --git a/keyboards/for_science/info.json b/keyboards/for_science/info.json
index 1dd1f6cd8f9..9d2808c9c51 100644
--- a/keyboards/for_science/info.json
+++ b/keyboards/for_science/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "For Science",
+    "manufacturer": "Peej",
     "url": "https://github.com/peej/for-science-keyboard",
     "maintainer": "qmk",
+    "usb": {
+        "vid": "0xFEED",
+        "pid": "0xF22C",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_split_4x5_3": {
             "layout": [
diff --git a/keyboards/foxlab/key65/hotswap/config.h b/keyboards/foxlab/key65/hotswap/config.h
index 8c0e5a1b9eb..6ffaa1b3316 100644
--- a/keyboards/foxlab/key65/hotswap/config.h
+++ b/keyboards/foxlab/key65/hotswap/config.h
@@ -18,13 +18,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x464C // "FL"
-#define PRODUCT_ID      0x0003
-#define DEVICE_VER      0x0001
-#define MANUFACTURER Fox Lab
-#define PRODUCT Key 65 Hotswap
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/foxlab/key65/hotswap/info.json b/keyboards/foxlab/key65/hotswap/info.json
index 4c43f13c80a..e6615681efa 100644
--- a/keyboards/foxlab/key65/hotswap/info.json
+++ b/keyboards/foxlab/key65/hotswap/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Key 65 Hotswap",
+    "manufacturer": "Fox Lab",
     "url": "",
     "maintainer": "qmk",
+    "usb": {
+        "vid": "0x464C",
+        "pid": "0x0003",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [
diff --git a/keyboards/foxlab/key65/universal/config.h b/keyboards/foxlab/key65/universal/config.h
index 44911bed776..b02b60698dc 100644
--- a/keyboards/foxlab/key65/universal/config.h
+++ b/keyboards/foxlab/key65/universal/config.h
@@ -18,13 +18,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x464C // "FL"
-#define PRODUCT_ID      0x0004
-#define DEVICE_VER      0x0001
-#define MANUFACTURER Fox Lab
-#define PRODUCT Key 65 Universal
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 16
diff --git a/keyboards/foxlab/key65/universal/info.json b/keyboards/foxlab/key65/universal/info.json
index d1303b6a47f..3aa36fcc624 100644
--- a/keyboards/foxlab/key65/universal/info.json
+++ b/keyboards/foxlab/key65/universal/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Key 65 Universal",
+    "manufacturer": "Fox Lab",
     "url": "",
     "maintainer": "qmk",
+    "usb": {
+        "vid": "0x464C",
+        "pid": "0x0004",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_65_ansi_blocker_split_bs": {
             "layout": [
diff --git a/keyboards/foxlab/leaf60/hotswap/config.h b/keyboards/foxlab/leaf60/hotswap/config.h
index f224957c59c..a0eb1b93e6a 100644
--- a/keyboards/foxlab/leaf60/hotswap/config.h
+++ b/keyboards/foxlab/leaf60/hotswap/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x464C // "FL"
-#define PRODUCT_ID      0x0001
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    Fox Lab
-#define PRODUCT         Leaf 60 Hotswap
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/foxlab/leaf60/hotswap/info.json b/keyboards/foxlab/leaf60/hotswap/info.json
index 1dd5e47b2f6..b577d864dd5 100644
--- a/keyboards/foxlab/leaf60/hotswap/info.json
+++ b/keyboards/foxlab/leaf60/hotswap/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "Fox Lab Hotswap Leaf60", 
+    "keyboard_name": "Leaf 60 Hotswap", 
+    "manufacturer": "Fox Lab",
     "url": "", 
     "maintainer": "qmk", 
+    "usb": {
+        "vid": "0x464C",
+        "pid": "0x0001",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_60_tsangan_hhkb": {
             "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":0, "y":3, "w":2.25}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":0, "y":4, "w":1.5}, {"x":1.5, "y":4}, {"x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"x":11, "y":4, "w":1.5}, {"x":12.5, "y":4}, {"x":13.5, "y":4, "w":1.5}]
diff --git a/keyboards/foxlab/leaf60/universal/config.h b/keyboards/foxlab/leaf60/universal/config.h
index d25e1453613..270cf0ad6e7 100644
--- a/keyboards/foxlab/leaf60/universal/config.h
+++ b/keyboards/foxlab/leaf60/universal/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x464C // "FL"
-#define PRODUCT_ID      0x0002
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    Fox Lab
-#define PRODUCT         Leaf 60 Universal
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 15
diff --git a/keyboards/foxlab/leaf60/universal/info.json b/keyboards/foxlab/leaf60/universal/info.json
index 25687994a92..2675639455e 100644
--- a/keyboards/foxlab/leaf60/universal/info.json
+++ b/keyboards/foxlab/leaf60/universal/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "Fox Lab Leaf60", 
+    "keyboard_name": "Leaf 60 Universal", 
+    "manufacturer": "Fox Lab",
     "url": "", 
     "maintainer": "qmk", 
+    "usb": {
+        "vid": "0x464C",
+        "pid": "0x0002",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":2.25}, {"x":6, "y":4, "w":1.25}, {"x":7.25, "y":4, "w":2.75}, {"x":10, "y":4, "w":1.25}, {"x":11.25, "y":4, "w":1.25}, {"x":12.5, "y":4, "w":1.25}, {"x":13.75, "y":4, "w":1.25}]
diff --git a/keyboards/foxlab/time80/config.h b/keyboards/foxlab/time80/config.h
index 27013c5c676..7e7e521f27a 100644
--- a/keyboards/foxlab/time80/config.h
+++ b/keyboards/foxlab/time80/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x464C // "FL"
-#define PRODUCT_ID   0x0005
-#define DEVICE_VER   0x0001
-#define MANUFACTURER Fox Lab
-#define PRODUCT      Time80
-
 /* key matrix size */
 #define MATRIX_ROWS 7
 #define MATRIX_COLS 15
diff --git a/keyboards/foxlab/time80/info.json b/keyboards/foxlab/time80/info.json
index b17866391e9..5173c152b22 100644
--- a/keyboards/foxlab/time80/info.json
+++ b/keyboards/foxlab/time80/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "Fox Lab Time 80",
+    "keyboard_name": "Time80",
+    "manufacturer": "Fox Lab",
     "url": "",
     "maintainer": "lukelex",
+    "usb": {
+        "vid": "0x464C",
+        "pid": "0x0005",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [
diff --git a/keyboards/foxlab/time_re/hotswap/config.h b/keyboards/foxlab/time_re/hotswap/config.h
index 8ca58e4341f..1b3d814c66c 100644
--- a/keyboards/foxlab/time_re/hotswap/config.h
+++ b/keyboards/foxlab/time_re/hotswap/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x464C // "FL"
-#define PRODUCT_ID      0x0006
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    Fox Lab
-#define PRODUCT         Time 80 Reforged
-
 /* key matrix size */
 #define MATRIX_ROWS 6
 #define MATRIX_COLS 17
diff --git a/keyboards/foxlab/time_re/hotswap/info.json b/keyboards/foxlab/time_re/hotswap/info.json
index bf4a81873d2..3479c1e33e7 100644
--- a/keyboards/foxlab/time_re/hotswap/info.json
+++ b/keyboards/foxlab/time_re/hotswap/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "Time RE Hotswap",
+    "keyboard_name": "Time 80 Reforged",
+    "manufacturer": "Fox Lab",
     "url": "",
     "maintainer": "qmk",
+    "usb": {
+        "vid": "0x464C",
+        "pid": "0x0006",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [
diff --git a/keyboards/foxlab/time_re/universal/config.h b/keyboards/foxlab/time_re/universal/config.h
index 8ca58e4341f..1b3d814c66c 100644
--- a/keyboards/foxlab/time_re/universal/config.h
+++ b/keyboards/foxlab/time_re/universal/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x464C // "FL"
-#define PRODUCT_ID      0x0006
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    Fox Lab
-#define PRODUCT         Time 80 Reforged
-
 /* key matrix size */
 #define MATRIX_ROWS 6
 #define MATRIX_COLS 17
diff --git a/keyboards/foxlab/time_re/universal/info.json b/keyboards/foxlab/time_re/universal/info.json
index 9161a345aa0..3479c1e33e7 100644
--- a/keyboards/foxlab/time_re/universal/info.json
+++ b/keyboards/foxlab/time_re/universal/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "Time RE Universal",
+    "keyboard_name": "Time 80 Reforged",
+    "manufacturer": "Fox Lab",
     "url": "",
     "maintainer": "qmk",
+    "usb": {
+        "vid": "0x464C",
+        "pid": "0x0006",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [
diff --git a/keyboards/fr4/southpaw75/config.h b/keyboards/fr4/southpaw75/config.h
index 3dd93ec540d..d96d5bc20c6 100644
--- a/keyboards/fr4/southpaw75/config.h
+++ b/keyboards/fr4/southpaw75/config.h
@@ -18,13 +18,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0xFEED
-#define PRODUCT_ID      0x350C
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    kelvinhall05
-#define PRODUCT         Southpaw75
-
 /* key matrix size */
 #define MATRIX_ROWS 9
 #define MATRIX_COLS 9
diff --git a/keyboards/fr4/southpaw75/info.json b/keyboards/fr4/southpaw75/info.json
index c5c61232218..11d4031769a 100644
--- a/keyboards/fr4/southpaw75/info.json
+++ b/keyboards/fr4/southpaw75/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Southpaw75", 
+    "manufacturer": "kelvinhall05",
     "url": "https://github.com/kelvinhall05/southpaw75", 
     "maintainer": "kelvinhall05", 
+    "usb": {
+        "vid": "0xFEED",
+        "pid": "0x350C",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [{"label":"Num Lock", "x":0, "y":0}, {"label":"/", "x":1, "y":0}, {"label":"*", "x":2, "y":0}, {"label":"-", "x":3, "y":0}, {"label":"~", "x":4, "y":0}, {"label":"!", "x":5, "y":0}, {"label":"@", "x":6, "y":0}, {"label":"#", "x":7, "y":0}, {"label":"$", "x":8, "y":0}, {"label":"%", "x":9, "y":0}, {"label":"^", "x":10, "y":0}, {"label":"&", "x":11, "y":0}, {"label":"*", "x":12, "y":0}, {"label":"(", "x":13, "y":0}, {"label":")", "x":14, "y":0}, {"label":"_", "x":15, "y":0}, {"label":"+", "x":16, "y":0}, {"label":"Backspace", "x":17, "y":0, "w":2}, {"label":"7", "x":0, "y":1}, {"label":"8", "x":1, "y":1}, {"label":"9", "x":2, "y":1}, {"label":"+", "x":3, "y":1, "h":2}, {"label":"Tab", "x":4, "y":1, "w":1.5}, {"label":"Q", "x":5.5, "y":1}, {"label":"W", "x":6.5, "y":1}, {"label":"E", "x":7.5, "y":1}, {"label":"R", "x":8.5, "y":1}, {"label":"T", "x":9.5, "y":1}, {"label":"Y", "x":10.5, "y":1}, {"label":"U", "x":11.5, "y":1}, {"label":"I", "x":12.5, "y":1}, {"label":"O", "x":13.5, "y":1}, {"label":"P", "x":14.5, "y":1}, {"label":"{", "x":15.5, "y":1}, {"label":"}", "x":16.5, "y":1}, {"label":"|", "x":17.5, "y":1, "w":1.5}, {"label":"4", "x":0, "y":2}, {"label":"5", "x":1, "y":2}, {"label":"6", "x":2, "y":2}, {"label":"Caps Lock", "x":4, "y":2, "w":1.75}, {"label":"A", "x":5.75, "y":2}, {"label":"S", "x":6.75, "y":2}, {"label":"D", "x":7.75, "y":2}, {"label":"F", "x":8.75, "y":2}, {"label":"G", "x":9.75, "y":2}, {"label":"H", "x":10.75, "y":2}, {"label":"J", "x":11.75, "y":2}, {"label":"K", "x":12.75, "y":2}, {"label":"L", "x":13.75, "y":2}, {"label":":", "x":14.75, "y":2}, {"label":"\"", "x":15.75, "y":2}, {"label":"Enter", "x":16.75, "y":2, "w":2.25}, {"label":"1", "x":0, "y":3}, {"label":"2", "x":1, "y":3}, {"label":"3", "x":2, "y":3}, {"label":"Enter", "x":3, "y":3, "h":2}, {"label":"Shift", "x":4, "y":3, "w":2.25}, {"label":"Z", "x":6.25, "y":3}, {"label":"X", "x":7.25, "y":3}, {"label":"C", "x":8.25, "y":3}, {"label":"V", "x":9.25, "y":3}, {"label":"B", "x":10.25, "y":3}, {"label":"N", "x":11.25, "y":3}, {"label":"M", "x":12.25, "y":3}, {"label":"<", "x":13.25, "y":3}, {"label":">", "x":14.25, "y":3}, {"label":"?", "x":15.25, "y":3}, {"label":"Shift", "x":16.25, "y":3, "w":2.75}, {"label":"0", "x":0, "y":4, "w":2}, {"label":".", "x":2, "y":4}, {"label":"Ctrl", "x":4, "y":4, "w":1.25}, {"label":"Win", "x":5.25, "y":4, "w":1.25}, {"label":"Alt", "x":6.5, "y":4, "w":1.25}, {"x":7.75, "y":4, "w":6.25}, {"label":"Alt", "x":14, "y":4, "w":1.25}, {"label":"Win", "x":15.25, "y":4, "w":1.25}, {"label":"Menu", "x":16.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":17.75, "y":4, "w":1.25}]
diff --git a/keyboards/fr4/unix60/config.h b/keyboards/fr4/unix60/config.h
index 53d2104fdde..03ae2c509d9 100644
--- a/keyboards/fr4/unix60/config.h
+++ b/keyboards/fr4/unix60/config.h
@@ -19,13 +19,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0x4652 // "FR"
-#define PRODUCT_ID      0x5558 // "UX"
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    FR4Boards
-#define PRODUCT         unix60
-
 /* key matrix size */
 #define MATRIX_ROWS 7
 #define MATRIX_COLS 9
diff --git a/keyboards/fr4/unix60/info.json b/keyboards/fr4/unix60/info.json
index 6debabc7aa4..19a04e8cedb 100644
--- a/keyboards/fr4/unix60/info.json
+++ b/keyboards/fr4/unix60/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "unix60", 
+    "manufacturer": "FR4Boards",
     "url": "https://github.com/mkdl/Unix60", 
     "maintainer": "mkdl", 
+    "usb": {
+        "vid": "0x4652",
+        "pid": "0x5558",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0, "w":0.6}, {"x":13.6, "y":0, "w":0.8}, {"x":14.4, "y":0, "w":0.6}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2}, {"x":13.75, "y":2, "w":1.25}, {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":1.5, "y":4}, {"x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"x":11, "y":4, "w":1.5}, {"x":12.5, "y":4}]
diff --git a/keyboards/fractal/config.h b/keyboards/fractal/config.h
index b9aeac38557..c494f6aa77f 100755
--- a/keyboards/fractal/config.h
+++ b/keyboards/fractal/config.h
@@ -2,13 +2,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0xFEED
-#define PRODUCT_ID      0x6060
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    KeyPCB
-#define PRODUCT         Fractal
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 12
diff --git a/keyboards/fractal/info.json b/keyboards/fractal/info.json
index 7d7a2ba5a47..7d39a296d3e 100644
--- a/keyboards/fractal/info.json
+++ b/keyboards/fractal/info.json
@@ -1,7 +1,13 @@
 {
   "keyboard_name": "Fractal",
+  "manufacturer": "KeyPCB",
   "url": "https://keypcb.bigcartel.com/product/fractal-keyboard-group-buy",
   "maintainer": "qmk",
+  "usb": {
+    "vid": "0xFEED",
+    "pid": "0x6060",
+    "device_version": "0.0.1"
+  },
   "layouts": {
     "LAYOUT_ortho_5x12": {
       "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":8, "y":1}, {"x":9, "y":1}, {"x":10, "y":1}, {"x":11, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":8, "y":2}, {"x":9, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}, {"x":4, "y":3}, {"x":5, "y":3}, {"x":6, "y":3}, {"x":7, "y":3}, {"x":8, "y":3}, {"x":9, "y":3}, {"x":10, "y":3}, {"x":11, "y":3}, {"x":0, "y":4}, {"x":1, "y":4}, {"x":2, "y":4}, {"x":3, "y":4}, {"x":4, "y":4}, {"x":5, "y":4}, {"x":6, "y":4}, {"x":7, "y":4}, {"x":8, "y":4}, {"x":9, "y":4}, {"x":10, "y":4}, {"x":11, "y":4}]
diff --git a/keyboards/free_willy/config.h b/keyboards/free_willy/config.h
index cecd2a82119..918821b787d 100644
--- a/keyboards/free_willy/config.h
+++ b/keyboards/free_willy/config.h
@@ -17,13 +17,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x5351 // SQ
-#define PRODUCT_ID 0x4657 // FW
-#define DEVICE_VER 0x0001
-#define MANUFACTURER squashkb
-#define PRODUCT free willy
-
 /* key matrix size */
 #define MATRIX_ROWS 4
 #define MATRIX_COLS 10
diff --git a/keyboards/free_willy/info.json b/keyboards/free_willy/info.json
index c2bb3b95d9b..61a707b2453 100644
--- a/keyboards/free_willy/info.json
+++ b/keyboards/free_willy/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "free willy",
+    "manufacturer": "squashkb",
     "url": "https://www.squashkb.com/product/free-willy",
     "maintainer": "tsquash",
+    "usb": {
+        "vid": "0x5351",
+        "pid": "0x4657",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [
diff --git a/keyboards/friedrich/config.h b/keyboards/friedrich/config.h
index 1e4e36f2e40..5b601cf6c03 100644
--- a/keyboards/friedrich/config.h
+++ b/keyboards/friedrich/config.h
@@ -19,13 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x6481
-#define PRODUCT_ID   0xB4A2
-#define DEVICE_VER   0x0001
-#define MANUFACTURER kb-elmo
-#define PRODUCT      Friedrich
-
 /* key matrix size */
 #define MATRIX_ROWS 5
 #define MATRIX_COLS 12
diff --git a/keyboards/friedrich/info.json b/keyboards/friedrich/info.json
index 17492e6fafa..ccaaf2753e3 100644
--- a/keyboards/friedrich/info.json
+++ b/keyboards/friedrich/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Friedrich", 
+    "manufacturer": "kb-elmo",
     "url": "https://github.com/MarvFPV/Friedrich",
     "maintainer": "kb-elmo<mail@elmo.space>", 
+    "usb": {
+        "vid": "0x6481",
+        "pid": "0xB4A2",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [{"x":0, "y":0},
diff --git a/keyboards/frooastboard/nano/config.h b/keyboards/frooastboard/nano/config.h
index 48af8e7e9c2..f7a025a2519 100644
--- a/keyboards/frooastboard/nano/config.h
+++ b/keyboards/frooastboard/nano/config.h
@@ -18,10 +18,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define MANUFACTURER    frooastside
-#define PRODUCT         Frooastboard Nano
-
 /* key matrix size */
 #define MATRIX_ROWS 2
 #define MATRIX_COLS 2
diff --git a/keyboards/frooastboard/nano/info.json b/keyboards/frooastboard/nano/info.json
index ae94705195c..a524545a7cd 100644
--- a/keyboards/frooastboard/nano/info.json
+++ b/keyboards/frooastboard/nano/info.json
@@ -1,5 +1,6 @@
 {
     "keyboard_name": "Frooastboard Nano",
+    "manufacturer": "frooastside",
     "url": "https://github.com/qmk/qmk_firmware/tree/master/keyboards/frooastboard/nano",
     "maintainer": "frooastside",
     "debounce": 5,
diff --git a/keyboards/ft/mars80/config.h b/keyboards/ft/mars80/config.h
index 16700443153..bf727460c6a 100644
--- a/keyboards/ft/mars80/config.h
+++ b/keyboards/ft/mars80/config.h
@@ -19,12 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-#define VENDOR_ID       0x20A0
-#define PRODUCT_ID      0x422D
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    FT
-#define PRODUCT         Mars 8.0
-
 #define RGBLED_NUM 20
 
 #define MATRIX_ROWS 7
diff --git a/keyboards/ft/mars80/info.json b/keyboards/ft/mars80/info.json
index 060e7eee650..091e3a94c01 100644
--- a/keyboards/ft/mars80/info.json
+++ b/keyboards/ft/mars80/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "Mars 8.0", 
+    "manufacturer": "FT",
     "url": "", 
     "maintainer": "qmk", 
+    "usb": {
+        "vid": "0x20A0",
+        "pid": "0x422D",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT_tkl_ansi": {
             "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5, "w":2.25}, {"x":0, "y":4.5, "w":2.25}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":0, "y":5.5, "w":1.25}, {"x":1.25, "y":5.5, "w":1.25}, {"x":2.5, "y":5.5, "w":1.25}, {"x":3.75, "y":5.5, "w":6.25}, {"x":10, "y":5.5, "w":1.25}, {"x":11.25, "y":5.5, "w":1.25}, {"x":12.5, "y":5.5, "w":1.25}, {"x":13.75, "y":5.5, "w":1.25}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}]
diff --git a/keyboards/function96/v1/config.h b/keyboards/function96/v1/config.h
index eaa7183843d..9f36f8b5f5f 100644
--- a/keyboards/function96/v1/config.h
+++ b/keyboards/function96/v1/config.h
@@ -19,14 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0xFEED
-#define PRODUCT_ID 0x672A
-#define DEVICE_VER 0x0001
-#define MANUFACTURER JTM
-#define PRODUCT function96v1
-
 /* key matrix size */
 #define MATRIX_ROWS 6
 #define MATRIX_COLS 19
diff --git a/keyboards/function96/v1/info.json b/keyboards/function96/v1/info.json
index 45f987a355e..92b016c1650 100644
--- a/keyboards/function96/v1/info.json
+++ b/keyboards/function96/v1/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "function96v1",
+    "manufacturer": "JTM",
     "url": "jtmkeebdesign@gmail.com",
     "maintainer": "qmk",
+    "usb": {
+        "vid": "0xFEED",
+        "pid": "0x672A",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"Print", "x":13, "y":0}, {"label":"Del", "x":14, "y":0}, {"x":15, "y":0}, {"x":16, "y":0}, {"x":17, "y":0}, {"x":18, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"@", "x":2, "y":1}, {"label":"#", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":7, "y":1}, {"label":"*", "x":8, "y":1}, {"label":"(", "x":9, "y":1}, {"label":")", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"Backspace", "x":13, "y":1, "w":2}, {"x":15, "y":1}, {"label":"/", "x":16, "y":1}, {"label":"*", "x":17, "y":1}, {"label":"-", "x":18, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"|", "x":13.5, "y":2, "w":1.5}, {"label":"7", "x":15, "y":2}, {"label":"8", "x":16, "y":2}, {"label":"9", "x":17, "y":2}, {"label":"+", "x":18, "y":2, "h":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"label":"Enter", "x":12.75, "y":3, "w":2.25}, {"label":"4", "x":15, "y":3}, {"label":"5", "x":16, "y":3}, {"label":"6", "x":17, "y":3}, {"label":"Shift", "x":0, "y":4, "w":2.25}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"1", "x":15, "y":4}, {"label":"2", "x":16, "y":4}, {"label":"3", "x":17, "y":4}, {"x":18, "y":4, "h":2}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":2.25}, {"x":6, "y":5, "w":1.25}, {"x":7.25, "y":5, "w":2.75}, {"x":10, "y":5, "w":1.25}, {"x":11.25, "y":5, "w":1.25}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}, {"label":"0", "x":16, "y":5}, {"x":17, "y":5}]
diff --git a/keyboards/function96/v2/config.h b/keyboards/function96/v2/config.h
index b0e986785a1..5c49a167855 100644
--- a/keyboards/function96/v2/config.h
+++ b/keyboards/function96/v2/config.h
@@ -19,14 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "config_common.h"
 
-
-/* USB Device descriptor parameter */
-#define VENDOR_ID    0x2A34 // JT , JTMDesign
-#define PRODUCT_ID   0x672B
-#define DEVICE_VER   0x0002
-#define MANUFACTURER JTMDesign
-#define PRODUCT      function96v2
-
 /* key matrix size */
 #define MATRIX_ROWS  6
 #define MATRIX_COLS  19
diff --git a/keyboards/function96/v2/info.json b/keyboards/function96/v2/info.json
index d494f617ea1..7bb6adfcadf 100644
--- a/keyboards/function96/v2/info.json
+++ b/keyboards/function96/v2/info.json
@@ -1,7 +1,13 @@
 {
     "keyboard_name": "function96v2",
+    "manufacturer": "JTMDesign",
     "url": "jtmkeebdesign@gmail.com",
     "maintainer": "qmk",
+    "usb": {
+        "vid": "0x2A34",
+        "pid": "0x672B",
+        "device_version": "0.0.2"
+    },
     "layouts": {
         "LAYOUT_all": {
             "layout": [
diff --git a/keyboards/funky40/config.h b/keyboards/funky40/config.h
index c79a8f2da6c..2346adef270 100644
--- a/keyboards/funky40/config.h
+++ b/keyboards/funky40/config.h
@@ -17,14 +17,6 @@
 
 #include "config_common.h"
 
-/* USB Device descriptor parameter */
-#define VENDOR_ID       0xFEED
-#define PRODUCT_ID      0xC4B5
-#define DEVICE_VER      0x0001
-#define MANUFACTURER    TheFourthCow
-#define PRODUCT         Funky40
-
-
 /* key matrix size */
 #define MATRIX_ROWS 4
 #define MATRIX_COLS 12
diff --git a/keyboards/funky40/info.json b/keyboards/funky40/info.json
index ce385b76ddb..9faf90c2301 100644
--- a/keyboards/funky40/info.json
+++ b/keyboards/funky40/info.json
@@ -1,7 +1,13 @@
 {
-    "keyboard_name": "funky40", 
+    "keyboard_name": "Funky40", 
+    "manufacturer": "TheFourthCow",
     "url": "", 
     "maintainer": "TheFourthCow", 
+    "usb": {
+        "vid": "0xFEED",
+        "pid": "0xC4B5",
+        "device_version": "0.0.1"
+    },
     "layouts": {
         "LAYOUT": {
             "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back<br>Space", "x":11, "y":0}, {"label":"Tab", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":":", "x":10, "y":1}, {"label":"\"", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":"<", "x":8, "y":2}, {"label":">", "x":9, "y":2}, {"label":"?", "x":10, "y":2}, {"label":"Shift", "x":11, "y":2}, {"label":"Ctrl", "x":0, "y":3}, {"label":"Super", "x":1, "y":3}, {"label":"Alt", "x":2, "y":3}, {"x":3, "y":3, "w":2}, {"label":"Del", "x":5, "y":3}, {"x":6, "y":3, "w":2}, {"label":"Left", "x":8, "y":3}, {"label":"Up", "x":9, "y":3}, {"label":"Down", "x":10, "y":3}, {"label":"Right", "x":11, "y":3}]