summaryrefslogtreecommitdiffstats
path: root/keyboards/handwired/onekey/nucleo_f446re
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/handwired/onekey/nucleo_f446re')
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/board.h9
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/config.h16
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/halconf.h10
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/info.json15
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/mcuconf.h23
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/readme.md5
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/rules.mk1
7 files changed, 79 insertions, 0 deletions
diff --git a/keyboards/handwired/onekey/nucleo_f446re/board.h b/keyboards/handwired/onekey/nucleo_f446re/board.h
new file mode 100644
index 0000000000..0c5f4dde79
--- /dev/null
+++ b/keyboards/handwired/onekey/nucleo_f446re/board.h
@@ -0,0 +1,9 @@
+// Copyright 2023 Nick Brassel (@tzarc)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#include_next <board.h>
+
+#undef STM32_HSECLK
+#define STM32_HSECLK 8000000U
+#define STM32_HSE_BYPASS
diff --git a/keyboards/handwired/onekey/nucleo_f446re/config.h b/keyboards/handwired/onekey/nucleo_f446re/config.h
new file mode 100644
index 0000000000..612cbf0eab
--- /dev/null
+++ b/keyboards/handwired/onekey/nucleo_f446re/config.h
@@ -0,0 +1,16 @@
+// Copyright 2021 Nick Brassel (@tzarc)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#include "config_common.h"
+
+#define BACKLIGHT_PWM_DRIVER PWMD4
+#define BACKLIGHT_PWM_CHANNEL 3
+#define BACKLIGHT_PAL_MODE 2
+
+#define RGB_CI_PIN B13
+
+#define ADC_PIN A0
+
+#define SOLENOID_PINS { B12, B13, B14, B15 }
+#define SOLENOID_PINS_ACTIVE_STATE { high, high, low }
diff --git a/keyboards/handwired/onekey/nucleo_f446re/halconf.h b/keyboards/handwired/onekey/nucleo_f446re/halconf.h
new file mode 100644
index 0000000000..e3fd1cf6e1
--- /dev/null
+++ b/keyboards/handwired/onekey/nucleo_f446re/halconf.h
@@ -0,0 +1,10 @@
+// Copyright 2023 Nick Brassel (@tzarc)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#define HAL_USE_ADC TRUE
+#define HAL_USE_SPI TRUE
+#define HAL_USE_I2C TRUE
+#define HAL_USE_PWM TRUE
+
+#include_next <halconf.h>
diff --git a/keyboards/handwired/onekey/nucleo_f446re/info.json b/keyboards/handwired/onekey/nucleo_f446re/info.json
new file mode 100644
index 0000000000..6b9206f987
--- /dev/null
+++ b/keyboards/handwired/onekey/nucleo_f446re/info.json
@@ -0,0 +1,15 @@
+{
+ "keyboard_name": "Onekey Nucleo F446RE",
+ "processor": "STM32F446",
+ "bootloader": "stm32-dfu",
+ "matrix_pins": {
+ "cols": ["A2"],
+ "rows": ["A1"]
+ },
+ "backlight": {
+ "pin": "B8"
+ },
+ "rgblight": {
+ "pin": "A0"
+ }
+}
diff --git a/keyboards/handwired/onekey/nucleo_f446re/mcuconf.h b/keyboards/handwired/onekey/nucleo_f446re/mcuconf.h
new file mode 100644
index 0000000000..701d61d31d
--- /dev/null
+++ b/keyboards/handwired/onekey/nucleo_f446re/mcuconf.h
@@ -0,0 +1,23 @@
+// Copyright 2023 Nick Brassel (@tzarc)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#include_next <mcuconf.h>
+
+#undef STM32_PLLM_VALUE
+#define STM32_PLLM_VALUE 4
+
+#undef STM32_PLLSAIM_VALUE
+#define STM32_PLLSAIM_VALUE 4
+
+#undef STM32_ADC_USE_ADC1
+#define STM32_ADC_USE_ADC1 TRUE
+
+#undef STM32_PWM_USE_TIM4
+#define STM32_PWM_USE_TIM4 TRUE
+
+#undef STM32_I2C_USE_I2C1
+#define STM32_I2C_USE_I2C1 TRUE
+
+#undef STM32_SPI_USE_SPI1
+#define STM32_SPI_USE_SPI1 TRUE
diff --git a/keyboards/handwired/onekey/nucleo_f446re/readme.md b/keyboards/handwired/onekey/nucleo_f446re/readme.md
new file mode 100644
index 0000000000..c7d13cb973
--- /dev/null
+++ b/keyboards/handwired/onekey/nucleo_f446re/readme.md
@@ -0,0 +1,5 @@
+# STM32 Nucleo-L432 onekey
+
+To trigger keypress, short together pins *A1* and *A2*.
+
+You'll also need to connect `VIN`, `GND`, USB `D+` to `PA12`/`D2`, and USB `D-` to `PA11`/`D10`.
diff --git a/keyboards/handwired/onekey/nucleo_f446re/rules.mk b/keyboards/handwired/onekey/nucleo_f446re/rules.mk
new file mode 100644
index 0000000000..8515c3fae0
--- /dev/null
+++ b/keyboards/handwired/onekey/nucleo_f446re/rules.mk
@@ -0,0 +1 @@
+SRC += analog.c