zephyrproject-rtos / zephyrproject-rtos/ArduinoCore-zephyr
Autogenerate board support
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 65
- Forks
- 93
- PR merge metrics
- No merged PRs in 30d
Description
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.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the referenced variants folder and boards.txt relationship, then inspect the example arduino_nano_33_iot.dts and the lopper library mentioned in the issue. Establish whether device-tree data can define the required Arduino files and board entries, and verify the generated output with the Arduino tools for a representative board.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- arduino, python
- Domain
- build-system, embedded-iot, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100