I am attempting to build the circuit as explained in the video "Using the MicroSD card".
In the first part you are supposed to connect a resistor to the VCC pin and one of the pins of a push button to the ground pin on the ESP32 cam board. The pins on the ESP board are very thin and the jumper wires fall off. I am using an adaptor with a micrUSB connection so these are the only pins available.
@meirp Working with the esp32cam board is very difficult unless you either build bill's testing platform or buy an MB board. Buying the MB board converts the ESP32 to a normal board and you connect by USB instead of FTDI. Here is a link to an amazon page for the MB camera and board here but that is in Canada and unavailable, just use it to search for a similar product in your country. Usually esp32-cam-mb will work.
Arduino says and I agree, in general, the const keyword is preferred for defining constants and should be used instead of #define
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon
My experience hours are >75,000 and I stopped counting in 2004.
Major Languages - 360 Macro Assembler, Intel Assembler, PLI/1, Pascal, C plus numerous job control and scripting
@meirp This is the esp32-cam development module you will need to build first if you want easy access to the pins of the esp32-cam
Arduino says and I agree, in general, the const keyword is preferred for defining constants and should be used instead of #define
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon
My experience hours are >75,000 and I stopped counting in 2004.
Major Languages - 360 Macro Assembler, Intel Assembler, PLI/1, Pascal, C plus numerous job control and scripting
@meirp In order to do that first test, just touch he wire to the pin. Once you are satisfied the test worked, you can move to the next step. If you just want to make a security camera or observation camera, why not just use the sample under ESP32 when you select board AI Thinker ESP32-CAM?
Arduino says and I agree, in general, the const keyword is preferred for defining constants and should be used instead of #define
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon
My experience hours are >75,000 and I stopped counting in 2004.
Major Languages - 360 Macro Assembler, Intel Assembler, PLI/1, Pascal, C plus numerous job control and scripting
Hi Ron, I made my own developers module as you can see in the picture and now with the aid of the breadboard I can connect to pins on the ESP 32 cam board.
I want to use the camera as a security camera that will take a picture if someone enters a room. That picture will be written on the MicroSD card which will enable me to see who entered the room. I want to use heat sensitive sensors as Bill showed on the video.
My problem now is the quality of the picture. When I send the picture to the Web server the picture has high quality.
However, when I use the MicroSd card the quality is bad.
Same camera. Do you understand why the images are so different?
@meirp In the 2nd picture the light bulb on the ceiling is controlling the exposure. Try again with your head blocking the light like the first picture.
Arduino says and I agree, in general, the const keyword is preferred for defining constants and should be used instead of #define
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon
My experience hours are >75,000 and I stopped counting in 2004.
Major Languages - 360 Macro Assembler, Intel Assembler, PLI/1, Pascal, C plus numerous job control and scripting
I did what you suggested. I faced the light so that the light was shining on my face. There is an improvement but the picture is still very dark.
When I use the Web server the picture is much, much better. It looks like a normal picture.
I have a notion that difference might be in the fact that te Web server is using the camera in Video streaming while the sketch using the MicroSD card takes still pictures. Possibly the flash is not strong enough to give enough light to the subject.
Ill try finding a sketch that uses he ESP camera in stream video mode.
@meirp First let me say I have been a software developer for about 50 years and a photographer longer. This camera is only 2MP and is about 20 years old.
What do you mean by 'send the picture to the web server'?
Your pictures are all different, until you take identical pictures using whatever you think is different software, any comparison is useless.
Here is a test image, print it out and place it somewhere moderately well lit. Then without changing anything else, take what you call two different pictures one after the other. Now what do you see?
If you are only going to display the pictures on a screen, that is the lowest quality picture display possible. It is only 72DPI, standard prints are 240-300DPI with high quality being double that or more.
Either the lighting changed, or the software changed (that is where the exposure controls are). I will try to get the standard esp32cam sketch working and do a test but I have trouble with wifi here so may not be able to.
Arduino says and I agree, in general, the const keyword is preferred for defining constants and should be used instead of #define
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon
My experience hours are >75,000 and I stopped counting in 2004.
Major Languages - 360 Macro Assembler, Intel Assembler, PLI/1, Pascal, C plus numerous job control and scripting
@zander I did as you suggested. The following picture w taken by using the Web server
this one using the MicroSD card. Do you see the difference?
When using the MicroSD card I even increased the brightness to 2 which is the maximum. Didn't help
@meirp I loaded the sample sketch for the esp32cam module. This is a webserver sketch that takes stills or videos. Using my iPhone6S I took pictures of the same thing the esp32 was seeing, AND of what the Laptop preview shows. The attached pictures that start with 0 are the menu settings the camera was using, those starting with 1 are using the Streaming function, and those starting with 2 are the Still function. Those pictures using the iPhone have iPhone in the file descriptor the video picture with still in the name is a single frame of the video. I strongly suspect that if I didn't label the pictures as video or still you cold not tell other than the ipone picture of the video is a little shaky.
Arduino says and I agree, in general, the const keyword is preferred for defining constants and should be used instead of #define
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon
My experience hours are >75,000 and I stopped counting in 2004.
Major Languages - 360 Macro Assembler, Intel Assembler, PLI/1, Pascal, C plus numerous job control and scripting
@meirp OK, thank you for that. Clearly the microSD sketch has a major difference in the camera settings. Maybe you can use the picture of the settings I just uploaded to see the difference and make changes. I will try to do the same here. I have 3 or 4 different versions of the esp32 camera software and one has the abiity to turn on the LED and control it's output, in other words a flash for stills, an illuminator for videos. I now know how to 'fix' my wifi problems so will load up that sketch and show you the results.
EDIT: The flash results were as expected and not really relevant to the problem.
Settings are different
setting mine Bills
bright 1 0
saturation 0 -2
hmirror 1 0
vflip 1 0
dcw 0 1
I am too confused to understand why you are seeing different. If what you want is a security camera, may I suggest MotionEyeOS. Install it on a RaspberryPi Zero W and likely the new Zero 2 W, and maybe even the PICOW.
Check out the following links
https://randomnerdtutorials.com/install-motioneyeos-on-raspberry-pi-surveillance-camera-system/
https://github.com/motioneye-project/motioneyeos/wiki
Arduino says and I agree, in general, the const keyword is preferred for defining constants and should be used instead of #define
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon
My experience hours are >75,000 and I stopped counting in 2004.
Major Languages - 360 Macro Assembler, Intel Assembler, PLI/1, Pascal, C plus numerous job control and scripting
@zander - First I appreciate your efforts to help me out.
I changed the setting that you defined different than Bill's but nothing really changed. Maybe it has something to do with the MicroSD card because all your experiments were done with your labtop and not with the card. Even in Bill's video his pictures were of rather poor quality.
My last try is to use the illuminator and not the flash. Can I use the sketch that you have to write the video to the MicroSd?
@meirp I can't imagine that the card affects picture quality. Remember it's just a file full of numbers, it's irrelevant where the file is stored.
As I said earlier, get MotionEyeOS on a RapberryPi Zero W or 2W. That does what you want and more like email notifications when a person is detected.
Arduino says and I agree, in general, the const keyword is preferred for defining constants and should be used instead of #define
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon
My experience hours are >75,000 and I stopped counting in 2004.
Major Languages - 360 Macro Assembler, Intel Assembler, PLI/1, Pascal, C plus numerous job control and scripting