Electronic – How to design a module that send photos from microcontroller to web server via wifi

esp8266microcontrollerwifi

I'm not good at electronics and I develop software mostly. But now I'm working on a project that I need to learn about IoT.

I want to have the microcontroller take photos and send it to a web server via WiFi. Also, it receive command from the server.

I've looking for some tutorials but haven't get anything useful.

I wonder how do I choose the microcontroller? I only have experience with stc 51 and stm32 and I've heard about Arduino and Rasperry Pi.

I'm thinking about using ESP8266 but is it able to implement what I want?

Best Answer

Implementing this type of project starting from the microcontroller up will be drastically more difficult than using SOC (system on a chip) like the Raspberry Pi or Intel Galileo etc. I've done this using the Raspberry Pi and python.

Here is a rough overview on the steps necessary to implement this on the Raspberry Pi:

-first start the Pi server using Apache to generate your personal server. A domain name is not required, but might be useful. Here is a guide on that.

-Connect a USB camera and gain familiarity. Here is guide on that.

-Within Linux, You can schedule photos using CRONTAB to store them in a particular folder.

Once you get the basics down, you can start using the GPIO headers to add sensors (to detect motion, heat, etc) and send email or text alerts. This can be accomplished in Python. Live streaming feed is also possible using OpenCV and Flask servers.