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

Autogenerate board support #11

Open
beriberikix opened this issue Jul 4, 2022 · 2 comments
Open

Autogenerate board support #11

beriberikix opened this issue Jul 4, 2022 · 2 comments
Labels
enhancement New feature or request

Comments

@beriberikix
Copy link
Collaborator

Note: this is currently out of scope for the GSoC season due to the time required to implement but I'm leaving this here for future contributions.

Arduino cores call each board a "variant" and place board-specific files in the variants folder. These files, plus specifying them in the boards.txt (see #10,) is what let's the Arduino tools know how to build, flash and generally interact with a board.

In the Zephyr world, a lot of that information is encapsulated in files like a board's device tree. It is theoretically possible to use this information to partially (or fully?) autogenerate Arduino variants and boards.txt. There are many libraries out there, but for example lopper is a common Python library to manipulate DTS files.

@DhruvaG2000 DhruvaG2000 added the enhancement New feature or request label Oct 22, 2023
@DhruvaG2000
Copy link
Collaborator

This is a good idea @beriberikix , and since it involves devicetree I think a potential topic to bring up in coming Linux Plumbers Conf 2023. Do update if you have had any more insights on this topic from since when you've raised this issue.

@beriberikix
Copy link
Collaborator Author

beriberikix commented Oct 22, 2023

Okay! I still think creating a custom output for lopper might be the most straightforward. I know the MicroPython folks are asking a similar question.

The idea was inspired by this talk: https://youtu.be/m8wh0pT_P-c?si=KPeCzlqY5_yIaPZ8

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

No branches or pull requests

2 participants