An ESP32-based microcontroller with a camera is an amazing platform for video, but not all modules are created equal. We'll go over the pros and cons of some of the popular low-cost camera modules you can use with ESP32-based development boards, as well as what features they support.
The ESP32-based microcontroller is the big brother to the ESP8266-based board, which we've covered extensively on Null Byte. The ESP32 is more powerful, comes with Bluetooth, and has an additional core for processing. That means it's capable of a lot more interesting things that the ESP8266 simply can't do.
The camera modules we're covering today are all super cheap, ranging from about five dollars all the way up to $25. And it might surprise you that the cheapest camera modules may have cooler capabilities such as facial recognition.
We'll break down the most common camera modules you'll find for sale, explain the benefits you get for spending a little bit of extra money, and show you exactly what you can and can't do with each because each one has its own individual connector. Some of them require an additional purchase to program them effectively.
You don't really need anything to follow along, but if you're interested in buying one of these boards, there are links below to point you in the right direction.
The ESP32-CAM is the classic module people think of when they think of an ESP32 camera module. This camera is pretty affordable but does come with a downside: to connect to it, you need to pick up an FTDI programmer. While that's a little annoying, you can see that the cost on Amazon is $12.99 for the whole set, and if you want to go even cheaper, you can find this camera on AliExpress for about five bucks (though, it'll probably take a long time to arrive).
- Buy on Amazon: KeeYees Camera WiFi + Bluetooth Module, 4MB PSRAM, Dual-Core, 32-Bit CPU Development Board with OV2640 2MP Camera Module + FT232RL FTDI USB-to-TTL Serial Converter + 40 pin Jumper Wire
It's also really cool because the board — while it doesn't come with a USB interface, which makes it a little bit more annoying to work with than some of the other boards — has a lot of advanced functionality because of its PSRAM. The PSRAM gives it the ability to buffer and stream video in higher quality, and it lets you try out facial detection and recognition.
This board is a great choice to combine with a low-cost LiPo shield, which gives you the ability to power the entire camera over a battery or through a Micro-USB interface. That's really cool if you want to simply just throw a battery-powered Wi-Fi camera together and have it in a hidden place with no wires. It's simple to set up, supported on Arduino IDE, and very easy to use. (Click here to learn how to set one up and use the video streaming functions.)
- Pros: super cheap, facial recognition, facial detection, high-definition video, good support in Arduino IDE
- Cons: cannot interface with via USB, requires FTDI programmer to program
This ESP32 camera module has a USB Type-C interface, and it's based on a design by M5Stack, a reputable vendor with a lot of exciting and unique designs. This is its lowest-cost model because a lot of people are making it.
You can find this for a really low price of $14.99 on Amazon, though, we've seen it for as low as $12.99. If you look for it on AliExpress, you can find it from $8 to $12, though, shipping will take a lot longer than Amazon.
Despite this board being a little bit more basic, it's still straightforward to set up, and you can add it to your home assistant if you want to go ahead and use this as a quick-to-set-up security camera.
Many things are missing from this board that are available on the flagship model (covered below) or even the ESP32-CAM module. It doesn't have the PSRAM that the ESP32-CAM has, but it's much more convenient to connect this to a USB-C cable and start programming it. However, it isn't capable of running facial recognition, and it isn't capable of actually doing high-resolution video.
So if you need to use the whole resolution that it's capable of, you might be disappointed to learn that there's a bottleneck with the RAM that makes streaming video less impressive than the ESP32-CAM or more expensive model below.
- Pros: easy to interface with, works well with existing Arduino sketches, very cheap
- Cons: no PSRAM, cannot do facial recognition or detection, cannot do high definition video, might need a heat sink since it gets quite hot
The ESP-EYE is the official flagship board of Espressif that's looking to cash in on people who are interested in developing facial recognition or other sorts of neural network-based microcontroller applications. What that means is that this board has a lot of built-in features that the other boards above lack.
It has an easy-to-use Micro-USB interface, so you can plug it in and get started immediately. It has a microphone, which is awesome for recognizing voice commands, and you can even wake up the board and start networking by saying a command to it.
- Buy on Amazon: ESP-Eye Development Camera Board from Espressif Systems
This is a little bit less programmable in Arduino IDE because the vendor really wants you to download and learn its toolkit. So you might be a little bit disappointed to find that ESP-EYE is a lot less hackable than some of our other options. However, it does have better hardware than the other two modules.
If you're looking to get into neural networks or need a lot of beefy processing power, this board might not be as simple to use but has many more features baked in. Plus, it's basically maxed out all the various things you can populate.
The price is higher on Amazon than the modules above, currently going for $19.90, and we've seen it for as much as $37. If you look on AliExpress, it's going for almost $32 right now with slower shipping. Between $20 and $37 is what you can expect to find this module online, in general.
Now, if you want to learn more about the ESP-EYE, you can check out Espressif's website, which goes into all the details about the hardware, what it's capable of, and all the various things you can develop on it. But what's intriguing about it is that it has automated ways of detecting things like faces — maybe even things like license plates if you really wanted to develop unique applications for these sorts of boards. You can also find documentation and example sketches on GitHub.
If you want to check out this more expensive board, it is much more of an investment than the other ESP32 cameras covered above. Still, it also has a lot of potential in terms of vendor support and the ability to start doing things like using neural networks for facial recognition.
- Pros: microphone, neural network support, voice activation, face detection, facial recognition, includes PSRAM for high definition.
- Cons: much more expensive, less support for Arduino, less available documentation online
As you can see, these models all look similar but are all uniquely equipped for a project you might be working on. Make sure to pay attention and get the one with the right connector and the right amount of PSRAM for your project. Because if you're relying on one of these to support facial recognition, and you get a more expensive board with a more accessible connector but no PSRAM, you're not going to be able to get high-definition video, and you won't be able to try out facial recognition.
Want to start making money as a white hat hacker? Jump-start your hacking career with our 2020 Premium Ethical Hacking Certification Training Bundle from the new Null Byte Shop and get over 60 hours of training from cybersecurity professionals.
Other worthwhile deals to check out: