AdaCore / AdaCore/Ada_Drivers_Library
Microbit.Time resets the board
Nobody has claimed this yet.
- Dominant language
- Ada
- Stars
- 286
- Forks
- 165
- PR merge metrics
- No merged PRs in 30d
Description
Hey there!
I'm trying to use ADL on a Micro:Bit v1 board, with no luck so far.
My issue is: If I flash anything that includes Microbit.Time, the board will get stuck in a reset loop.
I managed to narrow down the issue to 1kHz timer in the Init function.
Whenever the timer reaches the Compare value, and the interrupt happens, the board resets itself.
If I increase the Compare time, the board will reset later.
(additional info: I can flash and run the example code in GNAT studio, but if I include Microbit.Time, the same reset happens)
Any ideas what the core issue might be, and how I could solve it?
Thanks in advance!
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 with Microbit.Time and its Init function, then reproduce the reset using a Micro:Bit v1 board and the GNAT Studio example. Inspect the 1kHz timer, its Compare value, and the interrupt point described in the report. Done means code including Microbit.Time runs without the board entering a reset loop.
Written by the indexing model from the issue text.
Assessment
- Domain
- embedded-iot
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100