From c61cb72ae8ea3cf95ad4d00f88b2c5c3826c8342 Mon Sep 17 00:00:00 2001
From: Danny <nooges@users.noreply.github.com>
Date: Thu, 20 Jul 2023 08:10:09 -0400
Subject: [PATCH] Move files to rev1 folder, add rev2 (#21563)

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
---
 data/mappings/keyboard_aliases.hjson          |  3 +
 keyboards/keebio/chocopad/config.h            | 22 -----
 keyboards/keebio/chocopad/info.json           | 23 +----
 .../keebio/chocopad/keymaps/default/keymap.c  |  3 +
 .../keebio/chocopad/keymaps/khord/rules.mk    |  2 -
 .../keebio/chocopad/keymaps/via/config.h      |  7 ++
 .../keebio/chocopad/keymaps/via/keymap.c      | 20 ++++
 .../keebio/chocopad/keymaps/via/rules.mk      |  2 +
 keyboards/keebio/chocopad/readme.md           |  2 +-
 keyboards/keebio/chocopad/rev1/info.json      | 41 ++++++++
 .../chocopad/{chocopad.c => rev1/rev1.c}      |  3 +
 keyboards/keebio/chocopad/rev1/rules.mk       |  1 +
 keyboards/keebio/chocopad/rev2/config.h       | 13 +++
 keyboards/keebio/chocopad/rev2/info.json      | 93 +++++++++++++++++++
 keyboards/keebio/chocopad/rev2/rules.mk       |  1 +
 keyboards/keebio/chocopad/rules.mk            | 12 ---
 16 files changed, 191 insertions(+), 57 deletions(-)
 delete mode 100644 keyboards/keebio/chocopad/config.h
 delete mode 100644 keyboards/keebio/chocopad/keymaps/khord/rules.mk
 create mode 100644 keyboards/keebio/chocopad/keymaps/via/config.h
 create mode 100644 keyboards/keebio/chocopad/keymaps/via/keymap.c
 create mode 100644 keyboards/keebio/chocopad/keymaps/via/rules.mk
 create mode 100644 keyboards/keebio/chocopad/rev1/info.json
 rename keyboards/keebio/chocopad/{chocopad.c => rev1/rev1.c} (84%)
 create mode 100644 keyboards/keebio/chocopad/rev1/rules.mk
 create mode 100644 keyboards/keebio/chocopad/rev2/config.h
 create mode 100644 keyboards/keebio/chocopad/rev2/info.json
 create mode 100644 keyboards/keebio/chocopad/rev2/rules.mk
 delete mode 100644 keyboards/keebio/chocopad/rules.mk

diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson
index a656288a8f..f1c1f81e9a 100644
--- a/data/mappings/keyboard_aliases.hjson
+++ b/data/mappings/keyboard_aliases.hjson
@@ -305,6 +305,9 @@
     "kbdfans/kbd67/mkiirgb": {
         "target": "kbdfans/kbd67/mkiirgb/v1"
     },
+    "keebio/chocopad": {
+        "target": "keebio/chocopad/rev1"
+    },
     "keebio/dsp40": {
         "target": "keebio/dsp40/rev1"
     },
diff --git a/keyboards/keebio/chocopad/config.h b/keyboards/keebio/chocopad/config.h
deleted file mode 100644
index 14c93278a6..0000000000
--- a/keyboards/keebio/chocopad/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
-
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
-#define RGBLED_NUM 4
diff --git a/keyboards/keebio/chocopad/info.json b/keyboards/keebio/chocopad/info.json
index 44d846da74..f9d48d6422 100644
--- a/keyboards/keebio/chocopad/info.json
+++ b/keyboards/keebio/chocopad/info.json
@@ -1,27 +1,10 @@
 {
-  "keyboard_name": "Chocopad",
   "manufacturer": "Keebio",
-  "url": "",
-  "maintainer": "qmk",
+  "url": "https://keeb.io",
+  "maintainer": "nooges",
   "usb": {
-    "vid": "0xCB10",
-    "pid": "0x1144",
-    "device_version": "1.0.0"
+    "vid": "0xCB10"
   },
-  "matrix_pins": {
-    "cols": ["D2", "D4", "F6", "F5"],
-    "rows": ["D7", "E6", "B3", "B2"]
-  },
-  "diode_direction": "COL2ROW",
-  "backlight": {
-    "pin": "B5",
-    "levels": 6
-  },
-  "ws2812": {
-    "pin": "D3"
-  },
-  "processor": "atmega32u4",
-  "bootloader": "caterina",
   "community_layouts": ["ortho_4x4"],
   "layouts": {
     "LAYOUT_ortho_4x4": {
diff --git a/keyboards/keebio/chocopad/keymaps/default/keymap.c b/keyboards/keebio/chocopad/keymaps/default/keymap.c
index b89246adf0..8c83d72cfe 100644
--- a/keyboards/keebio/chocopad/keymaps/default/keymap.c
+++ b/keyboards/keebio/chocopad/keymaps/default/keymap.c
@@ -1,3 +1,6 @@
+// Copyright 2023 Danny Nguyen (danny@keeb.io)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
 #include QMK_KEYBOARD_H
 
 #define _BASE 0
diff --git a/keyboards/keebio/chocopad/keymaps/khord/rules.mk b/keyboards/keebio/chocopad/keymaps/khord/rules.mk
deleted file mode 100644
index a81250cdf6..0000000000
--- a/keyboards/keebio/chocopad/keymaps/khord/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = yes
-
diff --git a/keyboards/keebio/chocopad/keymaps/via/config.h b/keyboards/keebio/chocopad/keymaps/via/config.h
new file mode 100644
index 0000000000..1dcf49c979
--- /dev/null
+++ b/keyboards/keebio/chocopad/keymaps/via/config.h
@@ -0,0 +1,7 @@
+// Copyright 2023 Danny Nguyen (danny@keeb.io)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_PINWHEEL
+#define RGB_MATRIX_DEFAULT_SPD 48
diff --git a/keyboards/keebio/chocopad/keymaps/via/keymap.c b/keyboards/keebio/chocopad/keymaps/via/keymap.c
new file mode 100644
index 0000000000..18de1ad43d
--- /dev/null
+++ b/keyboards/keebio/chocopad/keymaps/via/keymap.c
@@ -0,0 +1,20 @@
+// Copyright 2023 Danny Nguyen (danny@keeb.io)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+  [0] = LAYOUT_ortho_4x4(
+    KC_P7,   KC_P8,   KC_P9,   KC_PPLS,
+    KC_P4,   KC_P5,   KC_P6,   KC_PERC,
+    KC_P1,   KC_P2,   KC_P3,   KC_EQL,
+    KC_P0,   MO(1),   KC_PDOT, KC_PENT
+  ),
+  [1] = LAYOUT_ortho_4x4(
+    RGB_TOG, KC_PSLS, KC_PAST, KC_PMNS,
+    KC_PGUP, KC_HOME, KC_UP,   KC_END,
+    KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT,
+    RGB_MOD, _______, KC_VOLD, KC_VOLU
+  )
+};
diff --git a/keyboards/keebio/chocopad/keymaps/via/rules.mk b/keyboards/keebio/chocopad/keymaps/via/rules.mk
new file mode 100644
index 0000000000..36b7ba9cbc
--- /dev/null
+++ b/keyboards/keebio/chocopad/keymaps/via/rules.mk
@@ -0,0 +1,2 @@
+VIA_ENABLE = yes
+LTO_ENABLE = yes
diff --git a/keyboards/keebio/chocopad/readme.md b/keyboards/keebio/chocopad/readme.md
index 3cdb3b3b9c..67c875d923 100644
--- a/keyboards/keebio/chocopad/readme.md
+++ b/keyboards/keebio/chocopad/readme.md
@@ -9,6 +9,6 @@ Hardware Availability: [Keebio](https://keeb.io)
 
 Make example for this keyboard (after setting up your build environment):
 
-    make keebio/chocopad:default
+    make keebio/chocopad/rev1:default
 
 See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
diff --git a/keyboards/keebio/chocopad/rev1/info.json b/keyboards/keebio/chocopad/rev1/info.json
new file mode 100644
index 0000000000..fafea9dce0
--- /dev/null
+++ b/keyboards/keebio/chocopad/rev1/info.json
@@ -0,0 +1,41 @@
+{
+    "keyboard_name": "Chocopad Rev. 1",
+    "usb": {
+        "pid": "0x1144",
+        "device_version": "1.0.0"
+    },
+    "development_board": "promicro",
+    "matrix_pins": {
+        "cols": ["D2", "D4", "F6", "F5"],
+        "rows": ["D7", "E6", "B3", "B2"]
+    },
+    "diode_direction": "COL2ROW",
+    "features": {
+        "extrakey": true,
+        "mousekey": true,
+        "backlight": true,
+        "rgblight": true
+    },
+    "backlight": {
+        "pin": "B5",
+        "levels": 6
+    },
+    "ws2812": {
+        "pin": "D3"
+    },
+    "rgblight": {
+        "led_count": 4,
+        "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
+        }
+    }
+}
diff --git a/keyboards/keebio/chocopad/chocopad.c b/keyboards/keebio/chocopad/rev1/rev1.c
similarity index 84%
rename from keyboards/keebio/chocopad/chocopad.c
rename to keyboards/keebio/chocopad/rev1/rev1.c
index b52c8608ca..e362bb3483 100644
--- a/keyboards/keebio/chocopad/chocopad.c
+++ b/keyboards/keebio/chocopad/rev1/rev1.c
@@ -1,3 +1,6 @@
+// Copyright 2023 Danny Nguyen (danny@keeb.io)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
 #include "quantum.h"
 
 void eeconfig_init_kb(void) {
diff --git a/keyboards/keebio/chocopad/rev1/rules.mk b/keyboards/keebio/chocopad/rev1/rules.mk
new file mode 100644
index 0000000000..6e7633bfe0
--- /dev/null
+++ b/keyboards/keebio/chocopad/rev1/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank
diff --git a/keyboards/keebio/chocopad/rev2/config.h b/keyboards/keebio/chocopad/rev2/config.h
new file mode 100644
index 0000000000..366d639bf0
--- /dev/null
+++ b/keyboards/keebio/chocopad/rev2/config.h
@@ -0,0 +1,13 @@
+// Copyright 2023 Danny Nguyen (danny@keeb.io)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
+#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U
+
+// RGB Matrix
+#define RGB_MATRIX_LED_COUNT 20
+#define RGB_DISABLE_WHEN_USB_SUSPENDED
+#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/keebio/chocopad/rev2/info.json b/keyboards/keebio/chocopad/rev2/info.json
new file mode 100644
index 0000000000..cb29d0e83c
--- /dev/null
+++ b/keyboards/keebio/chocopad/rev2/info.json
@@ -0,0 +1,93 @@
+{
+    "keyboard_name": "Chocopad Rev. 2",
+    "usb": {
+        "pid": "0x2144",
+        "device_version": "2.0.0"
+    },
+    "processor": "RP2040",
+    "bootloader": "rp2040",
+    "diode_direction": "COL2ROW",
+    "features": {
+        "extrakey": true,
+        "mousekey": true,
+        "rgb_matrix": true
+    },
+    "matrix_pins": {
+        "cols": ["GP20", "GP19", "GP29", "GP0"],
+        "rows": ["GP28", "GP18", "GP17", "GP16"]
+    },
+    "ws2812": {
+      "pin": "GP15",
+      "driver": "vendor"
+    },
+    "rgb_matrix": {
+        "driver": "WS2812",
+        "animations": {
+            "alphas_mods": true,
+            "gradient_up_down": true,
+            "gradient_left_right": true,
+            "breathing": true,
+            "band_sat": true,
+            "band_val": true,
+            "band_pinwheel_sat": true,
+            "band_pinwheel_val": true,
+            "band_spiral_sat": true,
+            "band_spiral_val": true,
+            "cycle_all": true,
+            "cycle_left_right": true,
+            "cycle_up_down": true,
+            "cycle_out_in": true,
+            "cycle_out_in_dual": true,
+            "rainbow_moving_chevron": true,
+            "cycle_pinwheel": true,
+            "cycle_spiral": true,
+            "dual_beacon": true,
+            "rainbow_beacon": true,
+            "rainbow_pinwheels": true,
+            "raindrops": true,
+            "jellybean_raindrops": true,
+            "hue_breathing": true,
+            "hue_pendulum": true,
+            "hue_wave": true,
+            "pixel_fractal": true,
+            "pixel_flow": true,
+            "pixel_rain": true,
+            "typing_heatmap": true,
+            "digital_rain": true,
+            "solid_reactive_simple": true,
+            "solid_reactive": true,
+            "solid_reactive_wide": true,
+            "solid_reactive_multiwide": true,
+            "solid_reactive_cross": true,
+            "solid_reactive_multicross": true,
+            "solid_reactive_nexus": true,
+            "solid_reactive_multinexus": true,
+            "splash": true,
+            "multisplash": true,
+            "solid_splash": true,
+            "solid_multisplash": true
+        },
+        "layout": [
+            {"matrix": [0, 0], "flags": 4, "x": 0, "y": 0},
+            {"flags": 2, "x": 37, "y": 0},
+            {"matrix": [0, 1], "flags": 4, "x": 75, "y": 0},
+            {"matrix": [0, 2], "flags": 4, "x": 149, "y": 0},
+            {"flags": 2, "x": 187, "y": 0},
+            {"matrix": [0, 3], "flags": 4, "x": 224, "y": 0},
+            {"matrix": [1, 3], "flags": 4, "x": 224, "y": 21},
+            {"matrix": [1, 2], "flags": 4, "x": 149, "y": 21},
+            {"matrix": [1, 1], "flags": 4, "x": 75, "y": 21},
+            {"matrix": [1, 0], "flags": 4, "x": 0, "y": 21},
+            {"matrix": [2, 0], "flags": 4, "x": 0, "y": 43},
+            {"matrix": [2, 1], "flags": 4, "x": 75, "y": 43},
+            {"matrix": [2, 2], "flags": 4, "x": 149, "y": 43},
+            {"matrix": [2, 3], "flags": 4, "x": 224, "y": 43},
+            {"matrix": [3, 3], "flags": 4, "x": 224, "y": 64},
+            {"flags": 2, "x": 187, "y": 64},
+            {"matrix": [3, 2], "flags": 4, "x": 149, "y": 64},
+            {"matrix": [3, 1], "flags": 4, "x": 75, "y": 64},
+            {"flags": 2, "x": 37, "y": 64},
+            {"matrix": [3, 0], "flags": 4, "x": 0, "y": 64}
+        ]
+    }
+}
diff --git a/keyboards/keebio/chocopad/rev2/rules.mk b/keyboards/keebio/chocopad/rev2/rules.mk
new file mode 100644
index 0000000000..6e7633bfe0
--- /dev/null
+++ b/keyboards/keebio/chocopad/rev2/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank
diff --git a/keyboards/keebio/chocopad/rules.mk b/keyboards/keebio/chocopad/rules.mk
deleted file mode 100644
index ce70b7c8f2..0000000000
--- a/keyboards/keebio/chocopad/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes	# Mouse keys
-EXTRAKEY_ENABLE = yes	# Audio control and System control
-CONSOLE_ENABLE = no	# Console for debug
-COMMAND_ENABLE = no    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes  # Enable keyboard backlight functionality
-AUDIO_ENABLE = no
-RGBLIGHT_ENABLE = yes