Skip to content

Latest commit

 

History

History
174 lines (110 loc) · 7.39 KB

File metadata and controls

174 lines (110 loc) · 7.39 KB

ESP32-P4 AllSky Display

Transform your ESP32-P4 display into an all-sky camera viewer with multi-image cycling, hardware acceleration, and seamless Home Assistant integration.

Display in Action


🎥 Demo Video

Watch the demo video on YouTube

▶️ Click here to watch on YouTube


� Build Status & Badges

Arduino Compilation Release Flash Usage RAM Usage

Ask DeepWiki


�📖 Documentation

Complete user and developer documentation organized by user journey:

Getting Started

Using Your Display

Developer Documentation


✨ Key Features

  • Multi-Image Display - Cycle through up to 10 image sources automatically or via API triggers
  • Flexible Update Modes - Automatic cycling or API-triggered refresh for external control (v-snd-0.62+)
  • Runtime Display Selection - Switch between 3.4" and 4.0" displays via Web UI without recompilation (v-snd-0.61+)
  • Enhanced Brightness Control - Three modes: Manual, MQTT Auto, or Home Assistant with clear UI indication (v-snd-0.61+)
  • Hardware Accelerated - ESP32-P4 PPA for fast scaling and rotation (385-507ms render time)
  • High Resolution - Up to 1448×1448 pixel images with 2× scaling capability
  • Per-Image Transforms - Individual scale, offset, and rotation settings for each image
  • Touch Controls - Tap to navigate, double-tap to toggle modes
  • Home Assistant Ready - Auto-discovery via MQTT with full control
  • Web Configuration - Modern, responsive UI for all settings
  • OTA Updates - Wireless firmware updates with automatic rollback
  • Easy Setup - Captive portal WiFi configuration with QR code

🚀 Quick Start

1. Hardware Required

Requirements: ESP32-P4 with WiFi 6, DSI display, GT911 touch, PSRAM required

💡 Both displays supported! Select display type in Web UI System settings after flashing (v-snd-0.61+)

📖 Full Details: Hardware Requirements Guide

2. Flash Firmware

Download Latest Release:

  • Go to Releases
  • Download ESP32-P4-Allsky-Display.bin

Flash using esptool:

esptool.py --chip esp32p4 --port COM3 --baud 921600 write_flash 0x0 ESP32-P4-Allsky-Display.bin

⚠️ Pre-compiled binaries are for 3.4" display only.

💡 NEW (v-snd-0.61+): Display type can now be changed via Web UI without recompilation! Flash the 3.4" binary, then select 4.0" display in System settings if needed.

📖 Full Instructions: Installation Guide

3. WiFi Setup

On first boot, the device creates a WiFi network:

  1. Connect to: AllSky-Display-Setup (no password)
  2. Scan QR Code on display or open http://192.168.4.1
  3. Select network, enter password, click Connect
  4. Device reboots and shows IP address

WiFi Setup

📖 Full Details: Installation Guide - First Boot

4. Configure via Web Interface

Access http://[device-ip]:8080/ to configure:

  • Image sources (up to 10 URLs)
  • MQTT/Home Assistant settings
  • Display transforms and brightness
  • Cycle intervals

Web Configuration

📖 Full Guide: Configuration Guide


🏠 Home Assistant Integration

Home Assistant

Auto-Discovery: Enable MQTT in web interface, device appears automatically

Control: Brightness, cycling, image selection, transforms, system actions

📖 Full Integration Guide: Features - Home Assistant


📷 Optional 3D Printed Case

3D Printed Case

Download: Printables.com - Desk Stand


🤝 Support & Contributing

Contributions Welcome! Fork → Create feature branch → Test → Submit PR


📄 License

Open source - see LICENSE file for details


🗺️ Complete Documentation Map

User Documentation

  1. Hardware Requirements - Displays, ESP32-P4, libraries, wiring
  2. Installation Guide - Flash firmware, compile from source, WiFi setup
  3. Configuration Guide - Web UI, MQTT, images, serial commands
  4. Features & Usage - Controls, health monitoring, Home Assistant
  5. OTA Updates - Wireless updates, A/B partitions, safety
  6. Troubleshooting - Common issues, crash diagnosis, diagnostics

Developer Documentation


Made with ❤️ for the AllSky community