Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mlego fix product id and sync oled code #16237

Merged
merged 33 commits into from
Jun 11, 2022
Merged
Show file tree
Hide file tree
Changes from 31 commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
c8c0b2d
sync oled code over the keymaps
Feb 5, 2022
768e416
put different product ids
Feb 5, 2022
e0e9697
put different product ids for the rest
Feb 5, 2022
2d104ae
put different product ids for the rest
Feb 5, 2022
b822058
try to reduce code duplication
Feb 6, 2022
def6503
make ifdefs nice and correct
Feb 6, 2022
364387c
move the leds code out of keymap
Feb 6, 2022
a808813
try to reduce code duplication
Feb 6, 2022
fa31b9d
move the rgb code outside the keymaps for reuse
Feb 6, 2022
ae8a6a1
Update keyboards/mlego/m65/m65.c
Feb 6, 2022
f9667a0
Update keyboards/mlego/m65/m65.c
Feb 6, 2022
8c1b224
move more code outside keymaps for reuse
Feb 6, 2022
dc66976
add few more xps
Feb 13, 2022
9ae348b
Merge branch 'qmk:master' into mlego_fix_product_id
Feb 13, 2022
e9aac2e
Merge branch 'qmk:master' into mlego_fix_product_id
May 21, 2022
a647d84
add mic mute
May 22, 2022
6c9705d
update to new name of macros for reset
alinelena May 23, 2022
2ebebb5
style for matrix
alinelena May 23, 2022
2930c7c
Merge branch 'qmk:master' into mlego_fix_product_id
May 28, 2022
3eef077
Merge remote-tracking branch 'origin/master' into mlego_fix_product_id
May 29, 2022
df30292
Merge branch 'qmk:master' into mlego_fix_product_id
May 29, 2022
78966d9
clean split
May 31, 2022
f49b268
use tinyuf2 as bootloader
alinelena Jun 1, 2022
5a3ed7c
Update keyboards/mlego/m65/rev4/rules.mk
Jun 2, 2022
57b36b5
radionalise product id and device version
Jun 2, 2022
02e81b1
add tinyuf2 as default bootloader for stm32f4
alinelena Jun 3, 2022
0d4d0eb
Merge branch 'qmk:master' into mlego_fix_product_id
Jun 4, 2022
d63aa7c
Merge branch 'qmk:master' into mlego_fix_product_id
Jun 8, 2022
b376776
update tinyuf2
alinelena Jun 8, 2022
aceb072
Merge branch 'qmk:master' into mlego_fix_product_id
Jun 9, 2022
8b14798
update tinyuf2 and via. f411 remove tinyuf2 since is not really worki…
alinelena Jun 9, 2022
8e018a7
sync the keymap with default
alinelena Jun 10, 2022
06c50ec
revert via non building with gcc 11
alinelena Jun 10, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions keyboards/mlego/m48/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@

#define DEBOUNCE 5

/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
Expand Down
13 changes: 0 additions & 13 deletions keyboards/mlego/m48/m48.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,3 @@
*/
#include "m48.h"

/*
void keyboard_pre_init_kb(void){

// Workaround for reversible pcb/mcu
palSetLineMode(C13, PAL_MODE_INPUT_PULLUP);
palSetLineMode(C15, PAL_MODE_INPUT_PULLUP);
palSetLineMode(B7, PAL_MODE_OUTPUT_OPENDRAIN);
palSetLineMode(A0, PAL_MODE_OUTPUT_OPENDRAIN);
palSetLineMode(A1, PAL_MODE_OUTPUT_OPENDRAIN);

keyboard_pre_init_user();
}
*/
21 changes: 12 additions & 9 deletions keyboards/mlego/m48/rev1/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,32 +18,29 @@
#include "config_common.h"

/* USB Device descriptor parameter */
#define PRODUCT_ID 0x0001
#define PRODUCT_ID 0x6261
#define DEVICE_VER 0x0001

#define MATRIX_ROW_PINS \
{ A6, A7, B0, B10 }
#define MATRIX_COL_PINS \
{ A10, A15, B3, B4, B5, B7, B6, A1, A2, A3, A4, A5 }

