You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Any work in this area needs to be discussed with QMK Collaborators first, and in this case primarily with @tzarc due to their prior work in this area.
The info.json needs to be "massaged" to only require relevant information for XAP. This includes enabled subsystems such as rgb_matrix and dynamic_keymap, as well as information like layout options.
Currently the xap branch of qmk_firmware compresses the entire output of qmk info -f json for a keyboard as a proof-of-concept; this is not sufficient as it currently does not include keymap-level selections (e.g. disabling rgb at the keymap is not reflected in the output), and the generated output also includes a lot of irrelevant information in the output that has no bearing on XAP's functionality.
For this issue, a transformation needs to be applied such that it filters for a set of known-used items from info.json into an appropriate equivalent to be embedded into the firmware.
A corresponding *.jsonschema file should also be provided so host applications can determine what information is to be available.
This blob of data should be compressed -- an appropriate algorithm should be chosen as part of this work.
NOTE: for simplified porting from Chinese vendors who don't bother upstreaming to QMK, relevant information such as pin definitions should be included in this output. This is intended as a future work item; the idea is to be able to connect to a XAP-enabled firmware with the XAP client and export as much of a keyboard's info.json as possible.
The text was updated successfully, but these errors were encountered:
This item also needs to add to the QMK subsystem in the XAP protocol, exposing a handler that allows retrieval of the info.json-like blob from the firmware.
This will need multiple XAP requests, and will likely need to be implemented by supplying a "read offset" as an argument to the handler; the host app requesting the information can then concatenate, decompress, and parse the final output.
This issue has been automatically marked as stale because it has not had activity in the last 90 days. It will be closed in the next 30 days unless it is tagged properly or other activity occurs.
For maintainers: Please label with bug, in progress, on hold, discussion or to do to prevent the issue from being re-flagged.
stalebot
added
the
stale
Issues or pull requests that have become inactive without resolution.
label
Apr 16, 2022
XAP Task Info
Original Issue
Original spec document
Current XAP Definitions
Current XAP Generated Docs
Placeholder PR
Description
Any work in this area needs to be discussed with QMK Collaborators first, and in this case primarily with @tzarc due to their prior work in this area.
The
info.json
needs to be "massaged" to only require relevant information for XAP. This includes enabled subsystems such as rgb_matrix and dynamic_keymap, as well as information like layout options.Currently the
xap
branch ofqmk_firmware
compresses the entire output ofqmk info -f json
for a keyboard as a proof-of-concept; this is not sufficient as it currently does not include keymap-level selections (e.g. disabling rgb at the keymap is not reflected in the output), and the generated output also includes a lot of irrelevant information in the output that has no bearing on XAP's functionality.For this issue, a transformation needs to be applied such that it filters for a set of known-used items from
info.json
into an appropriate equivalent to be embedded into the firmware.A corresponding
*.jsonschema
file should also be provided so host applications can determine what information is to be available.This blob of data should be compressed -- an appropriate algorithm should be chosen as part of this work.
NOTE: for simplified porting from Chinese vendors who don't bother upstreaming to QMK, relevant information such as pin definitions should be included in this output. This is intended as a future work item; the idea is to be able to connect to a XAP-enabled firmware with the XAP client and export as much of a keyboard's
info.json
as possible.The text was updated successfully, but these errors were encountered: