Getting Started
Setting up your organization
- Create your account. Go to admin.displaycache.com and sign in with Google or Microsoft. A new organization is created automatically.
- Name your organization. Open Settings → Organization and enter your church, school, or business name.
- Select your organization type. Choose Church, School, Nursing Home, or Business. This tailors default integrations and suggested content sources.
- Invite your team. Go to Settings → Users and send invites. You can assign Admin, Editor, or Viewer roles. Editors can manage content and playlists. Viewers can see everything but can't change anything.
Adding your first device
- Install the app. Download DisplayCache from the App Store (Apple TV, iPad, Mac), the Play Store (Android TV, Android tablets), or flash the pre-built image to an SD card (Raspberry Pi setup guide) or USB drive (Intel NUC setup guide).
- Power on and read the code. A 6-character pairing code appears on screen. This code is unique to the device and refreshes every few minutes.
- Pair in the web admin. Go to Devices → Add Device, enter the 6-character code, and click Pair.
- Name and assign. Give the device a friendly name (e.g., "Lobby TV Left"), assign it to a location and device group, then assign a playlist or schedule.
The device will immediately begin downloading its assigned content. Within a few minutes it will start playing.
Uploading content
Go to Content in the sidebar. You can add content in several ways:
- Drag and drop images or videos directly onto the page.
- Click Upload to browse your computer for files.
- Paste a URL — YouTube, Vimeo, or any direct image/video URL.
- Upload a PDF — each page is automatically converted to an image slide.
- Upload a PowerPoint file — slides are converted automatically via the transcode service.
- Import from Canva — connect your Canva account and import designs directly. You can import an entire multi-page design or pick individual pages.
Supported image formats: JPEG, PNG, WebP, GIF, SVG, HEIF. Supported video formats: MP4 (H.264), MOV, WebM. Maximum file size depends on your plan's storage quota.
Creating your first playlist
Go to Playlists → Create Playlist. You have two playlist types:
- Manual playlist — you pick specific content items and arrange them in order. Best for curated slideshows like lobby announcements.
- Dynamic playlist — automatically includes content matching tags or folders you choose. New content with matching tags is added automatically.
- Choose a name (e.g., "Lobby Announcements").
- Add content items by clicking Add Content and selecting from your library.
- Drag and drop to reorder slides.
- Set display duration for each slide (default is 10 seconds).
- Optionally set per-item schedules, location filters, or group filters on individual items.
- Click Save.
Assigning content to devices
There are two ways to get content onto a device:
- Direct assignment. Go to a device's settings and assign a playlist directly. The device plays that playlist all the time.
- Schedules. Create a schedule that assigns different playlists at different times. For example, show announcements from 7 AM to 10 AM, then switch to the live stream schedule during service, then back to announcements afterward.
You can also target content by location and device group. If a playlist item has a location filter set to "Fellowship Hall," only devices assigned to that location will show it. This lets you use one playlist across many devices while each device shows only what's relevant to its room.
Going live
When you save changes to a playlist or schedule:
- A new manifest is generated. This is a versioned snapshot of what each device should display.
- Devices are notified. Apple devices receive a push notification via APNs. Android devices receive a push notification via FCM. Linux devices (Raspberry Pi, Intel NUC) receive an MQTT message. All trigger an immediate content refresh.
- Content downloads. Any new images or videos are downloaded and cached on the device.
- Playback updates. The device switches to the new playlist within seconds of receiving the notification.
If a device misses the push notification (e.g., it was powered off), it will pick up the changes on its next poll cycle, which runs every 30 minutes as a fallback.
Feature Reference
Content management
The Content section is your media library. Everything you upload, import, or link lives here.
- Folders — organize content into folders. Useful for separating sermon series, events, and departments.
- Tags — add tags to content for dynamic playlists and filtering.
- Canva import — connect your Canva account under Settings → Integrations. Browse designs and import full documents or individual pages.
- Video trimming — set start and end points on any uploaded video or YouTube/Vimeo link without re-encoding.
- PDF slide export — upload a PDF and each page becomes an individual image slide, ready for playlists.
- Feed sources — YouTube channels and Vimeo folders automatically sync new content into your library.
Playlists
- Manual playlists — hand-picked content in a specific order.
- Dynamic playlists — auto-populated from tags or folders. New matching content appears automatically.
- Per-item schedules — set start/end dates on individual items within a playlist. VBS slides can appear two weeks before the event and disappear the day after.
- Per-item location/group filters — restrict individual items to specific locations or device groups. One playlist can serve many rooms, each seeing only relevant content.
- Duplicate content entries — the same content item can appear multiple times in a playlist, each with its own independent schedule and filters.
- Drag-and-drop reordering — rearrange items by dragging.
Playback settings:
- Display seconds — how long each slide shows (default 10s).
- Transitions — fade, slide, or none between items.
- Auto-play — starts playing immediately when assigned.
- Loop — restart from the beginning when the playlist ends.
- Shuffle — randomize playback order.
Interactive scroll override: auto-scrolling content (event lists, long announcements, directories) can be paused and scrolled manually with a remote or touch. The content resumes auto-scrolling after a few seconds of inactivity.
Overlay widgets can be layered on top of playlist content (clock, weather, text, TouchPoint data). Configure these under Smart Displays.
Schedules
Schedules let you assign different content to a device at different times.
- Time-based rules — define start time, end time, and which playlist to show.
- Repeat rules — daily, specific days of the week, or one-time. For example: "Show the worship playlist every Sunday from 9 AM to 12 PM."
- Display modes:
- Slideshow — standard playlist playback with auto-advance.
- Kiosk — full-screen web URL with touch interaction (iPad).
- Browse — lets the user manually navigate content (classroom mode).
- Stream hub — configure one or more stream sources (BoxCast, HLS, YouTube Live) as a schedule entry. When a broadcast goes live, the device switches to the stream automatically. A countdown timer shows days, hours, and minutes until the next broadcast. Configure show-before and show-after windows to switch screens early and linger after the stream ends. When it's over, the device returns to its regular schedule.
Devices
Supported platforms:
| Platform | App Type | Notes |
|---|---|---|
| Apple TV (4K, HD) | Native tvOS app | App Store install, Siri Remote control |
| iPad / iPhone | Native iOS app | Touch interaction, classroom browse mode |
| Mac | Native macOS app | Broadcast control, dual-screen output |
| Android TV | Native Android app | Play Store install, kiosk mode, remote control |
| Android Tablet | Native Android app | Touch interaction, classroom browse mode, kiosk mode |
| Raspberry Pi | Chromium kiosk + agent | Flash SD card, HDMI-CEC TV control — Setup guide |
| Intel NUC | Chromium kiosk + agent | 4K, hardware video decode, experimental — Setup guide |
| Fire TV Stick | Native Fire OS app | $30 deployment, ExoPlayer video, remote management — Setup guide |
| TRMNL E-Ink | API-driven | Always-on e-ink, room schedules & static info — available now |
Device features:
- Pairing — 6-character code displayed on screen, entered in web admin.
- Playing column — see at a glance which schedule and playlist each device is currently running from the device list.
- Locations — assign a device to a physical location (e.g., "Fellowship Hall"). Content can be filtered by location.
- Device groups — group devices for bulk actions and content targeting (e.g., "Lobby Screens", "Classrooms").
- Screen scheduling — set on/off times for each device. The screen powers on and off automatically on a weekly schedule.
- Kiosk mode — lock Android and iPad devices into DisplayCache so users cannot exit the app or access device settings.
- CEC TV power control — Raspberry Pi and Intel NUC can turn TVs on/off on a schedule via HDMI-CEC.
- Remote diagnostics — view device status, IP address, uptime, network info, and app version from the web admin.
- Screenshots — request a live screenshot from any device to verify what's on screen.
- Variables — set key-value pairs on a device that can be referenced in content templates.
Integrations
Configure integrations under Settings → Integrations.
- BoxCast — live streaming auto-switch. When a broadcast goes live, assigned screens switch to the stream. When it ends, they switch back. Configure a BoxCast channel in your schedule's stream hub.
- TouchPoint ChMS — display birthdays with member photos, milestone celebrations (baptisms, join dates, wedding anniversaries), volunteer schedules with fill status, custom script data, and any data TouchPoint can query. Choose from cards, tables, bulletins, grids, timelines, summary, compact roster, or full roster formats. Configurable size (small, medium, large) and layout (single, two-column, three-column). Data refreshes automatically.
- eSPACE — room schedules and event listings pulled from your eSPACE calendar. Two display formats: Event List (scrolling list of upcoming events) and Room Schedule (mount outside a room to show availability, current event, and upcoming events). Filter by specific rooms, set a time window and max event count. Configurable size and layout options for room schedule format.
- Planning Center — order of service rendered natively with multi-column layouts, song arrangements, durations, and stage plots with team member photos and positions. Displays on backstage/green room screens. Refreshes every few minutes.
- Google Drive — sync a Google Drive folder to your content library. Images and files are downloaded automatically. Sort by name or date, up to 200 files per folder, with a 10 MB per-file limit. Syncs on demand with a 15-minute cooldown between syncs. HEIC photos are automatically converted to JPEG.
- Canva — import designs directly from your Canva account. Import full multi-page designs or individual pages. Per-user OAuth connection. Admins can enable/disable Canva import for the organization.
- Weather widget — live weather data for your location, displayed as a Smart Display overlay.
Need step-by-step setup instructions? See our Integration Guides for detailed how-to walkthroughs for each integration.
Smart Displays
Smart Displays are full-screen layouts with overlay widgets layered on top of a background. Each widget has configurable position and size, so you can place a clock in the corner and weather data along the bottom, or arrange them however fits your screen.
Overlay widgets:
- Clock — digital or analog, with timezone support. Configurable position and size.
- Weather — current conditions and forecast for your location. Configurable position and size.
- TouchPoint data — birthdays, custom queries, member info cards.
- Text — static or scrolling text overlays for announcements.
Background options:
- Solid color or gradient.
- Image — any uploaded image as a static background.
- Playlist — a full playlist plays behind the widgets, combining slideshows with live data overlays.
User management
Manage users under Settings → Users.
- Roles:
- Admin — full access. Can manage billing, users, integrations, and all content.
- Editor — can create and edit content, playlists, and schedules. Cannot manage billing or users.
- Viewer — read-only access. Can see everything but cannot make changes.
- Folder-level permissions — restrict editors to specific content folders. The children's ministry director only sees the children's content folder. Edit permissions inline from the content page without navigating to settings.
- Playlist-level permissions — limit which playlists a user can edit. Manage access inline from the playlist page.
- Multi-org support — users can belong to multiple organizations and switch between them.
- Invites — send email invitations. New users sign in with Google or Microsoft and are automatically added to your organization with the assigned role.
Troubleshooting
Device shows offline
A device shows as "offline" in the web admin when it hasn't sent a heartbeat in the last 35 minutes.
- Check power and network. Make sure the device is powered on and connected to your network (Wi-Fi or ethernet).
- Check your network firewall. The device needs outbound HTTPS (port 443) access to
api.displaycache.com. - Force refresh. On Apple devices, close and reopen the app. On Android devices, close and reopen the app or clear the app cache. On Raspberry Pi / NUC, the agent restarts automatically, but you can power-cycle the device if needed.
- Wait up to 35 minutes. The heartbeat threshold is 35 minutes. A device may appear offline briefly during normal operation if it missed a single heartbeat cycle.
Content not updating on device
When you save a playlist or schedule, devices are notified immediately via push notification (APNs for Apple, FCM for Android, MQTT for Linux). If a device isn't updating:
- Check the manifest version. Go to the device's detail page in the web admin and compare the "current manifest" version with the "latest manifest" version. If they differ, the device hasn't picked up the latest changes yet.
- Check network connectivity. The device needs internet access to receive push notifications and download new content.
- Wait for the fallback poll. If push notifications aren't getting through, devices poll for updates every 30 minutes as a fallback. Content should update within that window.
- Force refresh. On Apple devices, close and reopen the app. On Android devices, close and reopen the app. On Linux devices, restart the agent service or power-cycle the device.
Video won't play
Uploaded videos: DisplayCache supports MP4 (H.264), MOV, and WebM. If your video is in a different format, convert it to MP4 (H.264) before uploading. Most video editors and online converters can do this.
YouTube and Vimeo: Videos are resolved via yt-dlp on the server. If a video won't play:
- Make sure the video is public or unlisted (not private).
- Check that the URL is correct and the video still exists.
- Age-restricted or region-locked videos may not resolve.
Live streams vs. VOD: Live streams (BoxCast, YouTube Live) require an active internet connection. They cannot be cached. Recorded videos (VOD) from YouTube and Vimeo also stream in real time and need internet.
HLS support: Apple devices natively support HLS streams. Linux devices support HLS via the Chromium player. Paste an HLS (.m3u8) URL as a content item.
Storage quota exceeded
Each plan has a storage limit for uploaded content:
| Plan | Devices | Storage | Price |
|---|---|---|---|
| Starter | 4 | 5 GB | $10/mo |
| Standard | 10 | 15 GB | $20/mo |
| Multi-site | 25 | 50 GB | $40/mo |
| Enterprise | Unlimited | 100 GB | $100/mo |
To check your usage, go to Settings → Billing. Your current storage usage is displayed alongside your plan limits.
To free up space, delete content you no longer need from the Content library. To increase your limit, upgrade your plan from the Billing page.
Slides not showing at scheduled time
- Check timezone settings. Schedules use the timezone set on your organization. Go to Settings → Organization and verify the timezone is correct.
- Per-item vs. playlist-level schedule. A per-item schedule controls when an individual slide appears within a playlist. A playlist-level schedule controls when the entire playlist is assigned to a device. Make sure you're setting the right one.
- Location and group filters. If a slide has a location or group filter, it will only appear on devices matching that filter. Check the item's filter settings and the device's assigned location/group.
- Date range. Verify the start and end dates on the content item or schedule entry. An item with an end date in the past won't show.
Device cache issues
DisplayCache uses an offline-first architecture. Content is downloaded and cached on each device so it can play without internet.
- Cache budget. Each device has a configurable cache budget that limits how much storage is used for cached content. When the cache is full, the oldest unused content is evicted.
- Disk space. On Raspberry Pi, check that the SD card has enough free space. On Apple TV, the OS manages storage and may evict cached data under storage pressure. On iPad/Mac/Android, ensure sufficient free disk space.
- What gets cached: uploaded images, videos, Canva imports, PDF slides, and integration data. YouTube/Vimeo and live streams are not cached — they stream in real time.
- Forcing a re-cache. Delete the app data (Apple), clear the app cache (Android), or re-flash the SD card (Pi) to start fresh. The device will re-download all assigned content on next sync.
PDF/PowerPoint not converting
When you upload a PDF or PowerPoint file, it's processed by the transcode service on the server. Each page is converted to an image slide.
- Check processing status. After uploading, the content item shows a "Processing" badge. This typically takes 10–30 seconds. If it stays in "Processing" for more than a few minutes, the conversion may have failed.
- Supported formats. PDF (.pdf), PowerPoint (.pptx, .ppt). Other presentation formats (Keynote, Google Slides) should be exported to PDF first.
- File size. Very large files (100+ pages or files over 100 MB) may time out during conversion. Try splitting into smaller files.
- Corrupted files. If a file opens correctly on your computer but won't convert, try re-exporting it as a fresh PDF and uploading again.
Canva import not working
- Check your Canva connection. Each user connects their own Canva account under Settings → Integrations → Canva. The connection is per-user, not organization-wide.
- Organization-level setting. An admin must enable Canva import for the organization under Settings → Integrations. If it's disabled, individual users won't see the Canva import option.
- Re-authorize. If imports stopped working, your Canva OAuth token may have expired. Disconnect and reconnect your Canva account in Settings.
- Design permissions. You can only import designs you own or that have been shared with you in Canva. Team designs may require Canva for Teams access.
Still need help?
Email us at hello@displaycache.com and we'll get back to you within one business day.