-
-
Notifications
You must be signed in to change notification settings - Fork 643
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
Apps: Geiger Counter: Fix furi_hal_gpio crash #549
Comments
Can you try on latest development build? I have a feeling that the expansion related changes fixed this, as I cannot reproduce it |
I tried building Dev and installing. Both the Geiger Counter app and the Geiger Dice Roll still crash and reboot the Flipper. No issues when rolling back to XFW-0052_09122023. I tried formatting the SD and installing, rolling back to stock OS then to Dev XFW and it still crashes for me. |
I also tried the build here, and get the same results. It crashes if I have the FlippenHeimer board plugged in or not. |
managed to reproduce it, will have a fix soon. its related to the expansion stuff as i thought, but its just that its not been adapted to support them existing |
for now can just set Settings > Expansion Modules > Listen UART = None |
this is quite confusing... it crashes at furi_hal_gpio_add_int_callback(&gpio_ext_pa7, gpiocallback, event_queue); which looks fine as code... the reason it crashes i see in debugger is that |
I appreciate you looking into it. Just wanted to report it. |
this seems to be a problem with gpio pins callback from ofw. it stores interrupt callbacks based on pin index but not port. so pin 7 of right half of gpio had a callback, and setting a callback for pin 7 of left half conflicted, even though it should not have. for now, i can simply disable expansion modules in this app, but i mentioned this to ofw, hope it will get a proper fix |
temporarily fixed via b9594f9, lets hope we get a proper fix from upstream |
drzlo and skotopes explained the issue, seems like it cannot be fixed properly. gpio pin interrupts are done via exti lines, which are shared between gpio ports, so pin 7 of port a will share the interrupt with pin 7 of port b and all other ports... so yeah disabling expansion module is the only option, this is a hardware limitation of the cpu of flipper. |
Describe the bug.
Geiger Counter app crashes Flipper. Using FlippenHeimer board. Worked in XFW-0052_09122023, but appears broken in XFW-0053_02022024. Rolled back to XFW-0052_09122023 and have no issues.
Screen shows this after reboot:
Reproduction
Target
targets/f7/furi_hal/furi_hal_gpio.c
Logs
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered: