M5Cam X M5Stack

Introduction: M5Cam X M5Stack

About: Make it yourself if you cannot buy one!

This instructables show how to use M5Cam and M5Stack to make a wireless camera and monitor.

Step 1: Preparation

M5Cam & M5Stack

You can buy it at M5Stack Official store:


Lipo Battery

Lipo battery is optional if you just want power with USB cable.

M5Stack bundle with a small Lipo battery, you may buy a larger one at the store.

M5Cam not bundle with battery, I have a 802025 Lipo in hand so I use it. The 3D printed case should able to fit a 902030 Lipo.

Step 2: Optional: Soldering Lipo Battery

Soldering Lipo to the pins beside Grove socket, 2 pins is very close, beware don't short 2 pins together.

Step 3: Optional: 3D Print M5Cam Case


Step 4: Programming

Source code for M5Cam:


This is a esp-idf project, you require esp-idf to build it.

After you familiar esp-idf, simply 2 steps to program M5Cam:

  1. make menuconfig
  2. make flash

Source code for M5Stack viewer:


This is a M5Stack Arduino project, simply upload it with Arduino.

Step 5: Happy Monitoring!

Its time to show off what you have done with your friends!



    • Tiny Home Contest

      Tiny Home Contest
    • Creative Misuse Contest

      Creative Misuse Contest
    • Water Contest

      Water Contest

    4 Discussions

    Vivian-ng: Can you post your updated code? I was hoping there was an Arduino .INO file for the M5Cam also. Thanks, Paul Fromen / Merritt Island, Florida

    Is there any Arduino IDE code that can be used to control the M5Cam? The demo code from M5Stack is for ESP-IDF only, while searching for "ESP32 camera" gave me code for ESP32 with OV7670 but not OV2640 which the M5Cam uses. It would make using the M5Cam a lot easier if it can be programmed using Arduino IDE, as I am having difficulties getting mDNS to work.

    2 replies

    Hi vivian-ng, I think it is a long way to go. Since Arduino library still not included all required library. On the other side, what you want to control? This sample no need to use mDNS at all.

    I guess it is still difficult to control the M5Cam using Arduino. I managed to edit the C code with parts from ESP-IDF example on mDNS to add mDNS to the M5Cam. This makes it easier to connect to the camera without having to make it an access point.