Last Updated on 4. Oktober 2026 by sfambachLink-Status: OK
Viele, die sich mit der ESP32 CamLink-Status: OK beschäftigt haben, dachten über eine Erweiterung um einen PIRLink-Status: Unbekannt oder andere Sensoren nach. LiLyGo hat eine Serie von mehreren Kameras herausgebracht, unter anderem die beiden vorliegenden Modelle mit einem PIR Sensor und einigen anderen interessanten Zusätzen.
Es gibt mehr als zwei Varianten, hier möchte ich die folgenden vorstellen:
- Version 1.62 mit Mikrophon (beim Hersteller 162 genannt)
- Version 1.7 ohne Mikrophon (beim Hersteller 17 genannt)
Diese gibt es zudem noch mit zwei unterschiedlichen Linsen. Eine normale und eine Fischaugen-Linse.
Als Zubehör gibt es einen Drucksensor, der an den Steckverbinder angeschlossen werden kann und ein Gehäuse. Für das Gehäuse gibts noch eine Gummi-Stoßsicherung.
Pins sind bis auf die Schnittstelle unten keine nach außen geführt. Über diese kann mittels I²C Bus mehr Peripherie angeschlossen werden.
Fakten
- ESP32
- Kamera OV2640 2 Megapixel (optional Fischaugenlinse)
- SSD1306Link-Status: Unbekannt Monochrom Oled Display 128×64 Pixel
- PIR SensorLink-Status: Unbekannt AS312
- MicroUsb Anschluss zum Programmieren
- Mikrophon (optional)
- 2 Taster Reset + Frei belegbar
- Akku Anschluss JSTLink-Status: Unbekannt 1,25mm mit Lader IP5306 mit I²C Anschluss
- Antennen Anschluss IPEXLink-Status: OK
- Anschlussstecker für I²C Geräte
Pinbelegung
Kamera
| Beschreibung | Pin Ohne Mic (V170) | Pin mit Mic (V162) |
| DVP Y9 | 39 | 36 |
| DVP Y8 | 36 | 37 |
| DVP Y7 | 23 | 38 |
| DVP Y6 | 18 | 39 |
| DVP Y5 | 15 | 35 |
| DVP Y4 | 4 | 14 |
| DVP Y3 | 14 | 13 |
| DVP Y2 | 5 | 34 |
| DVP VSNC | 27 | 5 |
| DVP HREF | 25 | 27 |
| DVP PCLK | 19 | 25 |
| DVP PWD | N/A | N/A |
| DVP XCLK | 32 | 4 |
| DVP SIOD | 13 | 18 |
| DVP SIOC | 12 | 23 |
| DVP RESET | N/A | N/A |
Sonstige
| Beschreibung | Pin |
| PIR Sensor (mit Mic/ohne Mic) | 19/33 |
| Rechter Taster | 34 |
| Mikrophon | |
| SCK | 28 |
| SDO | 33 |
| WS | 32 |
| SSD | |
| I²C SDA | 21 |
| I²C SCL | 22 |
| Anschlussstecker | |
| 5V | 1 |
| Masse GND | 2 |
| 3.3V | 3 |
| IO22 (I²C SCL) | 4 |
| IO21 (I²C SDA) | 5 |
Anwendungsbereiche
- Überwachung
- Modellbau
- Spycam
- Türspion
Ansichten
Link-Status: OKTTGOT-KameraESP32 V163 Front
Link-Status: OKTTGOT-KameraESP32 V17 Front
Link-Status: OKTTGOT-KameraESP32 V163 RückseiteTTGOT-KameraESP32 V163 Rückseite
Link-Status: OKTTGOT-KameraESP32 V17 Rückseite
Link-Status: OKTTGOT-KameraESP32 V163 rechte Seite
Link-Status: OKTTGOT-KameraESP32 V17 rechts
Link-Status: OKTTGOT-KameraESP32 V163 linke Seite
Link-Status: OKTTGOT-KameraESP32 V17 links
Link-Status: UnbekanntTTGOT-KameraESP32 V163 Anschlüsse
Link-Status: UnbekanntTTGOT-KameraESP32 V17 Anschlüsse
Analyse
Programmierung
Bibliotheken
Kamera
Die Bibliothek ist mittlerweile beim ESP32 Board dabei, wer es aktuell mag, hier der Link zum Git Projekt.
https://github.com/espressif/arduino-esp32Link-Status: OK
SSD1306
LiLyGo verwendet per se nicht die Adafruit Bibliotheken, somit wird für das SSD1306 Display die folgende Bibliothek verwendet:
https://github.com/ThingPulse/esp8266-oled-ssd1306Link-Status: OK
Taster
Für den Taster wird die folgende Bibliothek verwendet:
https://github.com/mathertel/OneButtonLink-Status: Unbekannt
Optional IP5306 Ladegerät
Der Akkulader hat einen I²C Anschluss, mit Hilfe dessen einige Informationen wie Batterieladestatus usw. ausgelesen werden können.
Hier eine Bibliothek, die dabei unterstützt:
https://github.com/shaap/IP5306-arduino/blob/master/IP5306.hLink-Status: Unbekannt
Testprogramm
Vorarbeiten
- Runterladen des Beispielprogramms LINKLink-Status: OK.
- Repository clonen oder als Zip downloaden.
- Testprogramm befindet sich im Ordner sketch.
- Installation der oben genannten Bibliotheken oder Kopien in den Sketch Ordner legen.
Code anpassen
Änderungen in der Datei Sketch.ino
Die richtige Board Version eindokumentieren
/***************************************
* Board select
**************************************/
/* Select your board here, see the board list in the README for details*/
// #define T_Camera_JORNAL_VERSION
// #define T_Camera_MINI_VERSION
// #define T_Camera_PLUS_VERSION
// #define T_Camera_V05_VERSION
// #define T_Camera_V16_VERSION
#define T_Camera_V162_VERSION
// #define T_Camera_V17_VERSION
// #define ESPRESSIF_ESP_EYE
WLan Daten eintragen
/***************************************
* WiFi
**************************************/
#define WIFI_SSID "TEST"
#define WIFI_PASSWD "TEST123456789"
Das Ganze umrühren, leicht erhitzen, compilieren und auf das Board spielen. Hier noch meine Board Einstellungen:

Auf dem Display sollte nach kurzer Zeit eine IP angezeigt werden. Evtl. mal den linken (Reset) Taster drücken.

Mit Hilfe dieser IP kann im Browser die Website der Kamera aufgerufen werden.

Den Stream noch starten und nun sollte ein etwas dunkles Kamera Bild erscheinen.

Probleme
IP wird nicht im Display angezeigt
WLan Einstellungen nochmal überprüfen, evtl. externe Antenne anschließen.
Webseite nicht erreichbar
Firewall überprüfen. Evtl. Kamera mal anpingen.
Weitere Probleme
Im Beitrag ESP32 Cam sind weitere Problemfälle gelistet, die helfen könnten.
https://www.fambach.net/esp32-cam-modul/Link-Status: OK
Sonstiges
Akku Betrieb
Das Kameraboard verfügt über eine JSTLink-Status: Unbekannt 1,25mm Akkuanschlussbuchse, die mit dem Laderbaustein IP5306 verbunden ist.
Mit einem Lipo 3.7V 1500mAh konnte ich die Kamera im Dauerbetrieb rund >3 Stunden betreiben.
Interessanter wäre es, die Kamera in den Schlafmodus zu versetzen und nur auf Signale vom PIRLink-Status: Unbekannt zu warten.
Neben der oben schon gelinkten Klasse:
https://github.com/shaap/IP5306-arduino/blob/master/IP5306.hLink-Status: Unbekannt
habe ich noch diese vom M5 Stack gefunden, sie erscheint mir etwas komfortabler.
https://github.com/m5stack/M5Stack/blob/master/src/utility/Power.hLink-Status: OK
3D Gehäuse
https://www.thingiverse.com/search?q=t-camera&type=things&sort=relevantLink-Status: OK
Auch schick schaut dieses aus:
https://www.thingiverse.com/thing:3704769Link-Status: OK
Das folgende Gehäuse habe ich mal selbst ausgedruckt:
https://www.thingiverse.com/thing:3440888Link-Status: OK
Mein Druck ist auf Druckgeschwindigkeit ausgelegt. Mit besseren Druckern oder langsameren Druckoptionen ist sicherlich eine bessere Qualität möglich.
Bedarf:
- 12 Meter Filament Druckdauer
- 2,5 Stunden Druckdauer
- 4st M3 * 16 Senkkopfschraube (Ich hatte nur Linsenkopf, ging auch)
- 1st M3 *20 Senkkopfschraube
- 1st M3 * 8 Senkkopfschraube
- 3 M3 Muttern evtl. Unterlegscheiben
Druckeinstellungen:
| Drucker | CTC Bizzer |
| Material | PLA |
| Adhesion | Hier ohne / aber besser mit, siehe Ecken |
| Heizplatte | 0°C |
| Druckunterlage | Blaues Tape |
| Drucktemperatur | 220°C |
| Hüllen Dicke | 1mm |
| Layer Höhe | 0.2mm |
| Druckgeschwindigkeit | 60mm/s |
| Retraction-Geschwindigkeit | 50 mm/s |
Die Teile sehen auf den ersten Blick ganz gut aus. Die Halterung passt perfekt auf die Kugel. Diese ist nicht zu klein, somit auch schön rund.

