Skip to content

Autogenerate board support #11

Open
@beriberikix

Description

@beriberikix

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.

Activity

DhruvaG2000

DhruvaG2000 commented on Oct 22, 2023

@DhruvaG2000
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

beriberikix commented on Oct 22, 2023

@beriberikix
CollaboratorAuthor

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Autogenerate board support · Issue #11 · zephyrproject-rtos/gsoc-2022-arduino-core