#ifdef ENCODER_ENABLE
#define ENCODERS_PAD_A \
{ A0 }
#define ENCODERS_PAD_B \
{ B8 }
#define ENCODER_RESOLUTION 4
#endif

#define LED_NUM_LOCK_PIN B12
#define LED_SCROLL_LOCK_PIN B13
#define LED_CAPS_LOCK_PIN C13

#define RGB_DI_PIN B15

#define UNUSED_PINS
#ifdef RGBLIGHT_ENABLE
#define RGBLIGHT_LAYERS

/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

#define MATRIX_IO_DELAY 5
#define RGB_DI_PIN B15

#define RGBLED_NUM 20
#define RGBLIGHT_EFFECT_BREATHING
Expand All @@ -56,3 +53,9 @@
#define RGBLIGHT_EFFECT_RGB_TEST
#define RGBLIGHT_EFFECT_ALTERNATING
#define RGBLIGHT_EFFECT_TWINKLE

#endif

#define UNUSED_PINS
// you want to comment this if using stm32-dfu as bootloader
#define FEE_PAGE_BASE_ADDRESS 0x08008000
88 changes: 88 additions & 0 deletions keyboards/mlego/m48/rev1/ld/STM32F401xE.ld
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
/*
ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

/*
* STM32F401xE memory setup.
*/
MEMORY
{
flash0 (rx) : org = 0x08000000, len = 16k /* tinyuf2 bootloader requires app to be located at 64k offset for this MCU */
flash1 (rx) : org = 0x08004000, len = 16k
flash2 (rx) : org = 0x08008000, len = 16k /* emulated eeprom */
flash3 (rx) : org = 0x0800C000, len = 16k
flash4 (rx) : org = 0x08010000, len = 512k - 64k
flash5 (rx) : org = 0x00000000, len = 0
flash6 (rx) : org = 0x00000000, len = 0
flash7 (rx) : org = 0x00000000, len = 0
ram0 (wx) : org = 0x20000000, len = 96k
ram1 (wx) : org = 0x00000000, len = 0
ram2 (wx) : org = 0x00000000, len = 0
ram3 (wx) : org = 0x00000000, len = 0
ram4 (wx) : org = 0x00000000, len = 0
ram5 (wx) : org = 0x00000000, len = 0
ram6 (wx) : org = 0x00000000, len = 0
ram7 (wx) : org = 0x00000000, len = 0
}

/* For each data/text section two region are defined, a virtual region
and a load region (_LMA suffix).*/

/* Flash region to be used for exception vectors.*/
REGION_ALIAS("VECTORS_FLASH", flash4);
REGION_ALIAS("VECTORS_FLASH_LMA", flash4);

/* Flash region to be used for constructors and destructors.*/
REGION_ALIAS("XTORS_FLASH", flash4);
REGION_ALIAS("XTORS_FLASH_LMA", flash4);

/* Flash region to be used for code text.*/
REGION_ALIAS("TEXT_FLASH", flash4);
REGION_ALIAS("TEXT_FLASH_LMA", flash4);

/* Flash region to be used for read only data.*/
REGION_ALIAS("RODATA_FLASH", flash4);
REGION_ALIAS("RODATA_FLASH_LMA", flash4);

/* Flash region to be used for various.*/
REGION_ALIAS("VARIOUS_FLASH", flash4);
REGION_ALIAS("VARIOUS_FLASH_LMA", flash4);

/* Flash region to be used for RAM(n) initialization data.*/
REGION_ALIAS("RAM_INIT_FLASH_LMA", flash4);

/* RAM region to be used for Main stack. This stack accommodates the processing
of all exceptions and interrupts.*/
REGION_ALIAS("MAIN_STACK_RAM", ram0);

/* RAM region to be used for the process stack. This is the stack used by
the main() function.*/
REGION_ALIAS("PROCESS_STACK_RAM", ram0);

/* RAM region to be used for data segment.*/
REGION_ALIAS("DATA_RAM", ram0);
REGION_ALIAS("DATA_RAM_LMA", flash4);

/* RAM region to be used for BSS segment.*/
REGION_ALIAS("BSS_RAM", ram0);

