I took a WaveShare RP2040-Touch-LCD-1.28and made a program to use it as a touchscreen. This is still very much in the beta phase but the proof of concept works. Here’s my GitHub repo for it.

I’m planning on integrating it into my next split near the thumb cluster.

  • tubbytwins@lemmy.world
    link
    fedilink
    arrow-up
    6
    ·
    1 year ago

    Very cool indeed! I’d like to see the keyboard integration, once it’s ready. Are there enough free pins on this module to handle the GPIOs for a keyboard matrix?

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

      There are 6 GPIO available. So maybe a macro Pad… but my idea is do embed it in The case but still have a separate usb cable to it. You can also display things on the screen if you’d like. It has a RTC and a battery management circuit so you could make it into a clock, or use the GPIO to speak with your keyboard to send keystrokes data via serial…

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

          Yes. It does I2C. It’s also a pi Pico core so dual core. So you could use a separate core to drive the screen independently from the keyboard to keep them fast.

          Edit: actually the i2C is not exposed on the pins, but you should be able to use the BitBang_I2C library to expose them on any pair of GPIO pins. I’ll try it out and report back.

          Edit2: actually, no need for that library you can set virtual I2C to any pins I tried it with another project on the same board.

  • SuperFola@programming.dev
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    This is really cool! You could use it to display information about layers and when touched it transforms into a touchpad

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

      Thanks! Updates so far are:

      • turns out there is no multitouch, so no two finger right click or two finger scroll. I’ll need to work something else out. Likely will have to be. Key plus scroll or something…
      • there are only 6 pins exposed and none are I2C but you can use BitBang_I2C library to expose them then use an I2C expander board to use it in a full keyboard.
  • shaysub@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    This is super cool! Is the firmware flexible enough to support a similar ESP32 based chip? Something like this. That’ll then allow you to make the touchpad wireless over BLE and just stick it on any keyboard as long as you have a way to power it.

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

      You could pull the trackpad logic out of this but it would need some rewrite. For the next version , I’m actually looking into implementing the drivers into QMK keyboard firmware as it has a whole trackpad management as well that does what I wrote and more and also is much more flexible.

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

        Oh neat! QMK seems to be the most appropriate for trackpads. I was thinking of something that could be wireless which afaik QMK doesn’t support. And ZMK’s support for pointer devices is not great just yet.

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

          I hear you. The two issues are this model has no wireless as it’s rp2040. Also a touchscreen is pretty power hungry for a wireless device like a keyboard that is supposed to be charged infrequently.

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

            Yeah, both valid points. I was asking about the firmware supporting an esp32 specifically for the wireless capabilities. And on terms of battery life, I went overboard and installed 3000mAh batteries in my keyboard that I can use to power the display 😂

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

    God damn, that’s cool as hell. I look forward to seeing it integrated with the keyboard in the future!