Ttgo t camera

Ttgo t camera DEFAULT

This is a getting started guide for the TTGO T-Journal ESP32 Camera Development Board. The TTGO T-Journal features an OV2640 camera, an OLED display, several GPIOs to connect peripherals and a built-in programmer, which makes it easy to upload code. We’ll take a quick look at the camera dev board and learn how to program it using Arduino IDE.

TTGO T-Journal ESP32 Camera: Built-in Programmer, OLED, Antenna and Project Examples

Where to Buy?

You can go to the TTGO T-Journal page on Maker Advisor to compare the board on different stores.

TTGO T-Journal ESP32 Camera + OLED +Antenna + Built-in Programmer

Introducing the TTGO T-Journal ESP32 Camera

The TTGO T-Journal is a $12-$15 ESP32 Camera Development Board with an OV2640 camera, an antenna, an I2C SSD1306 0.91 inch OLED display, some exposed GPIOs, and a micro-USB interface that makes it easy and quick to upload code to the board.

For a complete overview of this board you can watch the following video or read this article: TTGO T-Journal ESP32 Camera Dev Board Review.

TTGO T-Journal ESP32 Features

Here’s a summary of the TTGO T-Journal features:

  • Chipset ESPRESSIF-ESP32-PCIO-D4 240MHz Xtensa® single-/dual-core 32-bit LX6 microprocessor
  • FLASH QSPI flash/SRAM, up to 4 x 16 MBSRAM 520 kB SRAM
  • Reset button and button on GPIO 32
  • 0.91 inch SSD1306 OLED display
  • Power indicator red LED
  • USB to TTL CP2104 (you can upload code via USB cable);
  • Camera OV2640  2 Megapixel
  • Steering engine analog servo (comes with two sets of pins ideal to connect servos)
  • Working voltage: 2.3V-3.6V
  • Working current: about 160mA
  • Size: 64.57mm x 23.98mm

Power supply specifications:

  • Power Supply USB 5V/1A
  • Charging current 1A
  • Battery 3.7V lithium battery

Read our in-depth review: TTGO T-Journal ESP32 Camera Development Board

TTGO T-Journal ESP32 Board Pinout

Having the right pinout for your camera board is very important. If you don’t assign the right camera pins in your code, the camera will not work. The following image shows the TTGO T-Journal ESP32 board pinout.

TTGO T-Journal ESP32 Camera Connections

TTGO T-Journal ESP32 OV2640 Camera

Here’s a table with the connections between the ESP32 and the camera:

OV2640 CameraESP32

So, the pin assignment in your Arduino sketch should be as follows:

Because this board uses the same camera used in the ESP32-CAM board, the examples for the ESP32-CAM (that don’t use microSD card) should also work with the TTGO T-Journal by changing the pin definition. We’ll show you a couple of examples in a moment.

TTGO T-Journal ESP32 Board OLED Connections

TTGO T-Journal ESP32 Board OLED Connections Pins SCL SDA I2C

This board comes with an I2C SSD1306 0.91 inch OLED display. To interact with the display you can use the Adafruit SSD1306, the oled-ssd1306 or other compatible libraries. We usually use the Adafruit SSD1306 along with the Adafruit_GFX to interact with OLED displays.

The OLED communicates with the ESP32 using the following pins:


TTGO T-Journal ESP32 Board Control OLED Display

In this section, well show you quick tips on how to control the OLED display of the TTGO T-Journal ESP32 board.

Installing Libraries

To control the OLED display, we’ll use the Adafruit SSD1306 and Adafruit GFX libraries. These libraries can be installed through the Arduino IDE Library Manager.

In your Arduino IDE, go to Sketch > Include Library > Manage Libraries. Then, search for the library name and install it.

OLED I2C Pins and Display Size

Controlling this OLED display is similar to control a regular 0.96 OLED display connected to an ESP32. The only difference is the way you initialize the display.

You need to take into account the I2C pins used by this display (because it doesn’t use the default I2C pins), and the size of the display.

  • I2C pins:
    • SDA (GPIO 14)
    • SCL (GPIO 13)
  • Display size:
    • Width: 128 px
    • Height: 32 px

Arduino Sketch

To control the OLED display, first, you need to import the required libraries:

Define the OLED size:

Define the I2C pins:

Next create an Adafruit_SSD1306 object called display as follows:

In the setup(), you need to initialize an I2C communication on the I2C pins you’ve defined earlier as follows:

Then, initialize the OLED display as follows:

After properly initializing the display, you can use the usual functions to write text and display shapes on the OLED. Read our OLED tutorial with the ESP32 to learn more on how to interact with the OLED display.

For testing purposes, you can upload the following code to your board. It simply displays “Hello World”.