Das Gehäuse passt bei mir nicht gut aufeinander, hier sind die Toleranzen für meinen Billigdrucker zu gering. Der Steg in der Mitte ist meiner Druckunterlage geschuldet.

Dafür passt das Kameraboard mit sanfter Gewalt gut ins Gehäuse.

Alles in allem sieht ganz gut aus 😉


Für etwas mehr Platzbedarf habe ich noch das folgende Gehäuse ausprobiert.
https://www.thingiverse.com/thing:3414820Link-Status: OK
Bedarf:
- 8 Meter Filament Druckdauer
- 1,5 Stunden Druckdauer
- 4st M3 * 8 Linsenkopf Schrauben
- 6St M1 Spax o.ä. od. evtl. Heißkleber oä.
Druckeinstellungen:
| Drucker | CTC Bizer |
| Material | PLA |
| Adhesion | Brim/Bauplatte |
| Heizplatte | 0°C |
| Druckunterlage | Blaues Tape |
| Drucktemperatur | 220°C |
| Hüllen Dicke | 1mm |
| Layer Höhe | 0.2mm |
| Druckgeschwindigkeit | 60mm/s |
| Retraction-Geschwindigkeit | 50 mm/s |
Das Gehäuse sieht schlicht aus, erfüllt aber seinen Zweck. Die kleinen Schrauben sind etwas friemelig aber halten das Board gut am Deckel.

Auch für den Akku ist genügend Platz


Auch mein dicker Micro-USB Stecker passt.

