Hi all,

I have an idea in my head, but I’m a cable short, and looking for suggestions.

24-key split-ortho (2 keys per finger, where you press both top and bottom keys simultaneously to get the home row key), with per-key RGB and OLED display on the left side. But…

I’d like to run this off a single BlackPill controller on the left hand side, and use a CAT6 cable to bridge the two sides.

CAT6 has 4 twisted pairs, so 8 cables. If I run a 4x3 matrix then that’s 7 cables. Plus another for the VCC for the RGB. But then no more for the DIN/DOUT for RGB. GND should be fine as I can earth the right hand side separately, but I’m missing a cable if I want RGB.

Are there any suggestions on how I might be able to get around my challenge?

  • corvett@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    1 year ago

    I’d drop the RGB man.

    Or with diodes, could you logically arrange your 24 keys into 4 rows / 6 columns (or even 5x5) and save any pins that way?

    Edit: you’re already doing a 4x3 per side. Nvm

  • Gumshoe@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    I’m not too familiar, but I’ve been told shift registers or IO expanders can save pins. In my small amount of research, it seems like they work (both of them seem to do the same thing? I’m honestly not sure what the difference is) by converting parallel signals to serial signals like SPI or I2C. For example, with I2C (the one that requires fewer wires), I think you could wire up your 4 columns… to the 4 wires of the I2C standard, which are VCC, ground, and two data lines, but if you’re able to use those same lines for ground and VCC for the rest of your board too, you’d be effectively saving two wires. Note1: If they share VCC cable with the RGB’s you’d have no ability to cut the external power, but maybe for a wired board you don’t care about that. Note2: Not sure if you could wire all 7 matrix wires to one expander… for me at least that wasn’t an option because to not have to do constant polling, you can only use an expander on the output side of the matrix. Avoiding constant polling is a power concern when building a wireless board.

  • rafaelromao@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    1 year ago

    HDMI cables, with 19pins (I will use it in my next build), or flat cables, which you can find in different sizes and pin counts (I used some with 10 pins in my Rommana). Both types of connector and cables can be easily found in Aliexpress.

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

      Thank you. It was specifically the CAT6 I was Looking to use, as you can get an ultra thin patch cable, and it will clip in (so reduced risk of shorting the controller). Maybe I need to go without RGB? 😭