/* RAM region to be used for the default heap.*/
REGION_ALIAS("HEAP_RAM", ram0);

/* Generic rules inclusion.*/
INCLUDE rules.ld

/* TinyUF2 bootloader reset support */
_board_dfu_dbl_tap = ORIGIN(ram0) + 64k - 4; /* this is based off the linker file for tinyuf2 */
5 changes: 4 additions & 1 deletion keyboards/mlego/m48/rev1/rules.mk
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@
MCU = STM32F401

# Bootloader selection
BOOTLOADER = stm32-dfu
BOOTLOADER = tinyuf2
MCU_LDSCRIPT = STM32F401xE
EEPROM_DRIVER = vendor
#BOOTLOADER = stm32-dfu

# Build Options
# change yes to no to disable
Expand Down
3 changes: 3 additions & 0 deletions keyboards/mlego/m60/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@
#define MATRIX_ROWS 5
#define MATRIX_COLS 12

/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

#define DEBOUNCE 5

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
Expand Down
2 changes: 1 addition & 1 deletion keyboards/mlego/m60/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),

[_ADJ] = LAYOUT_ortho_5x12(
_______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______,
_______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______,
_______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______,
_______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
Expand Down
13 changes: 0 additions & 13 deletions keyboards/mlego/m60/m60.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,3 @@
*/
#include "m60.h"

/*
void keyboard_pre_init_kb(void){

// Workaround for reversible pcb/mcu
palSetLineMode(C13, PAL_MODE_INPUT_PULLUP);
palSetLineMode(C15, PAL_MODE_INPUT_PULLUP);
palSetLineMode(B7, PAL_MODE_OUTPUT_OPENDRAIN);
palSetLineMode(A0, PAL_MODE_OUTPUT_OPENDRAIN);
palSetLineMode(A1, PAL_MODE_OUTPUT_OPENDRAIN);

keyboard_pre_init_user();
}
*/
5 changes: 0 additions & 5 deletions keyboards/mlego/m60/m60.h
Original file line number Diff line number Diff line change
Expand Up @@ -46,12 +46,7 @@ static inline void led_rse(const bool on) {
}
static inline void led_caps(const bool on) {
#ifdef LED_CAPS_LOCK_PIN
if ((DEVICE_VER == 0x0001) || (DEVICE_VER == 0x0003)) {
writePin(LED_CAPS_LOCK_PIN, !on);
}
if (DEVICE_VER == 0x0002) {
writePin(LED_CAPS_LOCK_PIN, on);
}
#endif
}

25 changes: 14 additions & 11 deletions keyboards/mlego/m60/rev1/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,14 @@
#include "config_common.h"

/* USB Device descriptor parameter */
#define PRODUCT_ID 0x0001
#define PRODUCT_ID 0x6161
#define DEVICE_VER 0x0001

#define LED_NUM_LOCK_PIN B12
#define LED_SCROLL_LOCK_PIN B13
#define LED_CAPS_LOCK_PIN C13

#ifdef ENCODER_ENABLE
#define MATRIX_ROW_PINS \
{ A6, A7, B0, B1, B10 }
#define MATRIX_COL_PINS \
Expand All @@ -31,20 +36,13 @@
#define ENCODERS_PAD_B \
{ B8 }

#define LED_NUM_LOCK_PIN B12
#define LED_SCROLL_LOCK_PIN B13
#define LED_CAPS_LOCK_PIN C13
#endif

#define RGB_DI_PIN B15
#ifdef RGBLIGHT_ENABLE

#define UNUSED_PINS
#define RGB_DI_PIN B15
#define RGBLIGHT_LAYERS

/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

#define MATRIX_IO_DELAY 5

#define RGBLED_NUM 20
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
Expand All @@ -56,3 +54,8 @@
#define RGBLIGHT_EFFECT_RGB_TEST
#define RGBLIGHT_EFFECT_ALTERNATING
#define RGBLIGHT_EFFECT_TWINKLE
#endif

#define UNUSED_PINS
// you want to comment this if using stm32-dfu as bootloader
#define FEE_PAGE_BASE_ADDRESS 0x08008000
88 changes: 88 additions & 0 deletions keyboards/mlego/m60/rev1/ld/STM32F401xE.ld
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
/*
ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

/*
* STM32F401xE memory setup.
*/
MEMORY
{
flash0 (rx) : org = 0x08000000, len = 16k /* tinyuf2 bootloader requires app to be located at 64k offset for this MCU */
flash1 (rx) : org = 0x08004000, len = 16k
flash2 (rx) : org = 0x08008000, len = 16k /* emulated eeprom */
flash3 (rx) : org = 0x0800C000, len = 16k
flash4 (rx) : org = 0x08010000, len = 512k - 64k
flash5 (rx) : org = 0x00000000, len = 0
flash6 (rx) : org = 0x00000000, len = 0
flash7 (rx) : org = 0x00000000, len = 0
ram0 (wx) : org = 0x20000000, len = 96k
ram1 (wx) : org = 0x00000000, len = 0
ram2 (wx) : org = 0x00000000, len = 0
ram3 (wx) : org = 0x00000000, len = 0
ram4 (wx) : org = 0x00000000, len = 0
ram5 (wx) : org = 0x00000000, len = 0
ram6 (wx) : org = 0x00000000, len = 0
ram7 (wx) : org = 0x00000000, len = 0
}

/* For each data/text section two region are defined, a virtual region
and a load region (_LMA suffix).*/

/* Flash region to be used for exception vectors.*/
REGION_ALIAS("VECTORS_FLASH", flash4);
REGION_ALIAS("VECTORS_FLASH_LMA", flash4);

/* Flash region to be used for constructors and destructors.*/
REGION_ALIAS("XTORS_FLASH", flash4);
REGION_ALIAS("XTORS_FLASH_LMA", flash4);

/* Flash region to be used for code text.*/
REGION_ALIAS("TEXT_FLASH", flash4);
REGION_ALIAS("TEXT_FLASH_LMA", flash4);

/* Flash region to be used for read only data.*/
REGION_ALIAS("RODATA_FLASH", flash4);
REGION_ALIAS("RODATA_FLASH_LMA", flash4);

/* Flash region to be used for various.*/
REGION_ALIAS("VARIOUS_FLASH", flash4);
REGION_ALIAS("VARIOUS_FLASH_LMA", flash4);

/* Flash region to be used for RAM(n) initialization data.*/
REGION_ALIAS("RAM_INIT_FLASH_LMA", flash4);

/* RAM region to be used for Main stack. This stack accommodates the processing
of all exceptions and interrupts.*/
REGION_ALIAS("MAIN_STACK_RAM", ram0);

/* RAM region to be used for the process stack. This is the stack used by
the main() function.*/
REGION_ALIAS("PROCESS_STACK_RAM", ram0);

/* RAM region to be used for data segment.*/
REGION_ALIAS("DATA_RAM", ram0);
REGION_ALIAS("DATA_RAM_LMA", flash4);

/* RAM region to be used for BSS segment.*/
REGION_ALIAS("BSS_RAM", ram0);

/* RAM region to be used for the default heap.*/
REGION_ALIAS("HEAP_RAM", ram0);

/* Generic rules inclusion.*/
INCLUDE rules.ld

/* TinyUF2 bootloader reset support */
_board_dfu_dbl_tap = ORIGIN(ram0) + 64k - 4; /* this is based off the linker file for tinyuf2 */
5 changes: 4 additions & 1 deletion keyboards/mlego/m60/rev1/rules.mk
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@
MCU = STM32F401

# Bootloader selection
BOOTLOADER = stm32-dfu
BOOTLOADER = tinyuf2
#BOOTLOADER = stm32-dfu
MCU_LDSCRIPT = STM32F401xE
EEPROM_DRIVER = vendor

# Build Options
# change yes to no to disable
Expand Down
2 changes: 2 additions & 0 deletions keyboards/mlego/m60_split/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@
#define MATRIX_COLS 6

#define DEBOUNCE 5
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
Expand Down
2 changes: 1 addition & 1 deletion keyboards/mlego/m60_split/keymaps/via/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),

[_ADJ] = LAYOUT_ortho_5x12(
_______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______,
_______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______,
_______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______,
_______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
Expand Down
Loading