diff options
| author | leah-splitkb <103112489+leah-splitkb@users.noreply.github.com> | 2023-11-28 07:53:47 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-11-28 17:53:47 +1100 |
| commit | 2450fe28ee00a816be02fc770cceae8deb2b2f1d (patch) | |
| tree | 8cd0aafeb9eb69ec4be300d1ba7d2cfb4b5f7538 | |
| parent | ea8d2ffe31763943805c641d502f060094db0cf1 (diff) | |
Add Imera converter (#22419)
| -rw-r--r-- | data/mappings/defaults.hjson | 5 | ||||
| -rw-r--r-- | data/schemas/keyboard.jsonschema | 2 | ||||
| -rw-r--r-- | docs/feature_converters.md | 3 | ||||
| -rw-r--r-- | docs/squeezing_avr.md | 1 | ||||
| -rw-r--r-- | platforms/chibios/converters/promicro_to_imera/_pin_defs.h | 36 | ||||
| -rw-r--r-- | platforms/chibios/converters/promicro_to_imera/converter.mk | 10 |
6 files changed, 56 insertions, 1 deletions
diff --git a/data/mappings/defaults.hjson b/data/mappings/defaults.hjson index 2bb00da223..8bf5b8ebcb 100644 --- a/data/mappings/defaults.hjson +++ b/data/mappings/defaults.hjson | |||
| @@ -79,6 +79,11 @@ | |||
| 79 | "processor": "RP2040", | 79 | "processor": "RP2040", |
| 80 | "bootloader": "rp2040", | 80 | "bootloader": "rp2040", |
| 81 | "board": "QMK_PM2040" | 81 | "board": "QMK_PM2040" |
| 82 | }, | ||
| 83 | "imera": { | ||
| 84 | "processor": "RP2040", | ||
| 85 | "bootloader": "rp2040", | ||
| 86 | "board": "QMK_PM2040" | ||
| 82 | } | 87 | } |
| 83 | } | 88 | } |
| 84 | } | 89 | } |
diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 2996958084..32d737a1d8 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema | |||
| @@ -43,7 +43,7 @@ | |||
| 43 | }, | 43 | }, |
| 44 | "development_board": { | 44 | "development_board": { |
| 45 | "type": "string", | 45 | "type": "string", |
| 46 | "enum": ["promicro", "elite_c", "elite_pi", "proton_c", "kb2040", "promicro_rp2040", "blok", "michi", "bit_c_pro", "stemcell", "bluepill", "blackpill_f401", "blackpill_f411", "bonsai_c4", "helios", "liatris"] | 46 | "enum": ["promicro", "elite_c", "elite_pi", "proton_c", "kb2040", "promicro_rp2040", "blok", "michi", "bit_c_pro", "stemcell", "bluepill", "blackpill_f401", "blackpill_f411", "bonsai_c4", "helios", "liatris", "imera"] |
| 47 | }, | 47 | }, |
| 48 | "pin_compatible": { | 48 | "pin_compatible": { |
| 49 | "type": "string", | 49 | "type": "string", |
diff --git a/docs/feature_converters.md b/docs/feature_converters.md index 11bdbed576..62c214e246 100644 --- a/docs/feature_converters.md +++ b/docs/feature_converters.md | |||
| @@ -19,6 +19,7 @@ The following converters are available at this time: | |||
| 19 | | `promicro` | `elite_pi` | | 19 | | `promicro` | `elite_pi` | |
| 20 | | `promicro` | `helios` | | 20 | | `promicro` | `helios` | |
| 21 | | `promicro` | `liatris` | | 21 | | `promicro` | `liatris` | |
| 22 | | `promicro` | `imera` | | ||
| 22 | | `promicro` | `michi` | | 23 | | `promicro` | `michi` | |
| 23 | | `elite_c` | `stemcell` | | 24 | | `elite_c` | `stemcell` | |
| 24 | | `elite_c` | `rp2040_ce` | | 25 | | `elite_c` | `rp2040_ce` | |
| @@ -82,6 +83,7 @@ If a board currently supported in QMK uses a [Pro Micro](https://www.sparkfun.co | |||
| 82 | | [Elite-Pi](https://keeb.io/products/elite-pi-usb-c-pro-micro-replacement-rp2040) | `elite_pi` | | 83 | | [Elite-Pi](https://keeb.io/products/elite-pi-usb-c-pro-micro-replacement-rp2040) | `elite_pi` | |
| 83 | | [0xCB Helios](https://keeb.supply/products/0xcb-helios) | `helios` | | 84 | | [0xCB Helios](https://keeb.supply/products/0xcb-helios) | `helios` | |
| 84 | | [Liatris](https://splitkb.com/products/liatris) | `liatris` | | 85 | | [Liatris](https://splitkb.com/products/liatris) | `liatris` | |
| 86 | | [Imera](https://splitkb.com/products/imera) | `imera` | | ||
| 85 | | [Michi](https://github.com/ci-bus/michi-promicro-rp2040) | `michi` | | 87 | | [Michi](https://github.com/ci-bus/michi-promicro-rp2040) | `michi` | |
| 86 | 88 | ||
| 87 | Converter summary: | 89 | Converter summary: |
| @@ -99,6 +101,7 @@ Converter summary: | |||
| 99 | | `elite_pi` | `-e CONVERT_TO=elite_pi` | `CONVERT_TO=elite_pi` | `#ifdef CONVERT_TO_ELITE_PI` | | 101 | | `elite_pi` | `-e CONVERT_TO=elite_pi` | `CONVERT_TO=elite_pi` | `#ifdef CONVERT_TO_ELITE_PI` | |
| 100 | | `helios` | `-e CONVERT_TO=helios` | `CONVERT_TO=helios` | `#ifdef CONVERT_TO_HELIOS` | | 102 | | `helios` | `-e CONVERT_TO=helios` | `CONVERT_TO=helios` | `#ifdef CONVERT_TO_HELIOS` | |
| 101 | | `liatris` | `-e CONVERT_TO=liatris` | `CONVERT_TO=liatris` | `#ifdef CONVERT_TO_LIATRIS` | | 103 | | `liatris` | `-e CONVERT_TO=liatris` | `CONVERT_TO=liatris` | `#ifdef CONVERT_TO_LIATRIS` | |
| 104 | | `imera` | `-e CONVERT_TO=imera` | `CONVERT_TO=imera` | `#ifdef CONVERT_TO_IMERA` | | ||
| 102 | | `michi` | `-e CONVERT_TO=michi` | `CONVERT_TO=michi` | `#ifdef CONVERT_TO_MICHI` | | 105 | | `michi` | `-e CONVERT_TO=michi` | `CONVERT_TO=michi` | `#ifdef CONVERT_TO_MICHI` | |
| 103 | 106 | ||
| 104 | ### Proton C :id=proton_c | 107 | ### Proton C :id=proton_c |
diff --git a/docs/squeezing_avr.md b/docs/squeezing_avr.md index af015b4b18..c3b9e5595e 100644 --- a/docs/squeezing_avr.md +++ b/docs/squeezing_avr.md | |||
| @@ -210,6 +210,7 @@ That said, there are a number of Pro Micro replacements with ARM controllers: | |||
| 210 | * [Elite-Pi](https://keeb.io/products/elite-pi-usb-c-pro-micro-replacement-rp2040) | 210 | * [Elite-Pi](https://keeb.io/products/elite-pi-usb-c-pro-micro-replacement-rp2040) |
| 211 | * [0xCB Helios](https://keeb.supply/products/0xcb-helios) ([Open Source](https://github.com/0xCB-dev/0xCB-Helios), DIY/PCBA/Shop) | 211 | * [0xCB Helios](https://keeb.supply/products/0xcb-helios) ([Open Source](https://github.com/0xCB-dev/0xCB-Helios), DIY/PCBA/Shop) |
| 212 | * [Liatris](https://splitkb.com/products/liatris) | 212 | * [Liatris](https://splitkb.com/products/liatris) |
| 213 | * [Imera](https://splitkb.com/products/imera) | ||
| 213 | * [Michi](https://github.com/ci-bus/michi-promicro-rp2040) | 214 | * [Michi](https://github.com/ci-bus/michi-promicro-rp2040) |
| 214 | 215 | ||
| 215 | There are other, non-Pro Micro compatible boards out there. The most popular being: | 216 | There are other, non-Pro Micro compatible boards out there. The most popular being: |
diff --git a/platforms/chibios/converters/promicro_to_imera/_pin_defs.h b/platforms/chibios/converters/promicro_to_imera/_pin_defs.h new file mode 100644 index 0000000000..475a84d697 --- /dev/null +++ b/platforms/chibios/converters/promicro_to_imera/_pin_defs.h | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | // Copyright 2023 splitkb.com | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #pragma once | ||
| 5 | |||
| 6 | // Left side (front) | ||
| 7 | #define D3 0U | ||
| 8 | #define D2 1U | ||
| 9 | // GND | ||
| 10 | // GND | ||
| 11 | #define D1 2U | ||
| 12 | #define D0 3U | ||
| 13 | #define D4 4U | ||
| 14 | #define C6 5U | ||
| 15 | #define D7 6U | ||
| 16 | #define E6 7U | ||
| 17 | #define B4 8U | ||
| 18 | #define B5 9U | ||
| 19 | |||
| 20 | // Right side (front) | ||
| 21 | // RAW | ||
| 22 | // GND | ||
| 23 | // RESET | ||
| 24 | // VCC | ||
| 25 | #define F4 29U | ||
| 26 | #define F5 28U | ||
| 27 | #define F6 17U | ||
| 28 | #define F7 16U | ||
| 29 | #define B1 22U | ||
| 30 | #define B3 20U | ||
| 31 | #define B2 23U | ||
| 32 | #define B6 21U | ||
| 33 | |||
| 34 | // LEDs | ||
| 35 | #define D5 24U // Power LED, default-on | ||
| 36 | #define B0 18U // Unconnected | ||
diff --git a/platforms/chibios/converters/promicro_to_imera/converter.mk b/platforms/chibios/converters/promicro_to_imera/converter.mk new file mode 100644 index 0000000000..bfca20cd99 --- /dev/null +++ b/platforms/chibios/converters/promicro_to_imera/converter.mk | |||
| @@ -0,0 +1,10 @@ | |||
| 1 | # rp2040_ce MCU settings for converting AVR projects | ||
| 2 | MCU := RP2040 | ||
| 3 | BOARD := QMK_PM2040 | ||
| 4 | BOOTLOADER := rp2040 | ||
| 5 | |||
| 6 | # These are defaults based on what has been implemented for RP2040 boards | ||
| 7 | SERIAL_DRIVER ?= vendor | ||
| 8 | WS2812_DRIVER ?= vendor | ||
| 9 | BACKLIGHT_DRIVER ?= software | ||
| 10 | OPT_DEFS += -DUSB_VBUS_PIN=19U | ||
