Open Sourcing our Firmware

At Framework, the community is at the core of how we build products. At most consumer electronics companies, community members are a source of revenue or at best a channel for evangelism. We expect more than that. We want to empower you to participate directly in the creation of Framework product ecosystems. Modular products only get more capable and interesting as the communities around them grow, enabling a broader range of audiences and use cases. We’re seeing the early results of that already with the Expansion Card Developer Program and some of the amazing designs in development and prototyping, like magnetic charging cards and LTE radios.

To add to that, we’re happy to announce that we’ve published the open source Embedded Controller (EC) firmware for the Framework Laptop, available today on GitHub. This is based on Google’s chromium-ec project, which is the EC firmware used in Chromebooks. We’ve released our variant under the same BSD 3-clause license that lets you modify, share, and re-purpose it as you’d like. The EC firmware is what handles low level functionality in the Framework Laptop, including power sequencing, keyboard and touchpad interfacing, and controlling the LEDs in the system. Note that incorrect firmware modifications could damage your Mainboard or other hardware, so we recommend only flashing modified firmware if you are willing to take that risk. We’re continuing to invest in open source firmware development, with the goal of replacing other proprietary firmware we’re currently stuck with in the future too.

It’s been fantastic seeing the ongoing support and documentation from everyone around using Linux on the Framework Laptop in the Community. In just a few months, we’ve seen dozens of guides published for different Linux distros like Fedora, Ubuntu, Mint, Manjaro, Arch, Debian, elementary, and more. We’ve been able to distill all of that information down into easy to follow step by step guides for the most popular distros. We’ve started with Fedora 35, Ubuntu 21.10, and Manjaro 21.2.1, and we’ll add more over time. Fedora 35 works out of the box with full hardware support for the Framework Laptop, so we’d recommend that as an ideal entry point if you’d like to try Linux.

Our goal is always to make products that are simple and intuitive to use day to day, but that also let you go as deep in exploration, experimentation, and creation as you’d like to.

71 Likes

Very nice! Thanks for releasing this! I’m so looking forward to explore and customize the EC firmware on my Framework.

4 Likes

Excellent news! Also great that there is an official guide for Manjaro now too. Keep up the great work Framework! :rocket:

Edit: I might just have to wipe my Framework again and put Linux back on it. Will be the 12th time my Framework has been wiped.

8 Likes

You didn’t have to do this, but it’s awesome that you did!

It would be fantastic if you had certified releases that are based off community firmware development on the web site so those of us looking for certain features had a safe place to download from.

10 Likes

Paging @DHowett !!

Based on some of the comments by Kieran in that excellent thread, I’m sure there’s cooperation.

4 Likes

This is definitely something to look into! :eyes:

5 Likes

This is fantastic news — thank you!

1 Like

Absolutely amazing! This is why I love the framework team lol, it’s a refreshing breath to have a team so intertwined with the consumers.

3 Likes

HELL YEAH FRAMEWORK TEAM! Thanks so much!

edit notes: switched to more inclusive language! “guys” is not inclusive. :slight_smile:

7 Likes

Maybe this will lead to a cure for the issue with my Framework laptop where it drains the main battery when completely shut down.

2 Likes

Great news. Thank you, Framework team!

Now I am checking the source code. Maybe the following diff shows the Framework specific modifications.

$ git diff c7fea151a88925c8167d7ad788452cdca3635215..hx20

or GUI.

2 Likes

They really did it! :confetti_ball:

@junaruga from the readme:

Most changes are limited to the following folders, however there are some modifications in common.

board/hx20
chip/mchp
2 Likes

This is absolutely awesome, congratulations Framework! :smiley:

Aww, thanks! We love Framework too! :heart:

4 Likes

Would Coreboot be able to make use of this?

1 Like

@nrp – Thank you! This news switched my planned purchase of a Star Labs Starbook Mk V to a Framework Laptop. I’m looking forward to more news of this sort, especially re: BIOS/UEFI firmware.

4 Likes

I would give you a standing ovation, but I’m sitting at my desk :slight_smile:

All jokes aside, very well done Framework Team

1 Like

With the EC now open, does that mean that it’s possible to map a ThinkPad keyboard to the framework laptop? It sounds like a fun thing to try out.

Nice. Also looks like you’ve already fixed the amber blinking LED when charge is disabled because of the limit: https://github.com/FrameworkComputer/EmbeddedController/commit/d8fa4cc0f83d49d3c912cc8a5bfed2823bf662a9

4 Likes

This sounds like fantastic news, though I’m not extremely clear on what exactly the EC Firmware controls. What sort of projects can I expect to be able to try using this?

This sounds really cool! Do we know where/what flags (if any) gets set when the Fn lock is toggled? Because I have a cool idea for a Windows tray app, and it sounds like “Fun Indicator!”