Fazit
Dank der Herstellerseite und etwas Vorwissen, ist die Kamera schnell betriebsbereit (ca. 1/2 Stunde). Ein Vorteil ist der vorhandene Micro USB Anschluss. Hier muss nicht erst ein Programmierer angeschlossen werden.
Die Helligkeit der Kamera ist mit den Standard Einstellungen nicht wirklich überzeugend. Hieran kann sicherlich noch etwas optimiert werden. Auch laufen die Bilder etwas nach. Das soll heißen, wenn sich die Szene ändert, werden noch, wie bei einem Wasserzeichen, Teile des alten Bildes angezeigt. Ich vermute, auch das dürfte mit etwas Tuning behoben werden.
Sonst reagiert die Kamera besser als ihr kleiner Bruder die ESP32 CamLink-Status: OK und scheint auch mit Versorgungsspannungen unter 5V gut zu laufen.
Einem Dauertest habe ich die Kamera noch nicht unterzogen, allerdings lief sie bei mir mehrere Stunden am USB-Port ohne Abstürze. Der PIRLink-Status: Unbekannt und ein paar andere Features wurden von mir noch nicht verwendet.
Habt ihr weitere Infos oder Empfehlungen, die ich mit aufnehmen soll, lasst mir einfach einen Kommentar da.
Verwandte Beiträge
- Raspberry PI als NVR mit ShinobiLink-Status: OK
Quellen
Hersteller Seite auf GITLink-Status: OK
Kaufen beim schnellen AliLink-Status: OK
GesichtserkennungLink-Status: OK
Schaltplan V162Link-Status: OK
Schaltplan V17Link-Status: OK
IP5306Link-Status: Unbekannt
https://www.thingiverse.com/search?q=t-camera&type=things&sort=relevantLink-Status: OK
https://www.thingiverse.com/thing:3440888Link-Status: OK
https://www.thingiverse.com/thing:3704769Link-Status: OK
fambach.net/esp32-cam-modulLink-Status: OK
https://github.com/lewisxhe/esp32-camera-screenLink-Status: OK
| Datum | Änderung | Autor |
|---|---|---|
| 04.10.2026 | Rechtschreibung korrigiert: Tippfehler, Kommas, Groß-/Kleinschreibung, Grammatik | sfambach |
| 03.10.2026 | Log-Liste eingefügt | sfambach |
| 31.05.2020 | Beitrag erstellt | sfambach |


Hallo Stefan,
Bräuchte noch einen Denkanstoss zur Programmierung des pir sensors.
Ein Foto bei Bewegung anschließend wieder schlafen gehen bis zur nächstens Bewegungserkennung.
Bekomme es alleine nicht hin.
Danke im voraus.
LG
Hallo,
Das könnte über interrupts und deep Sleep funktionieren. Hier ein nettes Video zu dem Thema:
https://www.youtube.com/watch?v=CJhWlfkf-5M
Gruß
Stefan
Hallo Forum,
Wie so oft saß das Problem vor dem Rechner. Hatte im Sketch nur die ino datei kopiert und nicht alle Anderen wie zB. die select_pins..h Datei
Schönes Wochenende
Hi ?, habe deine anderen Beiträge mal gelöscht …
Dir fehlt die Datei mit dem Pinout für das Board diese findest du hier:
https://github.com/lewisxhe/esp32-camera-series/tree/master/sketch
Du musst noch ein define für deine Kamera vor dem #include „select_pins.h“ in der .ino Datei eintragen bzw. warscheinlich ist das schon da also nur ausdokumentieren
Für Version 1.7 wäre das dann:
#define T_Camera_V17_VERSION
Für eine Version V17 Plus habe ich in der Datei nichts gefunden.
Aber das Pinout wird auf der Camera Screen Seite im gleichen Repository beschrieben, musst also nur einen neuen Abschnitt in der select_pins.h anlegen oder den für die 17 anpassen.
Gruß
Stefan
Hallo Forum ,hoffentlich jetzt im richtigen Register !
ich bin seit Neuem Besitzer des TTGO t-camera esp32 Board. Rückseite trägt die Definition ESP 32 Wrover-B.
Bin strikt nach der Anleitung vorgegangen, Testprogramm heruntergeladen und die Version 17 plus die beiden Bibliotheken installiert.
https://github.com/lewisxhe/esp32-cam…
Version 05 auch probiert ohne Erfolg, obwohl von Rui Santos (Random Nerd Tutorials empfohlen)
[Blockierte Grafik: https://makeradvisor.com/wp-content/uploads/2020/09/TTGO-T-Camera-ESP32-OLED-PIR-Sensor-Arduino-IDE-Settings.png%5D
Falls das Bild nicht ankommt !
Board:ESP32 Dev Module
Partition Scheme:Huge APP /3MB No OTA/1MB SPIFFS)
PSRAM: Enabled
Fehlermeldung beim Kompilieren
exit status 1
select_pins.h: No such file or directory
Markierung im Sketch:
#include „select_pins.h“
Wäre dankbar für Lösungsvorschläge 🙂
Grüsse