In SDK8.1 and SDK9.0 we have new driver nrf_drv_gpiote which has GPIOTE interrfupt handler in conflict with app_gpiote library. How to fix this
In SDK8.1 and SDK9.0 we have new driver nrf_drv_gpiote which has GPIOTE interrfupt handler in conflict with app_gpiote library. How to fix this
I have tried to merge the conflicted GPIOTE_IRQHandler and tested few use cases, they seems to work. Make sure that you do not use same pin in both app_gpiote library and nrf_drv_gpiote driver.
sdk_9.0.merge_gpiote_handler.c
Diff for fix in SDK 9.0 from @pkarc: www.diffchecker.com/nub7badx
Once again, make sure that there are no pin conflicts between library and driver and this should work just fine.
NOTE: Tested only on Keil
use this as a last resort solution, did not test this enough.
How about this solution ict_gpiote.c This is an extra layer for the different events triggering the same interrupt. SDK drivers just need implement the WEAK defined the methods. Of course more management code needs to be added. But I think Nordic should take this approach ...
I should have made a correct title. My main goal here was to fix the conflict in SDK 8.1 where many are struggling to fix this conflict. I tried to quick fix just the problem in SDK 8.1 gpiote driver and library conflict. The suggestion you made about the solution is nice. I have pointed the driver team about this and hopefully they have some feedback.
Any news on when the Nordic team will have this fix?