View raw code

TTGO T-Journal ESP32 Board Control OLED Display Sample Message Hello World

TTGO T-Journal ESP32 Camera Projects

We’ve modified some of our existing ESP32-CAM projects to be compatible with the TTGO T-Journal.

Video Streaming Web Server

The following code creates a video streaming web server on the camera IP address. So, you can create an IP CAM that can be integrated in Home Automation platforms like Home Assistant or Node-RED.

View raw code

ESP32-CAM Video Streaming Web Server Example

Learn more about this project: ESP32-CAM Video Streaming Web Server

Take Photo and Display in Web Server

The following code creates a web server that you can access to take and display photos. The web server IP address is displayed on the OLED.

View raw code

ESP32-CAM Take Photo and Display in Web Server

Learn more about this project: ESP32-CAM Take Photo and Display in Web Server

CameraWebServer Example

You can also run the default CameraWebServer example that comes with the Arduino IDE. In your Arduino IDE, go to File Examples ESP32 Camera and open the CameraWebServer example.

You can click the next link to download the .zip with the final code:

Otherwise, you need to add the TTGO T-Journal pinout to the camera_pins.h tab.

CameraWebServer Example ESP32-CAM for Arduino IDE

Copy the following to the camera_pins.h file.

Then, in the CameraWebServer tab, comment all the existing camera models, and add your camera, as follows:

Because this camera doesn’t have PSRAM, the face recognition and detection features of this project don’t work with this camera. All the other functionalities work well.

CameraWebServer Example ESP32-CAM for Arduino IDE Web Server

Upload Code to the TTGO T-Journal ESP32 Camera

To upload code, you just need to connect the board to your computer, then in the Arduino IDE, go to Tools > Port and select the COM port it is connected to.

Then, you also need to select a Board model. The TTGO T-Journal is not available on the ESP32 models. So, select the following settings:

  • Board: “ESP32 Wrover Module”
  • Partition Scheme: “Huge APP (3MB No OTA)”
Board ESP32 Wrover Module and Partition Scheme Huge APP (3MB No OTA)

Then, simply click the Arduino IDE upload button and it is done!

Arduino IDE Compile and upload sketch button

Wrapping Up

This tutorial was a quick getting started guide for the TTGO T-Journal ESP32 Camera Development board. You’ve learned how to control the OLED display and how to adapt existing ESP32 camera projects to your board.

We hope you’ve found this tutorial useful. To learn more about this board, you can read our complete overview on Maker Advisor as well as our ESP32-CAM development boards comparison post:

You may also be interested in other ESP32 development boards:

Thanks for reading.


ESP32 TTGO T-Camera with PIR Sensor and OLED Display Board – Review and Pinout

TTGO-T Camera ESP32 PSRAM Camera Module OV2640 OLED PIR Motion Sensor Board Review

In this article, we’re going to take a look at another ESP32 Camera Development board: the ESP32 TTGO T-Camera with a PIR sensor and OLED display.

This board features an OV2640 camera, a 0.96 inch SSD1306 OLED display, a 5 pin JST connector with exposed I2C pins, a battery connector, a PIR motion sensor, on‑board RESET button, and a function button connected to GPIO 34. Finally, it also has a micro-USB interface that makes it easy and quick to upload code to the board. The board doesn’t support microSD card.

Where to Buy?

You can get the TTGO T-Camera ESP32 with PIR and OLED display for approximately $13 on Banggood.

Banggood - TTGO T-Camera with PIR sensor and OLED Display

Banggood - TTGO T-Camera with PIR sensor and OLED Display

as of June 14, 2021 5:28 pm

If you prefer, you can also get it on the stores below.

TTGO T-Camera with PIR sensor and OLED Display Board Overview

The board comes inside a small plastic box with the pinout. Inside, you’ll find the camera board and a small connector for the battery.

TTGO T-Camera ESP32 PSRAM Camera Module OV2640 OLED Board Enclosure Unboxing Pins

Here’s a summary of the most relevant hardware specifications:

  • Chip: ESP32-WROVER-B
  • Protocol: Wi-Fi 802.11 b/g/n & bluetooth 4.2 BLE & BR/EDR
  • Flash: 4MB
  • PSRAM: 8MB
  • Display chip: SSD1306 I2C
  • Display type: OLED
  • Display resolution: 128×64
  • PIR: AS312
  • UART chip: CP2104
  • Charging chip: IP5306 I2C
  • Camera: OV2640
  • Camera Resolution: 2 Megapixel

Power supply specifications:

  • Power supply: USB 5V/1A
  • Battery: 3.7V lithium battery

OV2640 Camera

The following figure shows the OV2640 camera that comes with the board.

TTGO T-Camera ESP32 PSRAM Camera Module OV2640

It is the same camera of the ESP32-CAM AI-Thinker board and other similar ESP32 camera development boards. When you get the board, you can choose between the regular camera and the fish-eye camera. We got the one with fish-eye camera.

SSD1306 0.96inch OLED Display

TTGO T-Camera ESP32 PSRAM Camera Module OV2640 0.96 inch OLED Display

This board comes equipped with a 0.96 inch SSD1306 OLED display. The OLED display comes with the SSD1306 driver, which means you can use the Adafruit SSD1306 or the oled-ssd1306 libraries.

The OLED communicates with the ESP32 using the I2C communication protocol on GPIO 21 (SDA) and GPIO 22 (SCL). These are the default ESP32 I2C pins, so you can use the OLED examples for the ESP32 in this board without making any changes.

You can read our guides for the OLED display with the ESP32:

PIR Motion Sensor

The PIR motion sensor data pin is connected to GPIO 333. You can set an interrupt on GPIO 33 that triggers something (like taking a photo or send notifications) when motion is detected.

TTGO T-Camera ESP32 PSRAM Camera Module OV2640 OLED Board PIR Motion Sensor

GPIOs (5 Pin JST Connector)

Behind the microUSB connector, there’s a 5 pin JST connector that allows you to access the I2C pins (GPIO 21 and GPIO 22). You can use multiple peripherals on the same I2C pins as long as they have different I2C addresses. This makes it possible, for example, to use the I2C OLED and a sensor like the BME280 at the same time.

TTGO T-Camera ESP32 PSRAM Camera Module OV2640 OLED Board Connector

Besides access to the I2C pins, you also have a 5V and 3.3V power source.

Power Supply

The board can be powered via USB cable using a 5V power source, or you use the battery connector and use a 3.7V lithium battery.

TTGO T-Camera ESP32 PSRAM Camera Module OV2640 OLED Board Micro USB Input


The board comes with two buttons: one RESET button and a button connected to GPIO 34. The RESET button resets the board. The button connected to GPIO 34 can be very useful if you want to use it to trigger any task.

TTGO T-Camera ESP32 PSRAM Camera Module OV2640 OLED Board Button GPIO 34

Board Pinout

The following image shows the pinout for the TTGO T-Camera with PIR and OLED display.

TTGO T-Camera ESP32 with PIR sensor and OLED display pinout

Note that there is another version of this board that supports a microphone and a BME280 sensor. The pinout for that board is completely different from this one. So, make sure you know exactly the board you’re using.

Recommended reading:ESP32-CAM Camera Boards: Pin and GPIOs Assignment Guide

ESP32 Board Camera Connections

Here’s the connections between the ESP32 and the camera:

OV2640 CameraESP32
RSTnot connected (-1)

It’s important to make sure that the pin definition in your code matches your camera board pinout. Otherwise, your camera will not work.

OLED Connections

The OLED that comes with this board uses the I2C communication protocol. It communicates with the ESP32 using the default I2C pins:


PIR Motion Sensor Connections

The PIR motion sensor data pin is connected to GPIO 33.

PIR SensorESP32
Data PinGPIP 33

Testing the ESP32 TTGO T-Camera

This camera board comes loaded with a video streaming example. It creates an access point that you can access on your smartphone or computer to watch the video. It is the same sample video streaming web server example that we use with the ESP32-CAM AI-Thinker.

Power the ESP32 through the USB cable (you can just connect it to a USB port in your computer for testing purposes). Go to your smartphone Wi-Fi settings, and there should be an ESP32 wireless network. Connect to that network.

Then, in your smartphone go to the IP address that shows up on the OLED display:

You should get access to the video streaming web server.

ESP32-CAM Video Streaming Example

Note: we’ve flashed the camera with a new example before taking pictures. The previous image is from another camera, but it runs the same project that is loaded in the TTGO T-Camera with PIR and OLED display.

Getting Started with the ESP32 TTGO T-Camera with PIR and OLED

Like the ESP32-CAM (AI-Thinker), this board can be programmed using Arduino IDE.

TTGO T-Camera ESP32 PSRAM Camera Module OV2640 OLED Board Back

Both boards use the OV2640 camera, so the ESP32-CAM projects (that don’t use SD card) should be compatible with this board. You just need to change the camera pins definition. Use the following pin definition for this board:

define PWDN_GPIO_NUM -1 define RESET_GPIO_NUM -1 define XCLK_GPIO_NUM 32 define SIOD_GPIO_NUM 13 define SIOC_GPIO_NUM 12 define Y9_GPIO_NUM 39 define Y8_GPIO_NUM 36 define Y7_GPIO_NUM 23 define Y6_GPIO_NUM 18 define Y5_GPIO_NUM 15 define Y4_GPIO_NUM 4 define Y3_GPIO_NUM 14 define Y2_GPIO_NUM 5 define VSYNC_GPIO_NUM 27 define HREF_GPIO_NUM 25 define PCLK_GPIO_NUM 19

The OLED display is connected to the ESP32 default I2C pins, so, you can follow our OLED tutorials for the ESP32, and they will work straight away:

You can take a look at all our projects with the ESP32-CAM in the links below:

To upload code to this board in your Arduino IDE, you can select the following settings in the Tools menu.

ESP32 TTGO T-Camera with PIR Sensor and OLED Display Board Upload Code

ESP32 TTGO T-Camera vs ESP32-CAM AI-Thinker

The most popular and cheap ESP32-CAM model is the AI-Thinker. However, the ESP32 TTGO T-Camera with OLED and PIR can be a better choice depending on your project requirements. Let’s take a quick look at the differences between each board.

TTGO T-Camera ESP32 PSRAM Board Comparison to ESP32-CAM AI Thinker Module

Both come with the OV2640 camera and ESP32 chip (Wi-Fi, Bluetooth, BLE, and dual core).

The TTGO T-Camera comes with an OLED display and a PIR motion sensor. These peripherals can be very useful in surveillance and home automation projects. So, having everything on the same board can be very useful (instead of building the circuit yourself). Besides, it also adds a pushbutton connected to GPIO 34 that can trigger any task.

Uploading code is also easier with this board because it comes with a USB connector that can be used both for uploading code or for power. Alternatively, you can also power the board using a 3.7V lithium battery. It comes with 8MB PSRAM, while the AI-Thinker comes with 4MB PSRAM.

However, it doesn’t come with microSD card support, and it costs approximately twice the price of an ESP32-CAM AI-Thinker board.

Here’s a table comparing both boards:

TTGO T-Camera ESP32ESP32-CAM (AI-Thinker)
OLED Display0.96 inch OLED displayx
PIR Motion Sensorx
MicroSD Card Slotx
Built-in Programmerx
USB Inputx
Battery Connectorx
Exposed GPIOsI2C GPIOs
Trigger Buttonx
Price$13 to $25$6 to $9
Where to Buy?Check pricesCheck prices

Wrapping Up

The ESP32 TTGO T-Camera is a very versatile ESP32 camera development board. If you want to have a general overview and compare other ESP32 camera boards, read this article: ESP32 Camera Dev Boards Review and Comparison (Best ESP32-CAM).

If you want to get one ESP32 TTGO T-Camera with PIR and OLED display, check the following links:

We hope you’ve found this review useful. You may also like the following resources:

Thanks for reading.

[Recommended Course] Learn ESP32 with Arduino IDE

Register in our brand new ESP32 course with Arduino IDE. This is our complete guide to program the ESP32 with Arduino IDE, including projects, tips, and tricks! The registrations are open, so sign up now.

Other RNT Courses

Filed Under: Product Review, Reviews

  1. Python practice test
  2. Bohemian throw pillows amazon
  3. Amp protect mode fix
  4. Jc resorts golf courses
  5. Root mean square error calculator

ESP32-CAM. Which model to choose? ESP-EYE, AI Thinker, TTGO T-Camera, M5Stack Timer Camera …

esp32cam pinout ftdi cable ide arduinoesp32-cam diagram flash mode firmware ide arduino ftdi cable

How to activate the external antenna?

Models built around the ESP32-S microcontroller have an IPEX (uFL) connector that allows the use of an external antenna to increase the range and quality of the WiFi signal. By default, the antenna engraved on the PCB is selected.

To be able to use the external antenna, it will therefore be necessary to move the resistance (or replace it with a small piece of copper wire) like this.

PCB antenna activatedExternal antenna activated
esp32-cam resistor pcb antenna

PCB antenna activated

esp32-cam resistor ipex activate external antenna

IPEX external antenna enabled

esp32-s esp32-cam on board antenna pcb resistanceesp32-s esp32-cam antenna ipex

To make the change, follow the instructions detailed in this article

M5Stack Timer Camera

The M5Stack Timer Camera is a camera module based on an ESP32 (unspecified version, probably ESP32-D0WD) with 8MB of PSRAM integrated. The OmniVision OV3660 module offers a resolution of 2048×1536 pixel is equipped with a lens with a field of view of 66.5°.

The M5Stack Timer Camera is available alone or delivered installed in a box (X version) with Lego Technics support.

m5stack esp32 timer camera boardm5stack esp32 timer camera board packaged


ESP32-Camera equipped with an OmniVision OV2640 camera. I do not recommend this version, the price of which is very close to the better equipped Timer Camera. It is equipped with an older generation of ESP32, and does not have a LiPo battery connector.

