Close
0%
0%

Keyboard Development Boards (QMK-VIA)

STM32F411 (LQFP64) and RP2040 Modules for QMK and VIA Keyboard Software Development

Similar projects worth following
Keyboard Development Modules:

Development boards to assist in development of QMK/VIA based keyboards from scratch using either an STM32F411 (LQFP64 72mm x 32mm) or RP2040 (42mm x 49mm).

Optional:
A bare-bones basic Keyboard which includes, HS Connectors, Diodes, RGB Leds, Caps Lock Led, Rotary Encoder and RGB leds (∼80%, 98 keys including 10 macro keys), is included in the project. It can be used with any development module having enough GPIOs.

Module to Keyboard connection via a 30 pin 1.27mm pitch connector or 30 pin FFC / FPC ribbon connector.

Also available is an optional 1.27mm to 2.54mm expander board as probing/connecting to a 1.27mm can be difficult.

Hardware: Micro, Keys, etc...

Micros: STM32F411RETx & RP2040

Software Support: QMK/VIA

Switches: MX type hot-swappable

Keys: 98 Keys + Encoder Switch (includes 10 Dedicated Macro Keys)

Rotary Encoder: Volume / RGB.

Tools:

  • Kicad version 8.0.6+1, release build...
  • Plugins: KLE Placer (saves so much time with layout, a must have).
  • QMK Configurator

Other references:

keyboard-layout-editor.com

Will publish Kicad files and Code after validation...

stm32_64pin_dev_board.kicad_pcb_bom.csv

Current BOM (may change)...

Comma-Separated Values - 2.54 kB - 12/26/2024 at 14:39

Download

  • New ISO Layout

    Michael O'Toole6 days ago 0 comments

    Testing the new RP2040 Module in usevia.app

    Note, encoder in now on the  right, it replaces the pause keyboard button as it is never used...

  • RP2040 Keyboard Development Module

    Michael O'Toole01/25/2025 at 17:52 0 comments

    Assembled boards arrived today (from PCBWay). A quick test reveals I didn't screw up as they worked perfectly, including the RGB.

    The 2040 having more available GPIO's simplifies the design process and with the driver:vendor option RGB is a breeze and the flashing is easy with drag and drop, definitely the way to go for your first keyboard project.

    One thing for certain, without a microscope or camera with zoom, hand soldering these tiny devices would be a major challenge for anyone and not recommended for your average hobbyist or old engineers like me.

    The cost of 5 boards (3 completely assembled and 2 empty), including courier amounted to $87.34. That's about $22 per assembled board which is as good as it gets... I should have got all the boards assembled, I will in future.

    Next Step:

    It would be tempting to just add the electrons from the dev board to the main keyboard PCB and call it a day, but as I now have 3 perfectly good RP2040 Keyboard Modules, I think I go with a basic keyboard PCB, that is a board with only the switches, diodes, RGB leds and the 30 pin connector. This also has the advantage of being able to repurpose it for use with other modules.

    There is no difficulty in hand assembling the bare-bones board as the diodes, hot-swappable connectors and RGB are easy enough to hand solder, thereby reducing the overall cost.

  • Bare-bones Keyboard II

    Michael O'Toole12/27/2024 at 07:19 0 comments

    Working on a new version of the bare-bones board

    Improvements:

    • Changed RGB to SK6812MINI RGB (much easier to hand solder).
    • Moved Rotary Encoder to right side in place of the pause button (as it is rarely, ever ever used).
    • Pin compatible connector, serves both STM32 and RP2040 development modules.

    Reasoning:

    The bare-bones keyboard PCB is intended for development along with either the STM32 or RP2040 development modules. My main aim was to simplify development and limit potential problems by separating development into two parts, then combine to create the final keyboard.

    Nothing is wasted, as I can combine any module with a bare-bone board to create a working keyboard.

    I will update this log when I complete the new board...

  • Additional Images

    Michael O'Toole12/26/2024 at 14:27 0 comments

    Place holder for additional images 

    Cols/Rows numbering from keyboard-layout-editor.com and usevia app (encoder on left)

  • Keyboard Expander

    Michael O'Toole12/21/2024 at 01:50 0 comments

    Expands the 1.27" connector to 2.54" for ease of testing (the 1.27" connector is too small to safely probe). The expander board also includes an optional 30 pin FFC / FPC ribbon connector as an optional method to connect future boards. All Kicad files will be published after validating operation.

  • RP2040 Keyboard Development Module

    Michael O'Toole12/14/2024 at 11:13 0 comments

    Added an RP2040 Development Board to project.

    This module is for testing RP2040 based keyboards and supports all the available GPIO's. It includes four RGB leds for general testing of RGB code but can drive a led strip or the keyboard RGB via the 3 pin connector. 

    A 30 pin 1.27" pitch connector connects to the test keyboard consisting of 99 MX Switches, 99 Matrix Diodes, 99 RGB leds and no processor... it is used for testing both STM32F411 and RP2040 modules. 

    Note, the 1.27"connector is too small for real world testing, so I have added an expansion/conversion board to convert from 1.27" to 2.74" and also include a 0.1" ribbon cable connector as an alternate connection method.

    In an ideal world, the keyboard connector would  have the same pin-out for both STM32F411 and RP2040.

    Revision 2.0 of the module removes RGB test leds as it intended to be used with the Basic Keyboard (no smarts/processor)...

  • usevia.app and other update

    Michael O'Toole11/17/2024 at 22:50 0 comments

    Echo Keyboards

    As I'm working on several keyboards, I grouped them under the brand name Echo Keyboards...

    Models are:

    • Ayla80 (10x10 matrix and Blackpill Module ... 80%)
    • Ayla II : 6x17 matrix and an STM32F411 (64 pin) Micro. 80%
    • Cashel: 6x20 matrix and an STM32F411 (64 pin) Micro. 100%
    • Mioke: 10x10 matrix STM32411 (48 pin) Micro. Number Pad with Macros.

    News:

    Finally worked out how to use keyboard-layout-editor.com correctly to generate the required code, I was just copying the raw data instead of downloading the json file which made life more difficult...

    This link solved most of my problems: https://www.caniusevia.com/docs/layouts

    I have created a new git repo for the current code: here

  • Testing New STMF411 Board

    Michael O'Toole11/06/2024 at 19:07 0 comments

    Received two prototype (populated) boards in post. Preliminary test went well, everything appear correct, including the code for the new 6 x 17 matrix layout as opposed to the 10 x10 matrix used in my original Blackpill keyboard.

    I failed to notice that QMK supports 25xx-series for SPI (and 24xx-series for IC2) so the current test EEPROM footprint needs changing.

    As noted earlier, the new dev board are designed to use a 6 x 17 matrix and the QMK keyboard files require updates to reflect this. After updates to the code, the keyboard generate the correct codes but the layout in usevia.app needs a little work, the Enter key is not in the correct position ++

    Update: 21, December

    Corrected STM32F411 code, now all key in the correct place, ISO/ANSI switching works, everything else works with usevia including settings RGB... but awaiting expaned board to test RGB.

    Added RP2040 version (awaiting boards from PCBWay)... are we there yet?

    Added Expander Board (awaiting boards from JLCPCB)... Arerived, perfect...

  • More Connections

    Michael O'Toole10/12/2024 at 16:46 0 comments

    STM32 Keyboard Development Module (adding more to options board)...

    Added optional program header, connections for MISO, MOSI, SCK and SS

View all 9 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates