# What is the standard way for one to go about making a custom keyboard?

**URL:** <https://community.frame.work/t/what-is-the-standard-way-for-one-to-go-about-making-a-custom-keyboard/71577>\
**Category:** Framework Laptop 16\
**Tags:** project, framework-laptop-16-amd-7040\
**Created:** [July 4, 2025, 3:15pm UTC](https://community.frame.work/t/what-is-the-standard-way-for-one-to-go-about-making-a-custom-keyboard/71577 "2025-07-04T15:15:43Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Thomas\_Grothe](https://avatars.discourse-cdn.com/v4/letter/t/87869e/32.png) [@Thomas\_Grothe](https://community.frame.work/u/Thomas_Grothe)\
**Post date:** [July 4, 2025, 3:15pm UTC](https://community.frame.work/t/what-is-the-standard-way-for-one-to-go-about-making-a-custom-keyboard/71577/1 "2025-07-04T15:15:43Z")

</div>

i want to make a thinkpad-like keyboard with a trackpoint. has anyone else made custom hardware for any of the framework devices? does this repo contain all the information i need? [GitHub - FrameworkComputer/InputModules: Reference designs and documentation for the Input Module system in the Framework Laptop 16](https://github.com/FrameworkComputer/InputModules/tree/main)

---

<div class="post-metadata">

**Author:** ![MJ1](https://sea1.discourse-cdn.com/flex001/user_avatar/community.frame.work/mj1/32/15519_2.png) [@MJ1](https://community.frame.work/u/MJ1)\
**Post date:** [July 4, 2025, 4:19pm UTC](https://community.frame.work/t/what-is-the-standard-way-for-one-to-go-about-making-a-custom-keyboard/71577/2 "2025-07-04T16:19:13Z")

</div>

Welcome to the forum.

> [@Thomas\_Grothe](#):
>
> does this repo contain all the information i need?

Yep, looks like it.  
Though take note of:

> For reference firmware for different types of modules, check out these additional repositories:
> 
> - [QMK firmware](https://github.com/frameworkcomputer/qmk_firmware) for the keyboard and numpad modules
> - [inputmodule-rs](https://github.com/FrameworkComputer/inputmodule-rs) firmware and application for other input modules

In the qmk firmware you’ll find how qmk handles the sleep pin. Presuming you wish to utilize it. You could ignore it.

> **EC-side details of sleep pin (click to show)**
>
> The sleep pin is connected to the EC (Embeded Controller) so you could also look at the firmware for that, if you have interest. The FWL16 EC firmware codename is Lotus, so this should be the branch for it, [github.com/FrameworkComputer/EmbeddedController/tree/fwk-lotus-azalea-19573](https://github.com/FrameworkComputer/EmbeddedController/tree/fwk-lotus-azalea-19573)
> 
> > [@Change keyboard backlight presets?](https://community.frame.work/t/change-keyboard-backlight-presets/71195/5):
> >
> > Embedded Controller firmware codenames:
> > 
> > | Laptop | EC Firmware |
> > | --- | --- |
> > | Framework Laptop 13 · Intel 11th Gen | hx20 |
> > | Framework Laptop 13 · Intel 12th Gen | hx30 |
> > | Framework Laptop 13 · Intel 13th Gen | hx30 |
> > | Framework Laptop 13 · AMD 7040 | Azalea |
> > | Framework Laptop 13 · Intel Ultra Series 1 | Marigold |
> > | Framework Laptop 13 · AMD AI 300 Series | Lilac |
> > | Framework Laptop 16 · AMD 7040 Series | Lotus |
> > | Framework Laptop 12 · Intel 1300U Series | Sunflower (presumed) |

> [@Thomas\_Grothe](#):
>
> has anyone else made custom hardware for any of the framework devices?

See the Creators & Developers \> Input Module subforum category, [community.frame.work/c/developer-program/input-module/135](https://community.frame.work/c/developer-program/input-module/135)

Several community members have projects posted there.

As you can see from the github pinout, the upper modules connect via standard usb, so one could create so many different things fairly easily.

---

<div class="post-metadata">

**Author:** ![Gmanny](https://sea1.discourse-cdn.com/flex001/user_avatar/community.frame.work/gmanny/32/457_2.png) [@Gmanny](https://community.frame.work/u/Gmanny)\
**Post date:** [July 5, 2025, 6:49pm UTC](https://community.frame.work/t/what-is-the-standard-way-for-one-to-go-about-making-a-custom-keyboard/71577/3 "2025-07-05T18:49:54Z")

</div>

Check out [this thread](https://community.frame.work/t/thinkpad-keyboard-mod-super-early-stages/38484/125) of someone getting pretty close to fitting the thinkpad keyboard into FL16.

---

<div class="post-metadata">

**Author:** ![Thomas\_Grothe](https://avatars.discourse-cdn.com/v4/letter/t/87869e/32.png) [@Thomas\_Grothe](https://community.frame.work/u/Thomas_Grothe)\
**Post date:** [July 14, 2025, 1:56am UTC](https://community.frame.work/t/what-is-the-standard-way-for-one-to-go-about-making-a-custom-keyboard/71577/4 "2025-07-14T01:56:58Z")

</div>

awesome, thanks for the info!

---

<div class="post-metadata">

**Author:** ![Thomas\_Grothe](https://avatars.discourse-cdn.com/v4/letter/t/87869e/32.png) [@Thomas\_Grothe](https://community.frame.work/u/Thomas_Grothe)\
**Post date:** [July 14, 2025, 1:57am UTC](https://community.frame.work/t/what-is-the-standard-way-for-one-to-go-about-making-a-custom-keyboard/71577/5 "2025-07-14T01:57:15Z")

</div>

oh nice i shall check that out

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex001/uploads/framework3/original/1X/64c81a89f963ddb07633887baceb642a4b056046.png) [@system](https://community.frame.work/u/system)\
**Post date:** [January 10, 2026, 1:58am UTC](https://community.frame.work/t/what-is-the-standard-way-for-one-to-go-about-making-a-custom-keyboard/71577/6 "2026-01-10T01:58:03Z")

</div>

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.