The OmniVision OV3660 sensor is not suitable for night vision. The spectral response is best between 400nm and 700nm. Additional lighting at 800nm ​​should however improve night vision for animal viewing or video surveillance in low light.

omnivision ov3660 esp32cam m5stack spectral response night

Source: Omnivision

The development board also has an RTC clock (BM8563), a PH2.0-4P (Grove) port, a white LED (IO2) and a connector for LiPo battery. The battery charge can be measured on pin (IO33). Go to the next paragraph for pin identification.

The board is equipped with a 3D 2.4GHz WiFi antenna eliminating the need for an external antenna via an IPEX connector.

Programming can be done with Arduino code (ESP32-Arduino library), with C++ code (ESP-IDK 4.1 minimum) or in Blockly with the UIFlow home version.

An example developed with the ESP-IDF SDK (programming in C++) is available on GitHub here.

The X version comes in a protective box with a LEGO Technic compatible mount and a 140mAh battery.

The M5Stack Timer Camera can also be used to connect I2C accessories via a 4-pin PH2.0 connector better known as the Grove connector.

The Grove connector exposes the GPIO04 and GPIO13 pins of the ESP32. You can use the many available Grove M5Stack or SeeedStudio equipment.

As the M5Stack Timer Camera is equipped with a UART / Serial converter (CP2104 controller), there is no need to put the camera in “bootloader” mode each time you want to upload a new program.

The M5Stack Timer Camera is a great place to start. Programming can be done by assembling blocks (blocky language) or with Arduino code.

M5Stack Timer Camera Pinout

Here is the pin identification of the ESP32 reserved for the OmniVision OV3660 camera module, the white LED and the LiPo battery charge control (optional).

InterfaceESP32 pin
Grove connector
Other equipment
White ledIO2
LiPo battery voltage (BAT_ADC_Pin)IO33

Technical data taken from official documentation .

Obsolete models to avoid: M5Camera A and B, M5CameraX, M5CameraF and ESP32-Camera

M5Stack has removed the M5Camera A, M5Camera B, M5CameraX and M5CameraF development boards from their catalog, detailed here on GitHub. You may find them on sale on AliExpress for example. Stay away from its less efficient models that will no longer receive technical support.

m5camera m5cameraX m5cameraF esp32-cam development boards

Source: M5Stack

You can still buy the ESP32-Camera but that’s a bit of a shame because its price is very close to the much newer and better equipped Timer Camera. You choose.

M5Stack M5StickV K210 AI Camera (Kendryte K210 without WiFi)

m5stack m5stickv kendryte k210 cameraThe M5StickV is built around the Kendryte K210 SoC, a dual-core 64-bit RISC-V processor and a dedicated neural network processor for image analysis and video processing.

The M5StickV AI is equipped with an OmniVision OV7740 sensor which offers high sensitivity even in low light. The M5StickV includes, among other things, an I2S Class-D speaker, an IPS screen, a 6-axis MPU6886 accelerometer, a 200mAh LiPo battery, an AXP192 power manager.

The Kendryte K210 does not have any connectivity (WiFi or Bluetooth).

The easiest is to use the MicroPython language to develop code for the K210. Several MicroPython code samples developed using the MaixPy editor (developed by Seeed Studio) are available here . Small regret, no example for the camera module is available yet ?!

As I reported in this guide to choosing TTGO T-Watch, the manufacturer’s website Kendryte has been offline for a while now. Buyout or bankruptcy following the COVID-19 pandemic, that is the question? Only the GitHub repository is still active. I therefore advise you to stay away from this product for the moment.

The M5StickV K210 AI is available for around $ 30 (excluding shipping) from the M5Stack online store.

TTGO T-Camera, T-Camera Plus or T-Journal from LilyGo

LilyGo, the manufacturer of ESP32 TTGO development boards, offers us 3 ESP32-CAM development boards.

The ESP32-CAM TTGO T-Camera and T-Camera Plus boards are equipped with a 3D WiFi antenna as well as an IPEX connector. A priori, it is not necessary to intervene on the circuit to connect an external antenna. However, the 3D WiFi antenna should provide a good signal in most situations, indoors at least. The T-Journal is equipped with an SMA antenna which can be replaced by an IPEX antenna (connector available without modification).

TTGO T-Camera

The TTGO T-Camera is equipped with a PIR motion detector (AS312) accessible on the IO33 pin as well as an OLED SSD1306 I2C screen

TTGO T-Camera Plus

The TTGO T-Camera Plus has a microphone (MSM261S4030H0), a temperature, humidity and atmospheric pressure sensor (BME280), a color TFT screen with a diagonal of 1.3 “and an SD card reader (up to 16GB) .

Too bad the motion detector has been replaced by a push button, probably to make selfies! It would have been perfect for a surveillance camera with its microSD card reader.

TTGO T-Journal

The TTGO T-Journal is directly fitted with an SMA connector. An IPEX connector (uFL) is also present at the base of the SMA connector. Good idea ! No antenna is engraved on the PCB, so you must use an external antenna.

Comparison table of TTGO T-Camera, T-Camera Plus and T-Journal

Here is a comparison table which summarizes the main technical specifications of the 3 LilyGo TTGO camera boards.

FunctionESP32-CAM Ai ThinkerTTGO T-CameraTTGO T-Camera PlusTTGO T-Journal
esp32 cam wifi wifi module esp32 serial to wifi esp32 cam development board 1ttgo lilygo t-camera esp32 esp32-camttgo lilygo t-camera plus esp32 esp32-camttgo lilygo t-journal esp32 esp32-cam
PSRAM memory4Mo8Mo8Mo
Flash memory4Mo4Mo4Mo4Mo
GPIO connectorxxx


SD card readerxx
BME280 (temperature + humidity + atmospheric pressure)xxx
ScreenxOLED SSD1306

0,96″ (128×64)

IPS ST7789

1.3 “


0,96″ (128×64)





User buttonx


Integrated programmer (UART / USB converter)xCP2104CP2104CP2104
Connectorxmicro usbmicro usbmicro usb
JST connector for LiPo batteryx
3D WiFi antennax
IPEX uFL connectorTo modify**
SMA connectorxxx
Dimension40*27*18mm69.13*28.41*8.45mm64.57mm * 23.98mm
Average price (excluding transport costs)<€ 8€ 1517 €€ 14

(*) Attention, if you use the micro SD card reader, only pins 1, 3 and 16 are available for the I2C bus. Pins 1 and 3 will need to be released each time you want to upload a program.

(**) Follow the instructions of this tutorial.

How to program an ESP32-CAM module?

ESP32-CAM is first and foremost an ESP32 development board. This means that we can develop code using compatible languages:

  • ESP-IDF is the C++ development kit offered by Espressif which allows you to use all the functions of the ESP32. It is based on FreeRTOS. You must already have a very good command of C++ to get started.
  • ESP32-Arduino. This is the version of the ESP-IDF SDK suitable for the Arduino or PlatformIO IDE. You will find many projects and examples to get started. This is the preferred solution when starting out.
  • UIFlow. This is the home version of Blockly developed by M5Stack. It can only be used with M5Stack boards.
  • Micro Python. A few projects are starting to emerge on the internet.
ESP-IDFESP32-ArduinoUIFlow (Blockly)Micro Python
M5Stack Timer Camera, ESP32 Camera and older models
TTGO T-Camera
TTGO T-Camera Plus
TTGO T-Journal

Summary table, which model to choose?

Here is a summary table to help you choose the ESP32-CAM development board that best suits your project.

MakerEspressif + generic

Ai Thinker + generic



esp-eye espressif esp32esp32 cam wifi wifi module esp32 serial to wifi esp32 cam development board 1m5stack esp32 timer camera boardesp32 camera TTGO T-Camera PIResp32 camera TTGO T-Camera-Plusttgo lilygo t-journal esp32 esp32-cam




Camera Timer


































0.96″ OLED (SSD1306)

1.3″ TFT (ST7789)

0.91″ OLED (SSD1306)

SD card reader










RTC clock







User button




Battery connector



Battery voltage






Integrated programmer












Movement detector






Grove connector





3D WiFi antenna




IPEX or SMA connector





White led





Average price (excluding transport costs)

~ 26 €

< 8 €

~ 10 €

~ 15 €

TTGO T-Camera is an ESP32 CAM Board With OLED and AI Capabilities.

Just like Arduino, ESP32 has been one of the boards that have found love among hackers and makers around the world. Unlike general Arduino boards, ESP32 offers much more at a fraction of the cost and most importantly are usually compatible with Arduino based code.

Recently we have seen the rising of ESP32 in the areas of Artificial Intelligence especially those focused on Computer Vision (Mostly around Face Detection and Recognition) such as the camera boards ESP32-CAM and the upcoming ESP-EYE board from Espressif Systems. The ESP EYE as mentioned before is an AI development board based on the ESP32 and capable of some vision and voice capabilities.

One significant note about the ESP CAM and the ESP EYE is the lack of any display medium aside from the use of LEDs or using an external interface like the computer or mobile phone, in this regard is where the TTGO T-Camera board comes in. The TTGO T-Camera hopes to solve the supposed visualization problem, by integrating a 128 x 64 OLED display which can be used to display your detection, sensor, recognition, and other kinds of data. Of course, don’t expect to be able to view face image on the OLED display!

TTGO T-Camera Board

The TTGO T-Camera is basically a combination of the ESP CAM, the ESP EYE, and an OLED display. It doesn’t end there, and it also includes a BME280 environmental sensor for sensing temperature, humidity, and pressure. Also, you got a PIR sensor for motion sensing and an optional fisheye lens for the camera.

Application of the TTGO T-Camera is limited by the user, and some potential application will be using the inbuilt PIR sensor of the device to detect motion in a doorway, room or somewhere and only capture the image when someone is present. Face detection and recognition can be done for possible access control or in case of security, hook the device to the internet and upload the image of the potential intruder to an online server. Basically, think about all the features of the ESP32 CAM and some features of the ESP EYE boards.

TTGO T-Camera Board

TTGO T-Camera board specifications:

  • ESP32-WROVER-B Wireless Module
    • SoC –  ESP32 dual core Tensilica LX6 processor
    • Memory – 8MB PSRAM
    • Storage – 4MB SPI flash
    • Connectivity – 2.4 GHz 802.11n WiFI 5, Bluetooth 4.2 LE
  • Camera – 2MP OV2640 camera with a normal or fisheye lens
  • Display – 0.96″ 128×64 OLED display connected via SSD1306 I2C display controller
  • Audio – Microphone
  • USB – 1x micro USB port for power and programming (CP2104)
  • Sensors – AS312 PIR, BME280 pressure, humidity, and temperature I2C sensor
  • Expansion – 5-pin I2C header with 5V,3.3V, and GND
  • Misc – Reset and user (IO34) buttons, LED
  • Power Supply – 5V via micro USB port, support for LiPo battery via 2-pin header and IP5306 charging chip
  • Dimensions – 68 x 28 mm

The board is made by LilyGO and sample code of using with Arduino is available here. The board is readily available for purchase can be seen on several Chinese stores. It is available on Aliexpress for $15.58 for the normal lens and $17.22 for the fisheye lens.

Hi, I'm software, a hardware guy, and a technical writer. Have had a stint with the EdTech industries, but mostly interested in the space of deploying AI for edge computing. Otherwise, I am writing or coding about some technology pieces covering IoT, GPU computing, LoraWAN, PCB, Machine Learning, Precision Agriculture, Open Electronics, and related fields. Got a tip, freebies, launch, gig or leak? Contact me on Twitter, or via email: I don't bite.

view all posts by ayo

T camera ttgo

TTGO T-Camera Plus ESP32 Development Board – Review, Pinout, and Libraries

TTGO T-Camera Plus ESP32 Camera Development Board

The TTGO T-Camera Plus is an ESP32 Camera Development Board that features an OV2640 camera, microSD card support, 1.3 inch TFT display, built-in programmer, access to I2C GPIOs, 8MB PSRAM and much more.

In this article, we’ll take a quick look at the TTGO T-Camera Plus, the pinout, and provide great resources to help you get started.

Where to Buy?

You can get the TTGO T-Camera Plus in different stores. You can choose whether you want the board with a normal lens or a fish-eye lens in many stores. You can also choose if you want a longer flex cable to have a rear camera.

TTGO T-Camera Plus Board Overview and Specs

TTGO T-Camera Plus Board Overview

The TTGO T-Camera Plus comes with all the functionalities we would want in such a development board and for a very reasonable price.

Here’s a quick summary of the most relevant hardware specifications of the TTGO T-Camera Plus.

ChipsetESPRESSIF-ESP32-DOWDQ6 240MHz Xtensa® dual-core 32-bit LX6 microprocessor
FlashQSPI 4MB flash / 8MB SRAM
SRAM520kB SRAM + 8MB External SPRAM
ButtonReset button
DisplayIPS Panel ST7789 – 1.3 Inch
USB to TTLCP2104
CameraOV2640 2 Megapixels
SD CardMicroSD card slot
Operating voltage2.3V – 3.6V
Operating current~160mA

Power specifications

  • Power management chip: IPS306
  • Power supply: USB 5V 1A
  • Charging current: 1A
  • Battery: 3.7V lithium battery

Camera (OV2640)

T-Camera Plus Development Board OV2640 Camera

The camera that comes with this board is a 2MP OV2640 camera, which is the same camera that comes with the ESP32-CAM, T-Journal, ESP-EYE, and other similar boards. When you get your T-Camera Plus, most stores allow you to choose between a camera with a normal lens or a fish-eye lens.

You also have the option to choose a longer or shorter flex cable. A longer flex cable allows you to have a rear camera (the display facing one side and the camera facing the other).

MicroSD Card

TTGO T-Camera Plus ESP32 Development Board microSD card

