# K2Aley GAR-BOT Update Manifest

Copyright (c) 2026 K2Aley. GAR-BOT. All rights reserved.

## Direct Files

- `README.md`
- `COPYRIGHT.md`
- `GAR-BOT_USER_MANUAL.html`
- `GAR-BOT_CONNECTIONS.md`
- `GAR-BOT_BOM.md`
- `GAR-BOT_TWO_CLAW_LAYOUT.md`
- `GAR-BOT_PRINT_QUEUE.md`
- `GAR-BOT_WATER_RESISTANCE.md`
- `GAR-BOT_RP5_AI_AGENT.md`
- `GAR-BOT_REMOTE_TRANSMITTER.md`
- `rp5_ai_agent/README.md`
- `remote_control/README.md`
- `docs/PROJECT_INTEGRITY_REPORT.md`
- `docs/K2ALEY_DNS_RECOVERY.md`
- `scripts/verify_k2aley_dns.ps1`

## Included Content

- Rebuilt connection map for power, four IBT-2 drivers, Raspberry Pi 5 USB,
  touchscreen, two claw boards, and radio PCB.
- Two-claw layout for `Claw Left 1` and `Claw Right 2`.
- Water-resistance rules: no exposed electronics in wet use.
- 3D print queue for sealed electronics, motor shields, touchscreen, claws,
  frame rails, crossmembers, tray/deck plates, cable clips, and K2Aley GAR-BOT
  badges.
- Starter STL exports generated in `3d_print_parts/stl_exports/`.
- Raspberry Pi 5 local AI agent with safe default config, HTTP API, motor/claw
  command handlers, optional local Ollama classifier, install script, and
  systemd unit.
- Remote control transmitter updated to Raspberry Pi Zero 2 W + Pico Voice.
- Arduino Pro Mini removed from transmitter design.
- Old Arduino Pro Mini joystick transmitter board documented as
  reference-only.
- RP5 USB plan updated for four ports: two claw boards, touchscreen, and
  LoRa/radio or hub. Pico Voice is on the 40-pin header. FT232RL USB-TTL
  removed from active RP5 USB plan.
- Project integrity report added after removing stale nested duplicate folder
  and verifying active package contents.
- `frame_claw_bridge` updated to place both claw shoulder pivots on forward
  front-shoulder pads.
- Added `3d_print_parts/parts_breakdown.html`, a labeled exploded illustration
  of frame, front shoulder claws, electronics bay, touchscreen, motors, and
  remote parts.
- Refined 3D printable parts with raised ribs, collars, latch pads, cable-gland
  frames, gripper texture, waterproof-style external louvers, and reinforcement
  details.
- STL preview now renders each part photo through one shared renderer and waits
  for image decode, preventing blank cards from browser WebGL context limits.
- Added a photo user manual with assembly instructions, wiring checks,
  water-resistant closing steps, remote transmitter setup, and a full printed
  part photo gallery.
- Repaired STL geometry integrity issues: fused raised details into parent
  bodies, removed floating interior pegs, moved ribs off open slots, corrected
  tangent motor bores, and added `3d_print_parts/STL_MESH_INTEGRITY_AUDIT.md`.
- Added K2Aley.com DNS recovery guide and one-command DNS verifier for Mac
  mini hosting after the root `A` and `www` records were removed.

## 2026-06-09 Live Integration Verification

- RP5 account corrected to `gar-bot`.
- RP5 local AI agent installed under `/home/gar-bot/rp5_ai_agent`.
- RP5 user service `gar-bot-agent.service` verified active and enabled.
- RP5 linger verified with `Linger=yes`.
- RP5 HTTP API verified at `192.168.0.226:8080`.
- RP Zero 2 W transmitter verified at `192.168.0.161`.
- Pico Voice `wm8960-soundcard` playback and capture verified.
- Transmitter command mode changed from UDP test mode to HTTP LAN mode.
- End-to-end transmitter-to-RP5 command path verified in safe mode.
- Python source compile check passed.
- Generated Python `__pycache__` folders removed before zip rebuild.

## 2026-06-13 Integrity Refresh

- Refreshed `docs/PROJECT_INTEGRITY_REPORT.md` with current local package PASS
  results and current live/DNS pending status.
- Rechecked JSON config parsing and Python compile with Python 3.12.1.
- Removed generated Python `__pycache__` folders before packaging.
- Removed transmitter runtime `config/picovoice.env`; only
  `config/picovoice.env.example` is shipped.
- Verified 38 STL files remain covered by the mesh integrity audit.
- Rechecked K2Aley.com DNS for the Mac mini/home-hosting target; authoritative
  DNS currently returns `50.6.154.218` instead of `70.160.138.181`.
