Connect FPP
One plugin connects your FPP box to SET:IQ and REQ:IQ. Install it once, click Pull, done.
Here’s the problem the plugin solves: your FPP box lives on your home network, speaks plain HTTP, and the internet can’t reach it. A cloud website like Studio IQ can’t talk to it — browsers forbid it. So instead of us reaching in, the plugin reaches out. It runs on the FPP box itself, fetches your playlists from SET:IQ, and reports back what’s playing for REQ:IQ.
The plugin is called fpp-SETIQ, and it gives you:
- SET:IQ Pull — every night’s playlist plus the season schedule, created on the box in one click.
- REQ:IQ listener — your viewer page shows what’s playing live, and viewer requests slot into playback automatically.
- Sequence sync — the box reports its
.fseqlist back, so SET:IQ never schedules a song your box doesn’t actually have.
Before you start
- FPP 8.0 or newer (we test against 9.x).
- Internet access from the FPP box — it needs to reach
lightsofelmridge.com. - Nothing to build or compile. It’s plug and play. Mostly plug.
Step 1: Install the plugin
The plugin lives in its own GitHub repository (github.com/diaquas/fpp-SETIQ). You don’t need to download anything from there by hand — FPP’s Plugin Manager installs straight from the repo:
- 1
Open FPP's Plugin Manager
In the FPP web UI, go to Content Setup → Plugin Manager. - 2
Find SET:IQ in the plugin list
Look for SET:IQ + REQ:IQ by Lights of Elm Ridge and click Install.Don’t see it in the list? Paste this manifest URL into the Plugin Manager’s install-by-URL field instead:
https://raw.githubusercontent.com/diaquas/fpp-SETIQ/main/pluginInfo.json - 3
Restart fppd when prompted
FPP asks to restart its daemon after most plugin installs. Let it. One new entry appears at Content Setup → SET:IQ / REQ:IQ — a single page that tabs between Pull, Manage, and REQ:IQ.
Step 2: Pull your playlists (SET:IQ)
The plugin page is one screen with three tabs. The Pull tab is where the magic happens: paste your show key, click one button, and walk away.
- 1
Copy your show key from SET:IQ
In Studio IQ, open the FPP Hub (the orange handoff button or the FPP tab) and stay on the Automatic tab. Click Copy key. The window stays open while you copy — close it with the X or Got it when you’re done. - 2
Paste it into the plugin
On the FPP box, open Content Setup → SET:IQ / REQ:IQ (the Pull tab), paste the key, and click Pull from SET:IQ. - 3
That's it — check your playlists
Every night of your season now exists under Content Setup → Playlists, and the season schedule is written into FPP’s Scheduler. Changed your season in SET:IQ? Just Pull again — same-named playlists update cleanly.
The plugin keeps that same status front and center. After a Pull, the top of the page tells you who pulled, when, and whether your box and SET:IQ still agree.
Pulled by fpp.local today at 4:12 PM
About schedule sync
Pull writes loop-until-end Scheduler entries for your show, plus any pre-show, after-hours, and trigger entries. It only touches this show’s entries — your background-lights schedule and anything else you’ve set up stays put.
How those entries look depends on how you run the season in SET:IQ:
- Fresh every night writes one entry per show date.
- Templates write one recurring entry using FPP’s day codes (every day, weekdays, weekends, a single weekday, and more) over the date range — so an “every Wednesday” Template is one tidy entry, not one per Wednesday. Day combinations FPP has no code for fall back to per-date entries. When two Templates share a day, the more specific one is listed first so FPP gives it priority.
Here’s roughly what those entries look like in FPP’s Scheduler. The ↻ marks a recurring entry — one row that covers every matching day in your date range, not one row per date.
The two recurring rows ran for the whole season from a single entry. The Dec 24 row is a one-off date — a Fresh-every-night entry or a Template on a day FPP has no clean code for, so it lands as its own row.
Keeping the sequence list fresh
Just copied new .fseq files to the box? Click Sync sequence list only on the Pull page. SET:IQ re-checks what’s on the box and unlocks those songs on your calendar without re-importing playlists.
No internet on the box?
Step 3: Turn on viewer requests (REQ:IQ)
- 1
Make sure your show key is set
One key serves both tools. If you already did the Pull setup, you’re done with this step. - 2
Enable REQ:IQ
Open Content Setup → SET:IQ / REQ:IQ (the REQ:IQ tab) and click Enable REQ:IQ. - 3
Watch it go live
A small listener starts with fppd (about a 5-second loop). Your REQ:IQ viewer page now shows what’s playing in real time, and requests are inserted right after the current song.
Changed your mind? Disable it from the same page — the listener stops and nothing phones home.
What leaves the box (and what doesn’t)
The plugin sends exactly four things, all key-scoped, all HTTPS:
- Your show key (to prove it’s your show)
- The list of
.fseqfilenames (for the calendar lock) - The box’s hostname (for the “last pulled by” status line)
- Playback status — current song, live/offline — but only while REQ:IQ is enabled
No media, no sequence data, no credentials. Your render of “Wizards in Winter” stays home.
Troubleshooting
"Couldn't reach SET:IQ or the key is invalid (HTTP 404)"
"Couldn't reach SET:IQ … (HTTP 0)"
Playlists imported, but FPP flags "Invalid mediaName"
Song.fseq pairs with Song.mp3). Remap the media on that playlist entry in FPP. Exact media-name matching is on our roadmap.The viewer page shows offline while the show is running
How do I update the plugin?
main branch.