Page 1 of 1

gpio_install_isr_service() returns ESP_ERR_NOT_FOUND

Posted: Wed Jan 20, 2021 5:37 am
by edclombardo
Hi,
I have ESP32 with ov2645 and OLED display (No PSRAM). I am using esp-idf v4.1.0. The code compiles successfully but when run on the board I get an error when initializing the ov2645 camera. The error occurs when gpio_install_isr_service(ESP_INTR_FLAG_LEVEL1 | ESP_INTR_FLAG_IRAM) is called. The return value is ESP_ERR_NOT_FOUND. What does this error mean? I looked in the eclipse sdkconfig for anything related to interrupts that may not be enabled with no success. I have spent couple days google searching with no success, so I am trying the forum in hope that someone can shed some light as to how to correct this error.

Thanks,
Ed

Log:
I (5015) camera: Searching for camera address
I (5035) camera: Detected camera at address=0x30
I (5035) camera: Resetting OV2640
I (5165) camera: Camera PID=0x26 VER=0x42 MIDL=0x7f MIDH=0xa2
I (5165) camera: Doing SW reset of sensor
I (6625) camera: camera_probe() PASS
I (6625) camera: Detected OV2640 camera
I (6625) camera: camera_init()
I (6635) camera: Allocating 1 frame buffers (37 KB total)
I (6635) camera: Allocating 37 KB frame buffer in OnBoard RAM
E (6635) camera: gpio_install_isr_service failed (0x105:ESP_ERR_NOT_FOUND)
E (6645) camera: Camera init failed with error 0x105
E (6645) camera: Camera Init Failed

Re: gpio_install_isr_service() returns ESP_ERR_NOT_FOUND

Posted: Wed Jan 20, 2021 7:25 am
by WilliamR
I ran into a similar error when using the latest source files for esp32-camera-master. I was only able to resolve it by downgrading my installation of camera.c, ov2640.c, etc to the historical revision from Aug 29, 2019. https://github.com/espressif/esp32-came ... de1c24bb9a. I simply manually replaced all the source files for camera.c, ov2640.c, sensor.h, CMakeLists.txt, ect (every file in the linked directory) and was able to resolve the issue on my end.

In my installation, the source files were located under /esp-idf/components/esp32-camera-master

The next issue which popped up was that camera_fb_t* esp_camera_fb_get() in camera.c would sometimes fail to return, instead hanging on xSemaphoreTake, which never was fulfilled. To fix this, I simply copy and pasted the updated code for camera_fb_t* esp_camera_fb_get() from the current build (it has a timeout mechanism to escape xSemaphoreTake)

Someone with more background should feel free to correct me or recommend a better solution.

Re: gpio_install_isr_service() returns ESP_ERR_NOT_FOUND

Posted: Sat Jan 23, 2021 8:51 pm
by edclombardo
Thanks William you for responding. I would rather not go backwards, will keep looking deeper into why this error occurred.

Re: gpio_install_isr_service() returns ESP_ERR_NOT_FOUND

Posted: Sun Feb 14, 2021 12:05 pm
by gibzwein
Hi,
have You solved this issue? I have the same.
Regards

Re: gpio_install_isr_service() returns ESP_ERR_NOT_FOUND

Posted: Sat Mar 06, 2021 7:56 pm
by VadimKHL
Hello!
Same problem.

E (1857) camera: gpio_install_isr_service failed (105)
E (1858) camera: Camera init failed with error 0x105

Did you manage to solve it?

Re: gpio_install_isr_service() returns ESP_ERR_NOT_FOUND

Posted: Sun Apr 25, 2021 6:28 am
by kraxor
Hi,

I'm not using the ov2645 camera but came across the same error while implementing a class that uses interrupts. Sharing my experience here because there aren't many great google results out there.

Consider this:

Code: Select all

class MyClass {
  // constructor calls gpio_install_isr_service()
}

MyClass *instance1 = new MyClass(); // will fail with ESP_ERR_NOT_FOUND
MyClass *instance2;

void app_main() {
  instance2 = new MyClass(); // will work
}
In case of instance1 the class is initialized before app_main is called. I'm guessing that the interrupt system is not ready at that point? Anyway, moving the initialization to a later point (e.g. instance2) solved the problem for me.

Hope this helps someone.