Build yourself a wildlife streaming camera that will show up on any cell phone!
- You can add in a wifi router for greater range. But that will be another project and I’ll link to it here when it’s complete.
The range on these cameras to your cell phone for viewing is not great. It’s about 300 feet line of sight. Even with its limited range, the camera has many uses. The reason for short range is usually the cell phone. I’ll add a link here to the next project when it’s done for adding a range booster that will give you over 1km to your cell phone. It’s a booster that you carry with you that talks to the camera.
Please go to Step Six and read that first to make sure this is something you want to try if you’ve never worked with Arduino before.
What you’ll need to know:
Not much about electronics or arduino. We’ll walk you through each of the steps. If you click the links below you’ll see photos of each part you need. You will need to know some basic soldering skills. Here’s my favorite USB soldering Iron for small projects like these.
Features of this Camera:
Use can connect to it with any cell phone and you don’t need to download an app. The camera broadcasts its own WIFI signal. You open your wifi connection, pick the camera (in this case the wifi signal will be called Camera01) and click connect. It will ask you for the password which is 123456789 but you can change it to what ever you want. Once connect you open a browser on your phone, ipad or computer and type in 192.168.4.1 you can also add that to your bookmarks.
This camera does not record video or take photos. It’s an observation camera that gives you a live feed only. There will be more projects here to use this same camera as a regular camera trap that can save photos to the microSD card.
Parts you’ll need:
5v Power Source
– 4.2v 18650 battery and the a single case for mounting them or 5pcs Click Here
– 5v Step Up 3pcs or for 1pc click here
Charge Controller or 3pcs click here
If you want the ESP32 Camera that comes with an FTDI programmer CLICK HERE as it’s cheaper.
Useful Applications For This Project
One of the best uses for this camera is monitoring wildlife. It gives you an upfront view without disturbing your subject. You can also place multiple cameras out there and check different places by simply logging into a different camera.
An example of this is when trapping wildlife for tagging. You can place a camera in each of the traps and check them more often and without disturbing the trap.
If you’re banding birds and using nets, you can setup cameras pointing at the nets and check them every few minutes reducing “in the net” time for the birds.
If you’re filming wildlife having these cameras can really up your game. You’ll know when an animal is approaching giving you more time to get ready.
In the next few months I’ll be building some range extenders for this project as well as solar recharging. You’ll be able to leave these cameras in remote locations, access them to check if anything is in the area and then turn the camera off. You’ll move on to the next location and check that camera. Imagine the time savings of not having to hike up that cliff again and again.
Don’t forget to sign up for our newsletter as we release the long range articles.
An Example ESP32-cam Project
In the photo above (I still need to solder the battery terminal wire as well as the power supply wires from the step up).
Step One Drilling the Holes in the Case
Drill Size 1/4 inch for the antenna
Drill Size 19/64 for the camera lens
The camera lens hole was a little bit big but still worked very well. I didn’t have the next size down to make up the difference. You could try a 9/32.
A mistake that I made in this first tutorial was to put the camera lens hole off to the side thinking I was saving room for electronics. After placing it I realized that now I don’t have access to the micro SD card slot. Thankfully you don’t need one for this project but I recommend having the lens hole more in the center to save room for microSD card if you decide to change your project into the motion camera project that’s coming soon.
You can decide where to place the antenna, I didn’t really have any reason to place it at the top. Some people like to make the hole on the side and the antenna can bend up. This might help with weather proofing but I haven’t had any issue mounting at the top.
The antenna connector has a nut that you undo, place the mount through the hole and then screw down the nut to secure it in place. Never power up your camera without the antenna attached. It might not hurt this unit because it has a built in antenna but its not worth taking the risk.
Take your ESP32-cam and practice placing it where you want it. I recommend up at the top and slide the camera as far to the right as possible taking note of where to drill the hole. In my next build I get exact measurements for where to drill.
Which way is up? You don’t want to install the camera upside down, it’s easier to do than you think and there’s nothing worse than doing your first test run to find out the camera is up side down.
The antenna connector on the camera should be off to the right as in the photo above.
Step Two Mounting the ESP32-Cam
Two sided tape can work for this but I recommend good old hot glue for this. When placing the camera into the case, make sure the lens on the outside looks flat as you press the camera into the case with hot glue. The lens is free floating on the camera and you can end up with the lens looking off to the side which makes placing the camera that much harder.
I like to put just a little hot on two of the corners of the camera first. That way later on when testing it, if it’s not quite right you can easily fix it. Just use enough hot glue to keep it in place until you’re ready to lock it down.
Step Three Mounting the Battery Box
I put a single line of hot glue down the center of each battery box. Make sure the wires are the same color on each end as you don’t want to end up making serial connections or frying something. This battery setup is built in parallel. Total voltage is 4.2 volts at full charge.
You don’t need to use three batteries here like I have. With three batteries you’ll get about 3 days of constant use day and night. Your setup might not need that much if your using the camera for a few hours at a time. In many situations the camera only needs one 18650 battery. But like my favorite TV scientists always say… anything worth doing is worth OVER doing haha.
In my setup, the three red wires are soldered together into one wire lead. The three reds together and the three blacks together.
Step Four Mounting the Power Supply and Charge Controller
A little hot glue goes a long way here.
I put a small line down the back of each module and squish it in there. It’s very important for the blue module (battery charge controller and over discharge cut off) that you mount it with the little connector pointing down just like in the photo above. That way you can recharge the 18650 battery with a micro USB cable.
Step Five Wiring it all Together
Starting at the batteries, take the red positive lead wire from the 18650 batteries and solder it to the blue charge controller module. You should see a B+ at the top of the module that stands for battery positive. Right next to that solder pad is B- which is where you’ll place the black lead. These two solder pads are at the inside of the module. The two solder pads on the outside are where the power leaves the charge controller. It will cut power off if the batteries get too low.
Place a red wire on the blue charge controller module where it says OUT+ like in the photo above. This wire is then connected to the green module where it says IN+. Connect a wire from the blue module where it says OUT- and attach it to the green module where it says IN-. The green module is a voltage step up that will take the lower voltage of the batteries and step it up to 5 volts that the camera needs.
I like to use arduino wires for this next step as they have really great connectors for the camera that will fit inside the case. If you opted for the camera and programmer kit, you’ll get some of these wires included like this one. Or you can order some jumper wires like these as they’re always useful.
The top left pin on the camera in the photo above is the where the red positive connector goes. Make sure to take enough wire to reach your green module’s +5v solder pad. The black wire is connected to the green module’s GND pad and connects to the camera’s bottom right pin.
Here’s a photo of the completed wiring.
Step Six Programming the Camera
It’s time to install arduino IDE if you haven’t already.
You’ll need to download the .zip file listed at the top of this article. Unzip the file where ever you like and double click the file called: CameraWebServer_Access_Point
It should have a blue symbol next to it.
The Arduino IDE software will open automatically with your files showing like this:
Click on Tools, then mouseover Board, then select board manager. A window will come up. In the search bar type in esp32. Install the one by Esspressif Systems.
If you can’t find anything when searching for esp32 go to File, Preferences and look for “additional boards manager urls” then copy and paste this into the line box:
Now go back to the boards manager as stated above and try it again. If you’re still having issues email me email@example.com and I’ll arrange a time to help you with it.
Once the board has been installed you’ll to connect the ESP32-cam to your computer.
You’ll need a USB cable that fits the FTDI and they’re usually the older thicker microusb like this one.
Connect the FTDI to the ESP32-cam making sure the jumper on the FTDI is set to 5v.
Connect GND to GND (black wire)
VCC on FTDI connect to 5v on the ESP32 (red wire)
RX on FTDI connect to UOT on ESP32 (blue wire)
TX on FTDI connect to UOR on ESP32 (green wire)
Put your ESP32-cam into upload mode by placing a jumper from pin IO0 to GND. If you look for the 3.3v pin on the ESP32-cam and count the pins down the side it should be pins 3 and 4.
Plug the FTDI usb cable into your computer. But before you do! Go to tools, ports and look at what ports are available before you plug it in. Now plug your USB cable in and see what NEW port is now available. Mine is usually on Com3 but it might be different for yours.
Now click tools, then mouse over board:, then mouse over ESP32 ARDUINO> and look for AI thinker ESP32-CAM. It’s way down the list.
Next, we get the code ready to upload.
A few lines down in the code you’ll find:
const char* ssid = “Camera01”;
const char* password = “123456789”;
You can change the name of the wifi which is currently set to Camera01 to anything you want. You can also change the password.
Above that section of code is the “select camera model”
One of the lines should be missing the // at the beginning and it should look like this:
// Select camera model
This means that the AI thinker model is selected and not one of the other ones which is what you want.
It’s time to upload!
Under the edit button you’ll see an arrow button that’s pointing to the right. Click that and the code will upload.
When you see the orange text at the bottom saying “hard reseting via RTS pin” it’s complete.
If you see ……._______…….._______……. then press the reset button on the ESP32-CAM it’s right next to the 5v pin.
Take the jumper off from the ESP32-cam from the IO0 and GND pin. In the photos above its the brown jumper wire.
Take the 5v wire and put it back again.
Now we go to our cell phone or PC and look for “Camera01” or what ever you changed it to in your list of available WIFI networks. Click it and enter the password you used.
Once you’re connected to it open a browser and type in 192.168.4.1
If everything is working you’ll see a black screen with red options. The first option is the resolution. On cell phones I find that 320×240 is just fine. But play with it and see which ones work best for you. What’s that selected go all the way to the bottom of the list and press start streaming. You should see the camera’s screen show up.
Congrats you’ve got it working!
Please feel free to post questions below and I’ll help you with it. You can also email me at firstname.lastname@example.org