#First split keyboard build, no keys are working and keyboard not detected in qmk toolbox HID console

1 messages · Page 1 of 1 (latest)

crimson surge
#

Hi guys,
I'm a total beginner at qmk, vial and keyboard builds in general, and recently, i have succesfully built one with the help of some of you guys.
It's a split keyboard with oled and encoder on both halves.
Most of the time the fimware doesn't compile and when it does, the keyboard is not detected in the qmk toolbox console, no usb connect sound from my pc and no keys work.
It would be great if a kind soul could help me get this board working.
I'm linking the config, rules, json and keymap to this post

crimson surge
#

i managed to compile the firmware with adding "SERIAL_DRIVER = vendor" in the rules and this in the config
#define SERIAL_USART_FULL_DUPLEX
#define SERIAL_USART_TX_PIN GP1
#define SERIAL_USART_RX_PIN GP0
but the keyboard is still not detected in the console or by the pc
also checked with multimeter to see if rows and columns are wired correctly and no problem there

crimson surge
#

Firmware compiles without any problem, I made some changes to the keymap and now the matrix and encoder works.
The split communication and oled still dont work.
For the moment, i need to plug in each half independently for it to work, as soon as i plug in one half into the other, it is not detected

golden boltBOT
#
Having Split Problems?

My split keyboard doesn't work until I replug

This can happen when using SPLIT_USB_DETECT and neither side has detected USB within the timeout period. You can either try increase the SPLIT_USB_TIMEOUT or use SPLIT_WATCHDOG_ENABLE.

Note: SPLIT_USB_DETECT is enabled by default for boards that use ChibiOS (i.e. STM32/RP2040) unless a VBUS detection pin has been configured.

Only the USB connected side of my split keyboard works

Please ensure both sides have been flashed individually with the same firmware when editing options in rules.mk or changing defines in config.h. The second side does not update over the interconnect. You will need to connect it via USB and run the flashing procedure again.

The side not connected to USB still doesn't work

If the keyboard is AVR-based (so uses a Pro Micro or derivative/ATmega*/AT90*), try adding #define SPLIT_USB_DETECT to your config.h. QMK Configurator can't be used for this and the firmware will require compiling locally - follow the guide linked at the beginning of the FAQ.

My split keyboard keys are flipped

Try swapping the USB cable to the other side. If you would like to be able to connect either side, handedness by EEPROM is a good choice as it requires no hardware mods. Again, locally compiled firmware only.

The above split keyboard comments only apply to keyboards that use a controller for each side. There are a few that use a single controller with a GPIO expander for the other half. Some examples include the Moonlander, Ferris and Torn. If the non-USB side doesn't work in this case it's usually a hardware issue, for instance the link cable not being fully inserted.

crimson surge
#

I have tried all this but still nothing
the halves work independently but not as master/slave

civic zenith
#

...you have a bunch of random shit in your config.h and rules.mk files that appears to be LLM hallucination (SPLIT_COMMUNICATION = uart???)
stick only to things that are found in the documentation or the actual codebase (you can search this!)

crimson surge
crimson surge
civic zenith
#

I linked the silakka54 because it's also a split keyboard which uses the rp2040 zero and the same split communication pins
so...why not copy pretty much everything it's doing

crimson surge
#

ah ok didnt see that
thanks a lot
will read through this

crimson surge
civic zenith
crimson surge
civic zenith
#

you're putting the cart before the horse
build on top of fundamentals
each half should work correctly as a keyboard
then the two halves should work together
then look into adding a display
then look into dynamic remapping

#

for a better understanding of split keyboard matrices, I would also recommend looking at split keyboards using QMK Configurator
set the legends to Matrix (row, col)

#

you can then compare and contrast with their keyboard.json files

crimson surge
crimson surge
civic zenith
crimson surge