diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/config.h b/keyboards/mechlovin/infinity87/rgb/config.h
similarity index 100%
rename from keyboards/mechlovin/infinity87/rgb_rev1/config.h
rename to keyboards/mechlovin/infinity87/rgb/config.h
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/info.json b/keyboards/mechlovin/infinity87/rgb/info.json
similarity index 99%
rename from keyboards/mechlovin/infinity87/rgb_rev1/info.json
rename to keyboards/mechlovin/infinity87/rgb/info.json
index 27a7b441e32..f0f08e08a87 100644
--- a/keyboards/mechlovin/infinity87/rgb_rev1/info.json
+++ b/keyboards/mechlovin/infinity87/rgb/info.json
@@ -1,13 +1,15 @@
{
"keyboard_name": "Infinity87 RGB Rev1",
- "manufacturer": "Mechlovin.Studio",
"url": "",
- "maintainer": "Team Mechlovin'",
"usb": {
- "vid": "0x4D4C",
"pid": "0x8710",
"device_version": "0.0.1"
},
+ "features": {
+ "console": true,
+ "command": true,
+ "rgb_matrix": true
+ },
"rgb_matrix": {
"animations": {
"alphas_mods": true,
@@ -60,14 +62,7 @@
"driver": "is31fl3741",
"sleep": true
},
- "matrix_pins": {
- "cols": ["B12", "B13", "B14", "B15", "A8", "A9", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A2", "A1", "A0"],
- "rows": ["A10", "A13", "A14", "C13", "A4", "A3"]
- },
"diode_direction": "COL2ROW",
- "processor": "STM32F303",
- "bootloader": "stm32-dfu",
- "board": "QMK_PROTON_C",
"community_layouts": [
"tkl_ansi",
"tkl_ansi_split_bs_rshift",
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/keymaps/default/keymap.c b/keyboards/mechlovin/infinity87/rgb/keymaps/default/keymap.c
similarity index 100%
rename from keyboards/mechlovin/infinity87/rgb_rev1/keymaps/default/keymap.c
rename to keyboards/mechlovin/infinity87/rgb/keymaps/default/keymap.c
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/keymaps/default/readme.md b/keyboards/mechlovin/infinity87/rgb/keymaps/default/readme.md
similarity index 100%
rename from keyboards/mechlovin/infinity87/rgb_rev1/keymaps/default/readme.md
rename to keyboards/mechlovin/infinity87/rgb/keymaps/default/readme.md
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/keymaps/via/keymap.c b/keyboards/mechlovin/infinity87/rgb/keymaps/via/keymap.c
similarity index 100%
rename from keyboards/mechlovin/infinity87/rgb_rev1/keymaps/via/keymap.c
rename to keyboards/mechlovin/infinity87/rgb/keymaps/via/keymap.c
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/keymaps/via/readme.md b/keyboards/mechlovin/infinity87/rgb/keymaps/via/readme.md
similarity index 100%
rename from keyboards/mechlovin/infinity87/rgb_rev1/keymaps/via/readme.md
rename to keyboards/mechlovin/infinity87/rgb/keymaps/via/readme.md
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/keymaps/via/rules.mk b/keyboards/mechlovin/infinity87/rgb/keymaps/via/rules.mk
similarity index 100%
rename from keyboards/mechlovin/infinity87/rgb_rev1/keymaps/via/rules.mk
rename to keyboards/mechlovin/infinity87/rgb/keymaps/via/rules.mk
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/matrix_diagram.md b/keyboards/mechlovin/infinity87/rgb/matrix_diagram.md
similarity index 100%
rename from keyboards/mechlovin/infinity87/rgb_rev1/matrix_diagram.md
rename to keyboards/mechlovin/infinity87/rgb/matrix_diagram.md
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/readme.md b/keyboards/mechlovin/infinity87/rgb/readme.md
similarity index 100%
rename from keyboards/mechlovin/infinity87/rgb_rev1/readme.md
rename to keyboards/mechlovin/infinity87/rgb/readme.md
diff --git a/keyboards/mechlovin/infinity87/rgb/rev1/info.json b/keyboards/mechlovin/infinity87/rgb/rev1/info.json
new file mode 100644
index 00000000000..95015fa13ba
--- /dev/null
+++ b/keyboards/mechlovin/infinity87/rgb/rev1/info.json
@@ -0,0 +1,15 @@
+{
+ "processor": "STM32F303",
+ "bootloader": "stm32-dfu",
+ "board": "QMK_PROTON_C",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "nkro": true
+ },
+ "matrix_pins": {
+ "cols": ["B12", "B13", "B14", "B15", "A8", "A9", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A2", "A1", "A0"],
+ "rows": ["A10", "A13", "A14", "C13", "A4", "A3"]
+ }
+}
diff --git a/keyboards/mechlovin/infinity87/rgb/rev1/rules.mk b/keyboards/mechlovin/infinity87/rgb/rev1/rules.mk
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/keyboards/mechlovin/infinity87/rgb/rev2/config.h b/keyboards/mechlovin/infinity87/rgb/rev2/config.h
new file mode 100644
index 00000000000..c9c563c9242
--- /dev/null
+++ b/keyboards/mechlovin/infinity87/rgb/rev2/config.h
@@ -0,0 +1,20 @@
+/* Copyright 2020 Team Mechlovin'
+ *
+ * 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 .
+ */
+
+#pragma once
+
+#define I2C1_CLOCK_SPEED 400000
+#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2
\ No newline at end of file
diff --git a/keyboards/mechlovin/infinity87/rgb/rev2/halconf.h b/keyboards/mechlovin/infinity87/rgb/rev2/halconf.h
new file mode 100644
index 00000000000..73459a1b0f5
--- /dev/null
+++ b/keyboards/mechlovin/infinity87/rgb/rev2/halconf.h
@@ -0,0 +1,22 @@
+/* Copyright 2022 QMK
+ *
+ * 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 .
+ */
+
+#pragma once
+
+#define HAL_USE_I2C TRUE
+
+#include_next
+
diff --git a/keyboards/mechlovin/infinity87/rgb/rev2/info.json b/keyboards/mechlovin/infinity87/rgb/rev2/info.json
new file mode 100644
index 00000000000..c09f986a6cd
--- /dev/null
+++ b/keyboards/mechlovin/infinity87/rgb/rev2/info.json
@@ -0,0 +1,32 @@
+{
+ "processor": "STM32F103",
+ "bootloader": "stm32duino",
+ "rgblight": {
+ "led_count": 23,
+ "sleep": true,
+ "animations": {
+ "alternating": true,
+ "breathing": true,
+ "christmas": true,
+ "knight": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true,
+ "rgb_test": true,
+ "snake": true,
+ "static_gradient": true,
+ "twinkle": true
+ }
+ },
+ "features": {
+ "rgblight": true,
+ "nkro": true
+ },
+ "matrix_pins": {
+ "cols": ["B12", "B13", "B14", "B15", "A8", "A9", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A2", "A1", "A0"],
+ "rows": ["A10", "B3", "B4", "C13", "A4", "A3"]
+ },
+ "ws2812": {
+ "pin": "B5"
+ },
+ "mcu_lcdscrpipt": "STM32F103xB_stm32duino"
+}
diff --git a/keyboards/mechlovin/infinity87/rgb/rev2/mcuconf.h b/keyboards/mechlovin/infinity87/rgb/rev2/mcuconf.h
new file mode 100644
index 00000000000..ad0e6be0d94
--- /dev/null
+++ b/keyboards/mechlovin/infinity87/rgb/rev2/mcuconf.h
@@ -0,0 +1,24 @@
+/* Copyright 2022 QMK
+ *
+ * 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 .
+ */
+
+
+#pragma once
+
+#include_next
+
+
+#undef STM32_I2C_USE_I2C1
+#define STM32_I2C_USE_I2C1 TRUE
diff --git a/keyboards/mechlovin/infinity87/rgb/rev2/rev2.c b/keyboards/mechlovin/infinity87/rgb/rev2/rev2.c
new file mode 100644
index 00000000000..bdfe5d28cf3
--- /dev/null
+++ b/keyboards/mechlovin/infinity87/rgb/rev2/rev2.c
@@ -0,0 +1,25 @@
+/* Copyright 2024 Mechlovin'
+ *
+ * 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 "quantum.h"
+
+#ifdef RGBLIGHT_ENABLE
+void keyboard_post_init_kb(void) {
+ // Call the post init code.
+ rgblight_sethsv_at(255, 255, 255, 0);
+ keyboard_post_init_user();
+}
+#endif
\ No newline at end of file
diff --git a/keyboards/mechlovin/infinity87/rgb/rev2/rules.mk b/keyboards/mechlovin/infinity87/rgb/rev2/rules.mk
new file mode 100644
index 00000000000..04fe1eba2ac
--- /dev/null
+++ b/keyboards/mechlovin/infinity87/rgb/rev2/rules.mk
@@ -0,0 +1,2 @@
+# Wildcard to allow APM32 MCU
+DFU_SUFFIX_ARGS = -p FFFF -v FFFF
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/rgb_rev1.c b/keyboards/mechlovin/infinity87/rgb/rgb.c
similarity index 100%
rename from keyboards/mechlovin/infinity87/rgb_rev1/rgb_rev1.c
rename to keyboards/mechlovin/infinity87/rgb/rgb.c
diff --git a/keyboards/mechlovin/infinity87/rgb/rules.mk b/keyboards/mechlovin/infinity87/rgb/rules.mk
new file mode 100644
index 00000000000..1499847f62c
--- /dev/null
+++ b/keyboards/mechlovin/infinity87/rgb/rules.mk
@@ -0,0 +1 @@
+DEFAULT_FOLDER = mechlovin/infinity87/rgb/rev1
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/rules.mk b/keyboards/mechlovin/infinity87/rgb_rev1/rules.mk
deleted file mode 100644
index e408bde91c4..00000000000
--- a/keyboards/mechlovin/infinity87/rgb_rev1/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-RGB_MATRIX_ENABLE = yes # Use RGB matrix
diff --git a/keyboards/mechlovin/infinity87/rules.mk b/keyboards/mechlovin/infinity87/rules.mk
index 251f8440aab..057651e3a00 100644
--- a/keyboards/mechlovin/infinity87/rules.mk
+++ b/keyboards/mechlovin/infinity87/rules.mk
@@ -12,4 +12,4 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-DEFAULT_FOLDER = mechlovin/infinity87/rgb_rev1
+DEFAULT_FOLDER = mechlovin/infinity87/rgb/rev1