Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision |
esp32-cam [2018/12/20 00:04] – [ESP32-CAM] yair | esp32-cam [2020/01/04 18:48] – [ESP32 stream camera modules] yair |
---|
| |
at their core this modules uses external RAM ([[#psram]] to buffer an ov2640 camera module that does jpeg at 10fps on-board. the external ram is not strictly necessary, but going fwd its the right way to go, beware of [[#M5Stack|modules]] without one | at their core this modules uses external RAM ([[#psram]] to buffer an ov2640 camera module that does jpeg at 10fps on-board. the external ram is not strictly necessary, but going fwd its the right way to go, beware of [[#M5Stack|modules]] without one |
| |
| Note2: new modules in market are updated, make sure they carry [[#PSRAM]] chip |
| |
note: **current [[#M5Stack]] modules DO NOT come with the [[#PSRAM]] chip** and are limited in performance and by heat issues.\\ | note: **current [[#M5Stack]] modules DO NOT come with the [[#PSRAM]] chip** and are limited in performance and by heat issues.\\ |
while the [[#M5Stack]] doesnt have the #PSRAM, out of the box it outputs a working image stream. unlike the [[#ESP32-CAM]] | |
| |
modules tested\\ | **modules tested**\\ |
[[#ESP32-CAM]] - <del>glitching ATM</del> the best ever!\\ | [[#ESP32-CAM]] - <del>glitching ATM</del> works, but lacks heatsink\\ |
[[#TTGO T-Journal]] - comes with arduino support, works out of the box\\ | [[#TTGO T-Journal]] - comes with arduino support, works out of the box, has a heatsink on the esp32.\\ |
[[#M5Stack]] - works out of box, lacks PSRAM\\ | [[#M5Stack]] - works out of box, lacks PSRAM, lacks heatsink\\ |
| |
untested\\ | **yet untested**\\ |
[[#ESP32-wrover-kit]]\\ | [[#ESP32-wrover-kit]]\\ |
[[#ESP32-WROVER-B]]\\ | [[#ESP32-WROVER-B]]\\ |
[[#TTGO T8]] | [[#TTGO T8]] |
| [[#esp-eye]] - [[https://www.espressif.com/en/products/hardware/esp-eye/overview|link]] |
| ==== ESP32-CAM ==== |
| {{ :pasted:20181128-003945.png?direct&400}} |
| [[https://shop72165205.world.taobao.com|AI-thinker]] has |
| [[https://github.com/donny681/ESP32_CAMERA_QR|released]] a QR-code reading example. |
| |
| |
| <html> |
| <ul><li>Wireless Module- ESP32-S WiFi 802.11 b/g/n + Bluetooth 4.2 LE module with PCB antenna, u.FL connector, 32Mbit SPI flash, 4MBit PSRAM</li> |
| <li>External Storage – micro SD card slot <strong>up to 4GB</strong></li> |
| <li>Camera |
| <ul><li>FPC connector</li> |
| <li>Support for OV2640 (sold with board) or OV7670 cameras</li> |
| <li>Image Format – JPEG( OV2640 support only ), BMP, grayscale</li> |
| <li>LED flash light</li> |
| </ul></li> |
| <li>Expansion – 16x through-holes with UART, SPI, I2C, PWM</li> |
| <li>Misc – Reset button</li> |
| <li>Power Supply – 5V via pin header</li> |
| <li>Power Consumption |
| <ul><li>Flash LED off – 180mA @ 5V</li> |
| <li>Flash LED on to maximum brightness- 310mA @ 5V</li> |
| <li>Deep-sleep – 6mA @ 5V min.</li> |
| <li>Modem-sleep – 20mA @ 5V min.</li> |
| <li>Light-sleep – 6.7mA @ 5V min.</li> |
| </ul></li> |
| <li>Dimensions – 40.5 x 27 x 4.5 mm</li> |
| <li>Weight- 10 grams</li> |
| <li>Temperature Range – Operating: -20 ℃ ~ 85 ℃; storage: -40 ℃ ~ 90 ℃ @ < 90%RH</li> |
| </ul> |
| </html> |
| |
| spec gathered and formatted by [[https://www.cnx-software.com/2018/09/30/esp32-cam-esp32-camera-board/|cnx-software]], check his [[https://www.facebook.com/cnxsoft|feed]] for the latest in embedded open designs |
| interesting, might be a seeedstudio design, but [[https://www.seeedstudio.com/ESP32-CAM-Development-Board(with-camera)-p-3153.html|abandoned]] [[https://i.imgur.com/yh3N2eL.png|(cache)]]. |
| |
| *[[https://item.taobao.com/item.htm?id=573698917181|AI-thinker]] offical store on taobao |
| *[[https://www.aliexpress.com/wholesale?SearchText=ESP32-CAM|ALIexpress sellers]] |
| *[[https://coolcomponents.co.uk/collections/cameras/products/esp32-cam-development-boardwith-camera|UK seller]] |
| |
| *{{:pasted:20181219-222557.png?linkonly|pinout}} |
| *{{ :ESP32_CAM_V1.6.pdf|schematics}} |
| *{{ :esp32-cam.pdf |datasheet (chinese)}} - from wiki |
| *[[http://wiki.ai-thinker.com/esp32-cam|wiki-page]] - lots of time offline |
| |
| === gettting it going === |
| #install esp-idf on system |
| https://docs.espressif.com/projects/esp-idf/en/latest/get-started/#get-esp-idf |
| |
| #get esp-who repo, it will also pull submodule esp32-camera component |
| git clone --recursive https://github.com/espressif/esp-who.git |
| #if you didnt pull the submodules run $ git submodule update --init |
| cd esp/esp-who/examples/single_chip/camera_web_server/ |
| |
| |
| # change camera module to ai-thinker in sdkconfig |
| # also change port to /dev/ttyUSB0 or whatever is yours. |
| # |
| # Camera Pins |
| # |
| CONFIG_CAMERA_MODEL_WROVER_KIT= |
| CONFIG_CAMERA_MODEL_M5STACK_PSRAM= |
| CONFIG_CAMERA_MODEL_AI_THINKER=y |
| CONFIG_CAMERA_MODEL_CUSTOM= |
| CONFIG_ESP_FACE_DETECT_ENABLED=y |
| CONFIG_ESP_FACE_RECOGNITION_ENABLED=y |
| #now compile and flash |
| make menuconfig |
| make flash |
| |
| {{:pasted:20181219-220415.png}} |
| |
| |
==== M5Stack ==== | ==== M5Stack ==== |
M5Stack host it's [[https://m5stack.github.io/m5-docs/#/en/product_documents/units/unit_m5camera|product page]] on github and on [[http://m5stack.com/|their]] site. | [[http://m5stack.com/|M5Stack]] host it's [[https://m5stack.github.io/m5-docs/#/en/product_documents/units/unit_m5camera|product page]] on github . |
| |
M5Stack warn not to use the cam module for extended time as "{{m5camera_02.jpg?linkonly|it might over heat"}}!\\ | M5Stack warn not to use the cam module for extended time as "{{m5camera_02.jpg?linkonly|it might over heat"}}!\\ |
*[[https://www.amazon.es/gp/product/B07F2DNX6M/r| ES seller AMZ]] -19eu | *[[https://www.amazon.es/gp/product/B07F2DNX6M/r| ES seller AMZ]] -19eu |
| |
| ===getting image=== |
| comes with working demo code: [[https://github.com/m5stack/esp32-cam-demo|github]] |
| |
==== ESP32-CAM ==== | watch their github [[https://github.com/m5stack/m5stack-cam-psram|m5stack-cam-psram]] |
{{ :pasted:20181128-003945.png?direct&400}} | |
[[https://shop72165205.world.taobao.com|AI-thinker]] has | |
[[https://github.com/donny681/ESP32_CAMERA_QR|released]] a QR-code reading example. | |
| |
| |
<html> | |
<ul><li>Wireless Module- ESP32-S WiFi 802.11 b/g/n + Bluetooth 4.2 LE module with PCB antenna, u.FL connector, 32Mbit SPI flash, 4MBit PSRAM</li> | |
<li>External Storage – micro SD card slot <strong>up to 4GB</strong></li> | |
<li>Camera | |
<ul><li>FPC connector</li> | |
<li>Support for OV2640 (sold with board) or OV7670 cameras</li> | |
<li>Image Format – JPEG( OV2640 support only ), BMP, grayscale</li> | |
<li>LED flash light</li> | |
</ul></li> | |
<li>Expansion – 16x through-holes with UART, SPI, I2C, PWM</li> | |
<li>Misc – Reset button</li> | |
<li>Power Supply – 5V via pin header</li> | |
<li>Power Consumption | |
<ul><li>Flash LED off – 180mA @ 5V</li> | |
<li>Flash LED on to maximum brightness- 310mA @ 5V</li> | |
<li>Deep-sleep – 6mA @ 5V min.</li> | |
<li>Modem-sleep – 20mA @ 5V min.</li> | |
<li>Light-sleep – 6.7mA @ 5V min.</li> | |
</ul></li> | |
<li>Dimensions – 40.5 x 27 x 4.5 mm</li> | |
<li>Weight- 10 grams</li> | |
<li>Temperature Range – Operating: -20 ℃ ~ 85 ℃; storage: -40 ℃ ~ 90 ℃ @ < 90%RH</li> | |
</ul> | |
</html> | |
| |
spec gathered and formatted by [[https://www.cnx-software.com/2018/09/30/esp32-cam-esp32-camera-board/|cnx-software]], check his [[https://www.facebook.com/cnxsoft|feed]] for the latest in embedded open designs | |
interesting, might be a seeedstudio design, but [[https://www.seeedstudio.com/ESP32-CAM-Development-Board(with-camera)-p-3153.html|abandoned]] [[https://i.imgur.com/yh3N2eL.png|(cache)]]. | |
| |
*[[https://item.taobao.com/item.htm?id=573698917181|AI-thinker]] offical store on taobao | |
*[[https://www.aliexpress.com/wholesale?SearchText=ESP32-CAM|ALIexpress sellers]] | |
*[[https://coolcomponents.co.uk/collections/cameras/products/esp32-cam-development-boardwith-camera|UK seller]] | |
*{{:pasted:20181209-223036.png?linkonly|pinout}} | |
*{{ :esp32-cam.pdf |datasheet (chinese)}} - from wiki | |
*[[http://wiki.ai-thinker.com/esp32-cam|wiki-page]] | |
| |
=== gettting it going === | |
| |
git clone git clone --recursive https://github.com/espressif/esp-who.git | |
cd esp/esp-who/examples/single_chip/camera_web_server/ | |
| |
| |
# change camera module to ai-thinker in sdkconfig | |
# Camera Pins | |
# | |
CONFIG_CAMERA_MODEL_WROVER_KIT= | |
CONFIG_CAMERA_MODEL_M5STACK_PSRAM= | |
CONFIG_CAMERA_MODEL_AI_THINKER=y | |
CONFIG_CAMERA_MODEL_CUSTOM= | |
CONFIG_ESP_FACE_DETECT_ENABLED=y | |
CONFIG_ESP_FACE_RECOGNITION_ENABLED=y | |
| |
make menuconfig | |
make flash | |
| |
{{:pasted:20181219-220415.png}} | |
| |
====esp-who==== | ====esp-who==== |
git clone https://github.com/LilyGO/ESP32-Camera | git clone https://github.com/LilyGO/ESP32-Camera |
#(re)open arduino | #(re)open arduino |
File>Examples>Examples from customs libraries>ESP32 camear>ESP32_Station_Cam.ino | File>Examples>Examples from customs libraries>ESP32 camera>ESP32_Station_Cam.ino |
| |
the TTGO is the best one. \\ | the TTGO is the best one. \\ |
click image for the mjpeg_stream output \\ | click image for the mjpeg_stream output \\ |
{{:pasted:smartselect_20181218-125103_chrome.gif?direct&300|}} | {{:pasted:smartselect_20181218-125103_chrome.gif?direct&300|}} |
| |
| ===getting image -arduino=== |
| git clone https://github.com/espressif/arduino-esp32.git ~/Documantes/Arduino/hardware/espressif/esp32 |
| git submodule update --init --recursive |
| #Open [ARDUINO_SKETCHBOOK_DIR]/hardware/espressif/esp32/tools and double-click get.exe |
| #going for File>Examples>esp32>camera |
| i added the pinout for the T-journal |
| |
| <code>//https://github.com/espressif/esp-who/issues/2#issuecomment-435813085 |
| // Select camera model |
| #define CAMERA_MODEL_TTGO_Tjournal |
| |
| #elif defined(CAMERA_MODEL_TTGO_Tjournal) |
| #define PWDN_GPIO_NUM 0 |
| #define RESET_GPIO_NUM 15 |
| #define Y2_GPIO_NUM 17 |
| #define Y3_GPIO_NUM 35 |
| #define Y4_GPIO_NUM 34 |
| #define Y5_GPIO_NUM 5 |
| #define Y6_GPIO_NUM 39 |
| #define Y7_GPIO_NUM 18 |
| #define Y8_GPIO_NUM 36 |
| #define Y9_GPIO_NUM 19 |
| #define XCLK_GPIO_NUM 27 |
| #define PCLK_GPIO_NUM 21 |
| #define HREF_GPIO_NUM 26 |
| #define VSYNC_GPIO_NUM 22 |
| #define SIOD_GPIO_NUM 25 |
| #define SIOC_GPIO_NUM 23 |
| </code> |
| #push G32 on upload start |
| |
| |
| |
| {{:pasted:20181224-142203.png?400}} |
| |
==== ESP32-wrover-kit ==== | ==== ESP32-wrover-kit ==== |