The board comes with a microSD card slot. This can be very useful to store photos, data collected from I2C sensors, or to store files to serve to clients (files to build a web page with the ESP32, for example).

To interface the microSD card with the ESP32 using Arduino IDE, you can use the SD_MMC library. The connections between the microSD and the ESP32 are shown in the next table.

MicroSD CardESP32


TTGO T-Camera Plus MEMS Microphone ESP32

The T-Camera Plus comes with a MSM261S4030H0 microphone (right above the reset button). This is very cool because you can add voice features to your projects, like voice wake-up, or trigger a task when the sound level goes above a certain threshold.

Here’s the microphone wiring to the ESP32:


To interface the microphone with the ESP32, you can use the esp32-i2s mems library. Unfortunately, at the moment there isn’t much information about microphones and I2S interface with the ESP32.

Recommended Reading:ESP32 Pinout Reference: Which GPIO pins should you use?

1.3 Inch TFT Display

TTGO T-Camera Plus 1.3inch TFT Display IPS ST7789

The 1.3 inch IPS ST7789 display provides a full-color visual interface for your board.

You can install the Adafruit ST7735 library to interface the ESP32 with the display. Make sure you assign the right pins in your code.

Connections between the display and the ESP32:

1.3 inch IPS ST7789 DisplayESP32

Power Supply (USB and Battery Connector)

TTGO T-Camera Plus micro USB interface

The T-Camera Plus can be powered using an USB cable (5V 1A) or you can use a 3.7V lithium battery.

TTGO T-Camera Plus 3.7V lithium battery connector

You can also use the micro USB interface to connect the board to your computer to upload new code.


TTGO T-Camera Plus antenna connector

There is an onboard antenna and a connector if you want to use an external antenna to increase the Wi-Fi communication range.

Reset Button

TTGO T-Camera Plus on-board reset button

Right below the microphone, there’s a reset button to reset/restart the board. This board doesn’t come with any extra function buttons.

BME280 (not included)

The T-Camera Plus comes with some GPIOs exposed that were used to come with an onboard BME280 sensor. However, the sensor would get really hot on the board, so the manufacturer decided to remove the sensor as shown below (we don’t recommend soldering the BME280 sensor).

TTGO T-Camera Plus BME280 sensor

Grove Connector

So, you can use those pins to connect other I2C peripherals. These GPIOs are also accessible via grove connector: GPIO 23 (SCL) and GPIO 18 (SDA).

TTGO T-Camera Plus grove connector

TTGO T-Camera Plus Board Pinout

The following image shows the TTGO-Camera Plus pinout.

It’s important to have the right pin definition in your code for the board you’re using, otherwise you won’t get it working.

Testing the TTGO T-Camera Plus

The TTGO T-Camera Plus comes flashed with an example. Apply power to your board using the microUSB interface. After a few seconds, the display will display a message. You should say the word that appears on the screen to “unlock” the device.

Testing the TTGO T-Camera Plus default example

If you pronounce it correctly (it can be a bit difficult, so you may have to try several times), you’ll start seeing what the camera “sees”. This is a great example to check if everything is working with the board hardware.

Testing the TTGO T-Camera Plus default example

Comparing the TTGO T-Plus with Other Camera Boards

There are many other ESP32 development boards with camera. We have a comparison table with the most popular ESP32 camera boards so that it is easier for you to pick up the most suitable camera for your projects.

For a more in-depth comparison of the ESP32 camera models, read: ESP32 Camera Dev Boards Review and Comparison (Best ESP32-CAM)

Wrapping Up

In this article, we’ve taken a quick look at the T-Camera Plus. It features an OV2640 camera, a 1.3 inch OLED display, microSD card support, microphone, battery connector, microUSB interface, and 8MB PSRAM. This is a great board given its price and versatility.

We hope you’ve find this review useful.

Other board reviews that you might like:

Thanks for reading.

[Recommended Course] Learn ESP32 with Arduino IDE

Register in our brand new ESP32 course with Arduino IDE. This is our complete guide to program the ESP32 with Arduino IDE, including projects, tips, and tricks! The registrations are open, so sign up now.

Other RNT Courses

Filed Under: Product Review, Reviews

Cloud-less video doorbell on TTGO-Camera integrated with Home Assistant

Started one of the guys, the other joined in. - I answered. My name is Andrey, his Dima - continued the first. Sorry, we accidentally broke into your door, they have shitty locks here. - Andrey said.

You will also be interested:

It was pretty good there, I even wanted to feel his fingers in myself. I drank the rest of Koka-Kola, I really wanted to drink after all that happened. An empty bottle stood by me. Do you love Cole. - asked Nazar.

18342 18343 18344 18345 18346