InfiniTimeOrg / InfiniTimeOrg/InfiniTime
Hardware initialization, abstraction and controllers.
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 3.4k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
Verification
- I searched for similar issues and found none was relevant.
Introduce the issue
The hardware is initialized in many places, controller classes, drivers, systemtask, displayapp. Keeping track of the hardware state can be difficult. What has been initialized and when. We need to define how and where the hardware should be initialized, and how info about the hardware, such as pins, is passed to the controller classes.
Relates to #1387 #1050 #1468
Preferred solution
For example, we could have a port init function, that initializes all hardware. The already configured pins could be passed to the controller classes. We could apply a discipline to only include hardware specific files in certain places.
Version
No response
Contributor guide
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
Start by mapping hardware initialization across the controller classes, drivers, systemtask, and displayapp, then review related issues #1387, #1050, and #1468. Define where initialization belongs and how configured hardware information reaches controllers; done means the project has a consistent, documented approach implemented across the affected areas.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, cpp
- Domain
- embedded-iot
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100