Hi all,

I’m hoping for some troubleshooting tips. I have a self-build split keyboard using Blackpills.

If I flash either side with ‘SPLIT_KEYBOARD = no’ in my rules.mk, then both sides work fine (but both working as the left side). If however I set ‘SPLIT_KEYBOARD = yes’, then both sides stop working.

It’s driving me insane!

These are the relevant details of rules.mk:

MCU = STM32F401
BOOTLOADER = stm32-dfu
SPLIT_KEYBOARD = yes
SERIAL_DRIVER = usart

And config.h:

#pragma once
#define HAL_USE_SERIAL TRUE
#define SOFT_SERIAL_PIN A12
#define MASTER_LEFT
#define MATRIX_ROWS 6
#define MATRIX_COLS 6
#define SERIAL_USART_DRIVER SD1
#define SERIAL_USART_TX_PAL_MODE 7

And halconf.h:

#pragma once
#define SERIAL_USB_BUFFERS_SIZE 256
#include_next 

And mcuconf.h:

#pragma once
#include_next 
#undef STM32_SERIAL_USE_USART1
#define STM32_SERIAL_USE_USART1 TRUE

Please help! I’ve been at this for three days.

  • Andy@lemmy.worldOP
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    Blackpill is defined within qmk already. You can do a search in the repo for STM32F401 and see a number of keyboards that use it. From this, you can also see which are split keyboards. The M60 Split is a good example which uses a SPLIT_HAND_PIN to define left and right. The Phoenix is another. This also uses the SPLIT_HAND_PIN. Given that, I've tried updating, but no luck. If SPLIT_KEYBOARD = yes then nothing works. If SPLIT_KEYBOARD = no then they work but they both come through as the left side (even if SPLIT_HAND_PIN B9 is set, and B9 is connected to GND or not).