|new 0.3.2||Feb 26, 2021|
|0.3.1||Feb 23, 2021|
|0.2.3||Jan 5, 2021|
|0.2.2||Oct 6, 2020|
|0.1.1||Feb 27, 2020|
549 downloads per month
System76 EC is a GPLv3 licensed embedded controller firmware for System76 laptops.
- Supported embedded controllers
- Flashing firmware
- Creating a custom keyboard layout
- Adding a new board
The complete set of dependencies can be installed using the
from the Open Firmware repo.
Dependencies specific to EC development can be installed with:
sudo apt install \ avr-libc \ avrdude \ gcc-avr \ sdcc
Library for accessing System76 ECs
First, construct an access method, using an object implementing the
Access trait. Next, an Ec
object can be contructed, which exposes the command interface.
There are some differences between targets and features that are listed below:
hidapifeature. Only functional on USB ECs.
redox_hwiofeature and a nightly compiler. This method is only recommended for use in firmware with LPC ECs, as mutual exclusion is not guaranteed.
linuxtarget_os. Recommended for LPC ECs, as this method can utilize mutual exclusion.
SuperIoall require the
redox_hwiofeature and a nightly compiler. It is only recommended to use these in firmware, as mutual exclusion is not guaranteed.