Create Server with GSM-Module to get pictures taken by cam

i would like to realize a project to take pictures every hour or so with a cam from a ESP32-Cam-Module. The pictures should be stored on a SD-Card, which is connected at a Mega 2560. Now I would like to access the pictures from anywhere in the world. For that I need to make the Arduino a server with a GSM-module.

The questions that i struggle me most right now are those:

  • is it possible to get access on the Arduino via IP-Address, when it is connected with the GSM-Module? Sometimes i read, that you cannot enter those IPs from outise (blocked by the provider of the SIM-card)

  • do you know any tutorials, how this would work. I can only find some, where small text messages are sent to control smart home etc.

  • is it possible to send data from the ESP32-CAM- module directly to the Mega2560, where I would like to store the picture-data on an SD-card?

It would be great if anyone could share some experience or links to good tutorials with me.


The ESP32-cam has an SD Card slot and it has WiFi. Why would you need a Mega or a GSM module?


the cam shall be positioned under water. So there is no wifi network nearby and i need to send the data to the surface first and then use the gsm module with a data plan Sim card to send the data to a server. Also I want to use several cams later. So I thought about triggering the shots from a central mega, which has a SD module to save all pictures as a backup and a connection to the gsm module. Normally the pictures should be sent to a server, so that you can see the pictures taken with the cam.

What sort of wired connection are you planning to have between the ESP32 and the Mega? I suspect sending images will be very slow. Also the Mega does not have the memory or the performance for that sort of project. Consider using a Raspberry PI.

I wonder if the ESP32-cam can do wired ethernet?


I wonder if the ESP32-cam can do wired ethernet?

Possibly, but it can be a struggle.

Whilst the ESP32CAM appears to have spare pins, these spare pins are actually shared with the SD card, normally used as MMC.

I have mananged to get an SPI based LoRa device running on the ESP32CAM but you have to use the devices; camera, SD, LoRa in a specific order and restart (put into deep sleep) the ESP32 between uses.