generated from CubeCraft-Creations/Tracehound
feat: add camera node case v4 status panel CAD
This commit is contained in:
+132
-66
@@ -1,112 +1,178 @@
|
||||
# RemoteRig — Camera Node Hardware Design
|
||||
|
||||
> **Version:** 0.2.0 | **Status:** Draft
|
||||
> **Target:** GoPro Hero 3 Black/Silver + ESP8266 + ESP32 + USB power bank
|
||||
> **Version:** 0.3.0 | **Status:** v4 CAD prototype ready for measurement/print validation
|
||||
> **Target:** GoPro Hero 3 Black/Silver + ESP32-C3 Super Mini + ESP-01S + USB power bank
|
||||
|
||||
## Overview
|
||||
|
||||
Each camera node is two ESP boards in a small case that clips to the tripod/stand. The case **does not attach to the camera** — only to the stand. Powered by a standard USB power bank.
|
||||
Each camera node is two ESP boards in a small stand-mounted case. The case **does not attach to the camera**; it straps to a tripod/lighting stand with reusable cloth zip ties / Velcro straps. Powered by a standard USB power bank.
|
||||
|
||||
```
|
||||
┌─────────────────┐
|
||||
│ USB Power Bank │── USB ──→ GoPro (power only)
|
||||
│ (off-the-shelf)│── USB ──→ ESP32 + ESP8266 (shared)
|
||||
│ (off-the-shelf)│── USB ──→ Camera Node Case
|
||||
└─────────────────┘
|
||||
│
|
||||
┌────────┴────────┐
|
||||
│ Tripod Case │ ← clips to stand leg
|
||||
│ ┌────────────┐ │
|
||||
│ │ ESP8266 │ │ ← Wi-Fi → GoPro AP (10.5.5.1)
|
||||
│ │ (camera) │ │
|
||||
│ ├────────────┤ │ ← UART between boards
|
||||
│ │ ESP32 │ │ ← Wi-Fi → Travel Router
|
||||
│ │ (MQTT) │ │
|
||||
│ └────────────┘ │
|
||||
└─────────────────┘
|
||||
┌────────┴────────────────────────────┐
|
||||
│ Camera Node Case v4 │ ← Velcro/cloth straps to stand
|
||||
│ ┌──────────────────────────────┐ │
|
||||
│ │ Flush/recessed service lid │ │
|
||||
│ │ 1.3 OLED: CAM/REC/BAT/LINK │ │
|
||||
│ │ PWR LED + RGB STAT LED │ │
|
||||
│ │ Small rocker power switch │ │
|
||||
│ └──────────────────────────────┘ │
|
||||
│ ESP-01S camera bridge ↔ ESP32-C3 │
|
||||
└─────────────────────────────────────┘
|
||||
```
|
||||
|
||||
## Bill of Materials
|
||||
|
||||
| Item | Qty | Cost | Notes |
|
||||
|------|-----|------|-------|
|
||||
| ESP32 Dev Board | 1 | ~$5 | MQTT bridge — talks to hub |
|
||||
| ESP8266 D1 Mini | 1 | ~$3 | Camera bridge — talks to GoPro |
|
||||
| USB power bank (5000mAh+) | 1 | ~$10 | Powers both boards + GoPro |
|
||||
| Micro-USB cable (short) | 2 | ~$2 | Power bank → boards + GoPro |
|
||||
| Jumper wires F-F | 3 | ~$0.25 | UART TX/RX/GND between boards |
|
||||
| PETG filament | ~25g | ~$0.50 | 3D printed case |
|
||||
| Velcro strap (small) | 1 | ~$0.25 | Secure power bank to stand |
|
||||
| ESP32-C3 Super Mini | 1 | ~$4–$6 | MQTT / hub-side bridge; known board envelope 22.5 × 18 mm |
|
||||
| ESP-01S / ESP8266 module | 1 | ~$2–$3 | Camera-side GoPro Wi-Fi bridge; known envelope ~24.7 × 14.3 × 12 mm |
|
||||
| 1.3-inch OLED/status screen | 1 | ~$4–$8 | Prototype CAD assumes ~31 × 16 mm visible window / ~35 × 19 mm panel clearance; confirm exact module |
|
||||
| 3 mm power LED | 1 | <$1 | Separate always-power/5V indicator |
|
||||
| 3 mm RGB status LED | 1 | <$1 | Replaces separate red/green status LEDs; firmware can map node states to color |
|
||||
| Small rocker switch | 1 | ~$1–$3 | On/off switch; prototype CAD assumes 13 × 19 mm snap-in opening |
|
||||
| USB power bank (5000 mAh+) | 1 | ~$10 | Powers camera node and GoPro |
|
||||
| Short USB cables / wiring | as needed | ~$2–$5 | Power bank → node + GoPro; internal power/signal wiring |
|
||||
| M2 or small self-tapping screws | 4 | <$1 | Front service lid screws; pilot holes are parametric |
|
||||
| PETG filament | ~35–50 g | ~$1 | 3D printed case body + lid |
|
||||
| Reusable cloth zip ties / Velcro straps | 2 | ~$1 | Primary stand mount through rear strap channels |
|
||||
|
||||
**Total per node:** ~$21 (+ GoPro already owned)
|
||||
**Total per node:** roughly ~$25–$35 plus GoPro and power bank, depending on display/switch choice.
|
||||
|
||||
## 3D Printed Case
|
||||
|
||||
**Current source:** `hardware/case/tripod-case-v3.scad`
|
||||
**Current source:** `hardware/case/camera-node-case-v4.scad`
|
||||
**Pipeline:** `hardware/DESIGN_PIPELINE.md`
|
||||
|
||||
Four exported prototype files:
|
||||
1. **Case body** — holds both boards stacked, cable ports, rear dovetail-style receiver
|
||||
2. **Case lid** — screw-on cover with ventilation
|
||||
3. **Tripod clamp** — separate screw-tightened C-clamp sized around a 35mm stand/pole
|
||||
4. **Full preview** — combined visualization STL only, not intended as the print job
|
||||
The v4 case replaces the v3 clamp/dovetail concept with a simpler strap-mounted field enclosure:
|
||||
|
||||
1. **Case body** — shell sized around ESP32-C3 Super Mini + ESP-01S with service/wiring clearance.
|
||||
2. **Flush/recessed front service lid** — screw-on front status panel with locating lip.
|
||||
3. **Front panel controls/indicators**:
|
||||
- 1.3-inch OLED/status screen window.
|
||||
- 3 mm **PWR** LED.
|
||||
- single 3 mm **RGB STAT** LED for state-dependent colors.
|
||||
- small rectangular rocker switch cutout.
|
||||
- lower vent/style slots.
|
||||
4. **Rear strap channels** — two raised horizontal cloth zip-tie / Velcro strap paths to reduce rotation on a tripod/stand.
|
||||
5. **Bottom cable exit** — cable/strain-relief notch for USB/power wiring.
|
||||
|
||||
### Export wrappers
|
||||
|
||||
Simple per-part OpenSCAD wrappers are included:
|
||||
|
||||
- `hardware/case/camera-node-case-v4-body.scad`
|
||||
- `hardware/case/camera-node-case-v4-lid.scad`
|
||||
- `hardware/case/camera-node-case-v4-preview.scad`
|
||||
|
||||
Example CLI exports, if OpenSCAD is installed:
|
||||
|
||||
```bash
|
||||
openscad -o hardware/case/camera-node-case-v4-body.stl hardware/case/camera-node-case-v4-body.scad
|
||||
openscad -o hardware/case/camera-node-case-v4-lid.stl hardware/case/camera-node-case-v4-lid.scad
|
||||
openscad -o hardware/case/camera-node-case-v4-preview.stl hardware/case/camera-node-case-v4-preview.scad
|
||||
```
|
||||
|
||||
Or render the main file directly:
|
||||
|
||||
```bash
|
||||
openscad -D 'part="body"' -o hardware/case/camera-node-case-v4-body.stl hardware/case/camera-node-case-v4.scad
|
||||
openscad -D 'part="lid"' -o hardware/case/camera-node-case-v4-lid.stl hardware/case/camera-node-case-v4.scad
|
||||
openscad -D 'part="preview"' -o hardware/case/camera-node-case-v4-preview.stl hardware/case/camera-node-case-v4.scad
|
||||
```
|
||||
|
||||
### Print Settings
|
||||
- **Material:** PETG preferred for heat/outdoor use and clamp flex
|
||||
- **Layer:** 0.2mm | **Infill:** 20% gyroid minimum; 35%+ recommended for clamp
|
||||
- **Supports:** Likely yes for clamp ears / dovetail overhangs depending on slicer orientation
|
||||
- **Post-processing:** M3x8mm screws for lid (4x), one M3 screw + M3 nut for clamp tightening
|
||||
|
||||
- **Material:** PETG preferred for heat/outdoor use and strap-tab durability.
|
||||
- **Layer:** 0.2 mm typical.
|
||||
- **Infill:** 20% gyroid minimum; 30%+ recommended around rear strap bridges.
|
||||
- **Supports:** likely minimal/none depending on orientation; verify rear strap bridge spans and cable notch in slicer.
|
||||
- **Post-processing:** fit 4 lid screws; deburr OLED/LED/switch cutouts; soften strap-channel edges if the printed radius is too sharp for cloth ties.
|
||||
|
||||
## Expected Status Screen Content
|
||||
|
||||
Preferred 1.3-inch OLED layout/content style:
|
||||
|
||||
```text
|
||||
CAM 03 REC ●
|
||||
BAT 87% LINK OK
|
||||
00:12:34
|
||||
```
|
||||
|
||||
Suggested fields:
|
||||
|
||||
- `CAM` / node ID.
|
||||
- `REC` state with a clear recording indicator.
|
||||
- Battery percentage or supply estimate.
|
||||
- `LINK OK` / degraded / disconnected state.
|
||||
- Recording/session timer.
|
||||
|
||||
## Wiring
|
||||
|
||||
```
|
||||
```text
|
||||
USB Power Bank
|
||||
├── USB-A → Micro-USB cable → ESP32 USB port
|
||||
│ (powers ESP32, shared 5V rail)
|
||||
├── USB-A → Camera Node Case
|
||||
│ ├── rocker switch → node power rail
|
||||
│ ├── PWR LED indicator
|
||||
│ ├── ESP32-C3 Super Mini
|
||||
│ ├── ESP-01S / ESP8266
|
||||
│ ├── 1.3-inch OLED display
|
||||
│ └── RGB status LED
|
||||
│
|
||||
├── USB-A → Micro-USB cable → GoPro USB port
|
||||
│ (power only — no data)
|
||||
│
|
||||
└── (ESP8266 powered via ESP32 3.3V pin, or via shared USB)
|
||||
└── USB-A → GoPro USB port
|
||||
(power only — no data)
|
||||
|
||||
UART (inside case):
|
||||
ESP8266 TX (GPIO1) ──→ ESP32 RX (GPIO16)
|
||||
ESP8266 RX (GPIO3) ←── ESP32 TX (GPIO17)
|
||||
ESP8266 GND ─────────── ESP32 GND
|
||||
UART / control inside case:
|
||||
ESP-01S TX ──→ ESP32-C3 RX
|
||||
ESP-01S RX ←── ESP32-C3 TX
|
||||
ESP-01S GND ─── ESP32-C3 GND
|
||||
```
|
||||
|
||||
**Power note:** Both boards can be powered from a single USB cable if the ESP32's VIN/5V pin is bridged to the ESP8266's VIN. Alternatively, use a USB Y-splitter cable.
|
||||
**Power note:** exact wiring depends on the regulator/power board used. Confirm OLED voltage, LED current limiting, and whether the rocker switches USB 5 V input or a regulated node rail.
|
||||
|
||||
## Wi-Fi Topology
|
||||
|
||||
```
|
||||
GoPro Hero 3 ──(AP @ 10.5.5.1)──→ ESP8266 (camera bridge)
|
||||
│
|
||||
UART │ (inside case)
|
||||
│
|
||||
Travel Router ──(AP)─────────────────→ ESP32 (MQTT bridge)
|
||||
(10.60.1.1) │
|
||||
│
|
||||
MQTT │
|
||||
▼
|
||||
```text
|
||||
GoPro Hero 3 ──(AP @ 10.5.5.1)──→ ESP-01S / ESP8266 camera bridge
|
||||
│
|
||||
UART │ (inside case)
|
||||
│
|
||||
Travel Router ──(AP)────────────────────→ ESP32-C3 MQTT bridge
|
||||
(10.60.1.1) │
|
||||
│
|
||||
MQTT │
|
||||
▼
|
||||
Pi Hub (10.60.1.56)
|
||||
```
|
||||
|
||||
The ESP8266 and GoPro talk over Wi-Fi — **no data cable between them**. The only cable to the GoPro is USB power from the battery pack.
|
||||
The ESP8266/ESP-01S and GoPro talk over Wi-Fi. The only cable to the GoPro is USB power from the battery pack.
|
||||
|
||||
## Field Setup
|
||||
|
||||
1. **Mount GoPro** on tripod/stand
|
||||
2. **Clip case** to tripod leg
|
||||
3. **Connect power bank** via USB to case + GoPro
|
||||
4. **Power on** — ESP32 auto-connects to travel router, ESP8266 auto-connects to GoPro
|
||||
5. **Monitor** from `http://10.60.1.56:8080`
|
||||
1. Mount GoPro on tripod/stand.
|
||||
2. Route two reusable cloth zip ties / Velcro straps through the rear v4 case channels.
|
||||
3. Strap the case to a tripod/stand leg; use both strap paths to resist rotation.
|
||||
4. Connect power bank to case and GoPro.
|
||||
5. Toggle rocker switch on.
|
||||
6. Verify PWR LED, RGB status LED, and OLED status: camera ID, REC state, battery, link, timer.
|
||||
7. Monitor from `http://10.60.1.56:8080`.
|
||||
|
||||
## Case Dimensions
|
||||
|
||||
| | W × D × H (mm) |
|
||||
Prototype v4 nominal CAD dimensions:
|
||||
|
||||
| Part / feature | W × D × H (mm) |
|
||||
|---|---|
|
||||
| Case body external | ~56.8 × 38.2 × 19.0 |
|
||||
| Lid external | ~56.8 × 32.8 × 4.0 |
|
||||
| Tripod clamp | ~43.0 × 56.9 × 16.0 |
|
||||
| Clamp pole fit | Nominal 35mm; smaller poles TBD / may need inserts |
|
||||
| Total weight | TBD after prototype print |
|
||||
| Case shell external | ~68 × 42 × 32 |
|
||||
| Case with rear strap bridges | ~68 × 45.2 × 32 |
|
||||
| Front recessed lid | visible panel ~60 × 2 × 26; total with locating lip ~60 × 3 × 26 |
|
||||
| OLED visible window assumption | ~31 × 16 |
|
||||
| Rocker cutout assumption | ~13 × 19 |
|
||||
| Rear strap channels | two horizontal pass-through paths, ~48 mm usable slot width, ~4.2 mm strap-thickness clearance |
|
||||
| Board clearance targets | ESP32-C3 22.5 × 18 mm + ESP-01S 24.7 × 14.3 × 12 mm plus wiring/service clearance |
|
||||
|
||||
These dimensions are placeholders for the first CAD prototype. Measure the actual OLED module, rocker switch, LEDs, screws, USB cable bend radius, and strap width/thickness before committing to production prints.
|
||||
|
||||
Reference in New Issue
Block a user