01 — Build

Build the camera

A low-cost underwater camera using off-the-shelf components and a repurposed glass jar. No specialist tools required. Two versions — choose based on your budget and experience.

Safety first

⚠ Read before you begin

Personal protective equipment

Wear safety glasses when drilling. Flying metal and plastic fragments can cause serious eye injury. Wear cut-resistant gloves when handling drilled metal lids — edges are sharp. Work in a well-ventilated space.

Microplastic disposal

Drilling through plastic or metal-coated lids produces fine particles. Do not drill near water or drains. Collect all swarf and plastic debris on a sheet of paper or card, fold it up, and dispose of it in general waste — never rinse it down a sink or allow it into the environment. This project exists to observe aquatic ecosystems — protect them from the very start.

Electrical safety

Always disconnect the battery before wiring. Never submerge a camera that has not been fully sealed and leak-tested. Do not use mains power for underwater deployment — battery or power bank only.

Silicone and adhesives

Use only aquarium-safe silicone sealant near water. Standard bathroom or construction sealants can leach chemicals harmful to aquatic life. Allow full 24-hour cure time before any water contact.

Lite — ESP32-CAM

Cost~£15
Quality720p
DifficultyBeginner
Best forPonds, streams, canals
HousingIKEA 365+ 180ml
Housing cost£2 each (3 for £6)
PowerLiPo battery (internal)
IKEA 365+ 180ml jar

IKEA 365+ 180ml — available new (£6 for a pack of 3) or reused from eBay, Vinted, or charity shops.

The Lite version uses an ESP32-CAM microcontroller — a single board with a built-in camera, Wi-Fi, and enough processing power to stream live video. Housed in an IKEA 365+ 180ml glass jar, it requires no soldering and can be built in an afternoon. It is ideal for shallow freshwater environments.

Parts list

ComponentEst. costNotes
ESP32-CAM module (AI Thinker)£6–8Includes OV2640 camera. Buy from Amazon or AliExpress.
FTDI USB-to-serial programmer£3–5Required for initial firmware upload. Search 'FTDI FT232RL module'.
IKEA 365+ 180ml glass jar with lid£2New or reused. Check eBay, Vinted, or charity shops.
3.7V LiPo battery (1000–2000mAh)£5–8Slim profile fits inside the 180ml jar. Search '3.7V LiPo flat battery'. 1000mAh gives ~2hrs recording.
TP4056 LiPo charging module£1–2For safely recharging the LiPo via USB. Includes overcharge protection.
3.3V–5V boost converter (MT3608)£1–2Steps up LiPo voltage (3.7V) to 5V for the ESP32-CAM.
Two colours of thin rope or paracord (1m each)£2–3One colour per side of lid — indicates camera direction.
Drill + 4mm drill bitFor rope holes in the lid flaps. Borrow if possible.
Jumper wires (female-to-female)£2For connecting FTDI to ESP32-CAM for programming.

Wiring & setup

The ESP32-CAM needs to be programmed once via an FTDI USB-to-serial adapter before use. After programming, it runs independently from a USB power bank with no computer required.

01

Connect FTDI to ESP32-CAM

FTDI AdapterGNDVCC (5V)TXRXESP32-CAMGND5VU0RU0TIO0 → GND (programming mode only)

Wire the FTDI adapter to the ESP32-CAM using female-to-female jumper wires: GND→GND, VCC (5V)→5V, TX→U0R, RX→U0T. To enter programming mode, also connect the IO0 pin to GND. Remove this wire after programming.

02

Upload the firmware

Download and install the Arduino IDE (free, arduino.cc). In Preferences, add this URL to Additional Boards Manager URLs:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

Go to Tools → Board → Boards Manager, search "esp32" and install the Espressif package. Then select AI Thinker ESP32-CAM as your board. Open File → Examples → ESP32 → Camera → CameraWebServer. Enter your Wi-Fi name and password in the sketch, select the right COM port, and click Upload. Once uploaded, remove the IO0–GND wire and press Reset.

03

Find the camera's IP address

Open the Serial Monitor (Tools → Serial Monitor, 115200 baud). After reset, the ESP32-CAM will print its IP address. Open that address in a browser on the same Wi-Fi network. You should see a live video stream. Note the IP — you will use this to view footage in the field via a mobile hotspot.

Assembly

04

Prepare the rope system

Blue ropeOrange ropeCamera faces down

The rope system tells you which direction the camera is pointing without opening the jar. Drill one 4mm hole in each of the two opposing lid flaps. Thread a short length of rope through each — use two clearly different colours (e.g. blue and orange). Tie a knot on the inside to secure. Always note which colour corresponds to which side before deploying. This is how you know where the camera is looking. Collect all plastic swarf on a sheet of paper immediately after drilling and dispose of in general waste.

05

Mount the ESP32-CAM

Place a small piece of foam or adhesive velcro on the inside base of the jar. Press the ESP32-CAM onto it with the camera lens facing the base glass. The lens should be centred and as close to the glass as possible without touching. Route the USB cable through the jar opening — the cable exits under the lid, not through it.

06

Seal the jar

The Lite version requires no drilled cable hole and no silicone sealant. The USB cable simply runs under the edge of the lid when closed — the jar's rubber seal provides enough compression to make it water-resistant at shallow depths (up to 0.5m). Press the lid down firmly. The rope handles sit outside the jar and can be used to position and retrieve it.

07

Wire and install the LiPo battery

LiPo 3.7V1000–2000mAhTP4056Charger /ProtectionMT36083.7V → 5VESP32-CAM5V inUSB charging port

Wire the LiPo battery to the TP4056 charging module (B+ and B− terminals). The TP4056 output connects to the MT3608 boost converter input. The boost converter output (set to 5V) connects to the ESP32-CAM's 5V and GND pins. The TP4056's USB port is used to recharge between deployments. A 1000mAh flat LiPo fits comfortably inside the 180ml jar alongside the ESP32-CAM.

⚠ LiPo safety

Never charge a LiPo unattended or near flammable materials. Always use the TP4056 protection circuit — never connect a LiPo directly without it. Do not puncture, crush, or short-circuit LiPo cells. Dispose of swollen or damaged batteries at a household hazardous waste facility.

08

Test before deploying

Power on by connecting the LiPo. Connect your phone to the same Wi-Fi hotspot the ESP32 was configured with. Open the camera's IP address in your phone's browser to confirm the live stream. Seal the jar and submerge in a bowl of water for 30 minutes to check for leaks before field use. A 1000mAh LiPo provides approximately 1.5–2 hours of streaming. A 2000mAh battery extends this to 3–4 hours.

Key principles

Rope orientation

The two-colour rope system is essential. Always photograph or note which colour faces which direction before you place the camera. Without this you cannot be certain what your footage shows.

Shallow deployment only

The Lite version relies on the jar's rubber seal, not silicone. It is suitable for depths up to 0.5m. For deeper water, use the XL version with a fully sealed lid.

LiPo care

Always recharge via the TP4056 module — never directly. Store LiPo batteries at partial charge (around 50%) if not using for extended periods. A swollen or damaged battery should be disposed of safely, never used.

Microplastic awareness

Even drilling two small holes creates plastic and metal particles. Use a piece of paper beneath the work area and dispose of all debris carefully. Never work near water.

Next step

Deploy your camera

Once built and tested, learn how to place your camera responsibly and capture useful footage.

Deploy →