You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This project aims to support various cameras on different MicroPython ports, starting with the ESP32 port and Omnivision (OV2640 & OV5640) cameras. The project implements a general API for cameras in micropython (such as circuitpython have done).
5
+
This project aims to support various cameras (e.g. OV2640, OV5640) on different MicroPython ports, starting with the ESP32 port. The project implements a general API, has precompiled FW images and supports a lot of cameras out of the box.
6
6
At the moment, this is a micropython user module, but it might get in the micropython repo in the future.
7
7
The API is stable, but it might change without previous announce.
8
8
@@ -141,6 +141,10 @@ import camera
141
141
vers = camera.Version()
142
142
```
143
143
144
+
### Additional information
145
+
146
+
The FW images support the following cameras out of the box, but is therefore big: OV7670, OV7725, OV2640, OV3660, OV5640, NT99141, GC2145, GC032A, GC0308, BF3005, BF20A6, SC030IOT
147
+
144
148
## Build your custom FW
145
149
146
150
### Setting up the build environment (DIY method)
@@ -149,11 +153,11 @@ To build the project, follow these instructions:
149
153
150
154
-[ESP-IDF](https://docs.espressif.com/projects/esp-idf/en/v5.2.3/esp32/get-started/index.html): I used version 5.2.3, but it might work with other versions (see notes).
151
155
- Clone the micropython repo and this repo in a folder, e.g. "MyESPCam". MicroPython version 1.24 or higher is required (at least commit 92484d8).
152
-
- You will have to add the ESP32-Camera driver (I used v2.0.13). To do this, add the following to the respective idf_component.yml file (e.g. in micropython/ports/esp32/main_esp32s3/idf_component.yml):
156
+
- You will have to add the ESP32-Camera driver (I used v2.0.15). To do this, add the following to the respective idf_component.yml file (e.g. in micropython/ports/esp32/main_esp32s3/idf_component.yml):
153
157
154
158
```yml
155
159
espressif/esp32-camera:
156
-
git: https://github.com/cnadler86/esp32-camera#At the moment I maintain a fork because of some unsolved bugs and conveniance.
Alternatively, you can clone the <https://github.com/cnadler86/esp32-camera> repository inside the esp-idf/components folder instead of altering the idf_component.yml file.
@@ -221,6 +225,9 @@ Example for Xiao sense:
221
225
#define MICROPY_CAMERA_GRAB_MODE (1) // 0=WHEN_EMPTY (might have old data, but less resources), 1=LATEST (best, but more resources)
222
226
223
227
```
228
+
#### Customize additional camera settings
229
+
230
+
If you want to customize additional camera setting or reduce the FW size by removing support for unused camera sensors, then take a look at the kconfig file of the esp32-camera driver and specify these on the sdkconfig file of your board.
224
231
225
232
### Build the API
226
233
@@ -268,6 +275,14 @@ Using fb_count=2 theoretically can double the FPS (see JPEG with fb_count=2). Th
268
275
269
276
270
277
Looking at the results: image conversion make only sense for frame sized below QVGA or if capturing the image in the intended pixelformat and frame size combination fails.
0 commit comments