Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bundle proper config.bin files #991

Closed
mondalaci opened this issue Jul 24, 2024 · 11 comments
Closed

Bundle proper config.bin files #991

mondalaci opened this issue Jul 24, 2024 · 11 comments
Assignees

Comments

@mondalaci
Copy link
Member

Currently, make-release.mjs puts the same config.bin to every device/* directory.

Use the relevant user configurations instead for uhk60-right, uhk60v2-right, uhk-80-left, uhk-80-right. I think all these configs should differ now that device id is part of the user config.

Why have we put device id into the user config? I can't remember.

Don't use any user config for uhk-dongle.

@mondalaci
Copy link
Member Author

Also copy the files under the newly added merged and kboot keys to their respective devices/* directory in the firmware build.

@ert78gb
Copy link
Member

ert78gb commented Jul 29, 2024

Why have we put device id into the user config?

UltimateHackingKeyboard/agent#2378

But it has not been decided. We are waiting for Karel to come back from holiday and talk about it.
It think we should wait for the decision before we start the implementation of it.

Don't use any user config for uhk-dongle.

The <module-name>.bin file is not a user config. It is something that cmake generate. The package.json reference for it as source. The size of the binary user-config is ~4KB, but the module bin is ~9-10KB

@mondalaci
Copy link
Member Author

Regarding the dongle, I meant the user config. I wanted to make it clear not to include it unlike the user config for the left and right halves.

@kareltucek
Copy link
Collaborator

kareltucek commented Aug 4, 2024

Well, we talked those questions over on telegram. If I recall correctly, we agreed to try to share the configurations among devices (as I have proposed, but additionally to employ some keyid mapping schemes...), which means that there is no strong reason to put the device id into the user config.

@ert78gb
Copy link
Member

ert78gb commented Aug 4, 2024

please don't forget to share the additionally to employ some keyid mapping schemes... logic. I think we have to implement this logic in Agent and firmware side too.

@mondalaci
Copy link
Member Author

We'll use a single config.bin file, after all, containing the key mapping of all UHK keyboards. Let's put this file into the root directory of firmware releases. I've shared the private key-ids repo with you, guys.

@mondalaci mondalaci transferred this issue from UltimateHackingKeyboard/firmware80 Dec 12, 2024
@ert78gb
Copy link
Member

ert78gb commented Dec 12, 2024

The opening issue implemented in the 3693522

We'll use a single config.bin file, after all, containing the key mapping of all UHK keyboards. Let's put this file into the root directory of firmware releases. I've shared the private key-ids repo with you, guys.

Is it still relevant? Earlier we decided we will use different user config for uhk60 and 80 to save storage on the keyboard.

@mondalaci
Copy link
Member Author

On second thought, this issue is still relevant. Ideally, per-device configurations should only include the keys of actual devices; otherwise, excess keys take up precious configuration space, so they shouldn't be included.

We should have a master configuration containing every key on every released keyboard. Then, Agent's build process should create per-device configurations, deleting keys not present on devices.

@kareltucek
Copy link
Collaborator

Another option (which I think would be the best in the long run) is to implement a user interface that allows the user to trim down the user config, similar to the way we allow the user to trim the per-key-rgb.

@mondalaci
Copy link
Member Author

The suggested option is described in UltimateHackingKeyboard/agent#2431

Implementing this issue would be worthwhile so the user configuration is minimal by default.

@ert78gb
Copy link
Member

ert78gb commented Dec 13, 2024

On second thought, this issue is still relevant. Ideally, per-device configurations should only include the keys of actual devices; otherwise, excess keys take up precious configuration space, so they shouldn't be included.

We should have a master configuration containing every key on every released keyboard. Then, Agent's build process should create per-device configurations, deleting keys not present on devices.

This is the current functionality. I think this story can be closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants