Fantago Support, Setup Guides and FAQ

Find answers, guides and documentation for every Fantago feature.

Search Results

Dashboard

Select a topic below to expand its details

1How do I add and configure a new hardware device?

To add a new device, you need to know its network parameters: the IP address and the communication port. It is also essential to determine if the device requires a dedicated Handler (a specific driver) or if it can be controlled via raw commands.

Before starting, check the official documentation of your hardware to identify the supported protocols and the required command syntax. In Fantago, navigate to the Dashboard, click Add Device, and fill in these details.

TCPUDPHTTPOSC
💡Example: if you are controlling a video projector via PJLink, enter its IP, port 4352, and select the appropriate protocol.
2How do I associate a Device Handler with a specific device?

In the Edit Device section, you will find a dropdown menu to select a Handler. Fantago supports three types:

  1. Dynamic Handlers (JSON): Modular handlers created via the internal Builder — define commands and feedbacks without coding.
  2. Advanced Handlers (JS): Professional plugins (like Blackmagic ATEM or Evertz Quartz) that manage complex logic and state synchronization.
  3. Generic: Used when you only need to send simple, direct strings to a device without complex feedback logic.
💡If your device has specific needs, create a custom JSON handler in the Handlers section, or use a Generic setup for basic triggers.
3Why can't I see a specific Device Handler in the selection list?

If a handler doesn't appear when editing a device, first ensure it has been correctly created or imported in the Handlers section.

⚠️Most importantly, verify that the handler is set to Active. Inactive handlers are hidden from the selection menus to keep the interface clean and prevent accidental assignments.
4Why do I sometimes get a "Timeout" message after 5 seconds?

This happens because Fantago, by default, expects an acknowledgment or a response from the device. If the hardware is "one-way" (it receives commands but never answers) or if the network is congested, the system waits for 5 seconds before reporting a failure.

💡To fix this, open the device settings and enable the "Expect Reply" or "Do Not Wait for Response" option. Fantago will send the command and immediately consider it successful without waiting for a reply.
5What is a "Persistent Connection" and when should I use it?

A normal connection opens a "pipe" to the device, sends a command, and closes it immediately. A persistent connection keeps the "pipe" open indefinitely.

AdvantagesMuch faster response times (no handshake overhead) and the ability to receive Asynchronous Feedback — the device can notify the server when something changes without being asked.
DisadvantagesSome low-cost devices only support one connection at a time; keeping it open might block other controllers.
💡Use persistent connections for matrices (like Evertz) or switchers (ATEM) where real-time status updates are critical.
6What is the difference between "Online" and "Offline" status?

Fantago constantly monitors the heartbeat of your devices. A device is Online when the server can successfully ping it or maintain an active socket. If the device stops responding or the network cable is unplugged, the status changes to Offline.

💡This status is crucial for the System Alerts feature, which can send you an email notification as soon as a critical piece of gear disappears from the network.
7What is the purpose of the "EXECUTE" command in the Dashboard?

The Execute button lets you test commands in real-time without building a full panel or Stream Deck profile first. It's a diagnostic tool: select an action, enter parameters, and see the result immediately.

💡If the command works here but not on your Stream Deck, you'll know the issue is in the button configuration, not the communication with the hardware.
8What are Sequences and how do I use them?

Sequences are powerful macros that allow you to chain multiple commands across different devices with precise timing. Example — a "Start Show" sequence could:

  1. Switch the ATEM to Input 1
  2. Send a "Play" command to ClassX
  3. Fade up the master audio
  4. Wait 2000ms
  5. Fire a GPO trigger
✅Sequences ensure that complex operations are executed perfectly every single time with a single click.
9Can I loop a sequence infinitely? How do I stop it?

Yes, sequences can be set to Loop. This is useful for automated gallery cycles or status polling.

💡To stop a looping sequence, create a button with the Sequence Action: STOP command, or use the Stop button directly in the Sequences section of the Dashboard.
10What are Schedules?

Schedules allow you to automate any action or sequence based on time. You can set a one-time trigger (e.g., "Shut down all devices at 11 PM tonight") or recurring events (e.g., "Every Monday at 8 AM, run the Initialization Sequence").

✅This ensures your system is ready before the staff arrives.
11What is the "Advanced Cron" mode?

For power users, Fantago supports standard Cron syntax for maximum flexibility:

0 0 * * * # Every day at midnight */15 * * * * # Every 15 minutes 0 9 * * 1-5 # At 9:00 AM, Monday to Friday only
💡This allows for complex automation patterns that simple "Daily/Weekly" pickers cannot achieve.
12What is the "File Triggers" section?

This feature lets another system hand Fantago a timed running order as a plain text file. You point the trigger at a directory — a local path, a network share or an http:// URL — and Fantago looks there once a minute for a file named after the trigger and dated for today, in the form MyTrigger_25_12_2026.txt.

Each line of the file is one scheduled action, written as HH:mm:ss | Target | Action. Lines starting with # are ignored, so you can leave comments.

The Target can be the name of a device (the Action is sent to it as a command), the name of a sequence (with Start or Stop), SET_VAR (with variable_name=value) or TOGGLE_LATCHING (with a variable name):

# Evening news open 19:29:55 | ATEM_MAIN | preset_studio_a 19:30:00 | NEWS_OPEN | Start 19:30:02 | SET_VAR | on_air=1

Fantago re-reads the file every minute, so a system that keeps rewriting the day's schedule is picked up automatically; lines that have already run are never repeated. A line whose time has passed by more than five minutes is skipped, while one that has just passed still fires, so a restart mid-show does not lose the next cue. Trigger files older than 30 days are deleted for you.

💡This is how you drive Fantago from a playout automation, a traffic system or a rundown tool: whatever already knows the schedule writes the file, and Fantago executes it.
13What are "Network Triggers" and what can they do?

Network Triggers allow Fantago to listen for incoming messages from the network, making it an "API Server" for your other equipment. A third-party app can send a simple TCP or UDP message to Fantago, which will translate it into a complex command for your ATEM or any other connected device.

Server ModeFantago opens a port and waits for other devices to send "Trigger" messages.
Client ModeFantago connects to another server (like a master control system) and waits for that system to send commands.
💡Use Server mode to let a custom Python script on your PC control Fantago via simple UDP strings.
14What is the "LOG" section for?

The Log section is the "black box" of your system. Every command sent, every response received, and every system error is recorded here with a precise timestamp.

💡It is the first place you should check if a button doesn't work or if a device goes offline unexpectedly. Filter logs by device name or level (SENT, RECEIVED, ERROR) to isolate issues quickly.
15What happens if I rename a device already used in panels or Stream Deck?

Fantago features an Intelligent Renaming engine (v2.3.3+). When you rename a device, the system automatically scours the entire database and updates all references.

✅Your Virtual Panel buttons, Stream Deck actions, and even complex Feedback Rules will continue to work seamlessly — without reconfiguring a single button.
16Can I create a desktop icon to open a panel directly, without using the browser manually?

Yes. From the Panel Viewer, each panel has a "Create Desktop Shortcut" button. Clicking it generates and downloads a small launcher file tailored for your operating system — no installation required.

🖥️ WindowsA .vbs script is downloaded. Double-click it to open the panel directly in Chrome in App Mode — no browser navigation bar, just the panel — exactly like a native application. The file can be moved to the Desktop or pinned to the Taskbar.
🍎 macOSA .command shell script is downloaded. Save it in a convenient location (e.g. the Desktop), then follow the steps in the next two questions to make it executable and launch it.
💡Once launched, the panel opens in a dedicated window with no browser chrome — ideal for operator workstations where a clean, distraction-free look is required.
17The Windows shortcut (.vbs) won't open — Windows shows a security warning

Windows marks files downloaded from the internet as potentially unsafe and blocks their execution by default. This is a one-time security step — the file itself is perfectly safe.

To unblock it:

  1. Right-click the .vbs file and select Properties.
  2. At the bottom of the General tab, look for the message: "This file came from another computer and might be blocked to help protect this computer."
  3. Check the Unblock checkbox and click Apply.
  4. Click OK and double-click the shortcut again — it should now open normally.
⚠️If the Unblock option is not visible, a Windows Group Policy on your machine may be preventing VBScript execution. Contact your IT department, or simply bookmark the panel URL in Chrome and use it as a web app instead.
18The macOS shortcut doesn't open — Gatekeeper blocks it

macOS Gatekeeper blocks downloaded scripts that are not signed by a registered developer. To run the shortcut:

  1. Save the downloaded file in a convenient location (e.g. the Desktop).
  2. Open Terminal — search for it with ⌘ Space and type "Terminal".
  3. Type sh (with a space after it), then drag-and-drop the file from Finder into the Terminal window. The correct path will be filled in automatically.
  4. Press Enter to launch the panel.

After the first manual run, you can usually double-click the file directly on subsequent uses. Alternatively, right-click → Open shows a one-time Gatekeeper confirmation dialog that lets you bypass the block without using the Terminal.

💡On macOS Ventura and later, you can also go to System Settings → Privacy & Security and click "Open Anyway" after a blocked attempt.
19What is the default login password, and how do I recover it if lost?

The default credentials are:

  • Username: Admin
  • Password: password

You can change the password at any time from Settings → Security. We strongly recommend doing so before exposing Fantago on a shared or public network.

If you forget your password, two recovery methods are available:

  1. Recovery codes — when you change your password, Fantago generates a set of single-use recovery codes. Save these codes in a safe place (e.g. a password manager or printed sheet). Each code can be used once to regain access without the password.
  2. Email recovery — if an email address has been configured in Settings → Security, Fantago can send a one-time access code to that address. Enter the code on the login page to reset your password.
⚠️If you have no recovery codes and no email configured, there is no automated recovery path. In that case you will need to manually reset the database — contact support for guidance.

Settings

Select a topic below to expand its details

1How do I configure email alerts for offline devices?

In the Settings panel, navigate to the Mail Configuration section. Provide your SMTP server details: Host, Port, Username, and Password. Once configured, enable Send Alerts for specific devices.

💡If a device goes offline, Fantago will send an email to the Admin Email address. You will also be notified when the connection is restored, providing a full timeline of the incident.
2What is the "Log Retention" function?

To prevent the database from growing indefinitely, Log Retention automatically deletes logs older than a specific number of days (e.g., 30 days).

✅This keeps the system lean and fast while ensuring you always have recent history available for troubleshooting.
3What are "Listener Ports" and how should they be configured?

Fantago can listen for external commands on specific ports. You can configure separate ports for TCP, UDP, and HTTP.

💡Example: set the TCP Listener to 5000. Now any device on the network can send a command to [Server_IP]:5000 to trigger Fantago actions. Ensure these ports are not blocked by your firewall.
4Can I configure multiple users or is there only one password?

Currently, Fantago supports a single administrative user with one global password. This ensures simplicity for small to medium setups.

💡Multi-user management with different permission levels is planned for a future major release.
5What is the "Download Database Backup" function?

This creates a complete snapshot of your entire configuration: devices, handlers, panels, sequences, and Stream Deck profiles.

⚠️It is highly recommended to download a backup before making major changes or updates. This file can restore the system or migrate it to a new server in seconds.
6What happens if I click "Restart Application Server"?

This performs a Soft Reboot of the Fantago engine (the Node.js process). It does not restart the physical computer, but forces all handlers to re-initialize and all connections to be re-established.

💡It's a quick way to "refresh" the system if you notice any lag or if you've manually modified system files.

Panels

Select a topic below to expand its details

1Can I send commands to multiple devices from the same panel?

Absolutely. Each button on a Virtual Panel is independent. You can have Button 1 controlling a Projector, Button 2 controlling an ATEM, and Button 3 firing a Sequence that controls both.

✅There are no limits to how many devices a single panel can manage.
2Can I associate multiple actions with a single button?

Yes. Fantago supports Action Stacks. When you click a button, the system executes the list of actions in order. You can also add Delays between actions.

💡Example: one button can "Close the Shutter" AND "Turn Off the Lamp" with a 500ms delay in between.
3Can I trigger a Sequence from a panel button? Can I stop it?

Yes. Instead of selecting "Command," choose Sequence as the action type to trigger complex, timed macros with a single touch.

To stop a running sequence, select the sequence you want to target and set the action to STOP. This is vital for stopping emergency loops or long-running automated cycles.

4Can I fire an automatic action when a panel is opened?

Yes, these are called Panel Load Actions. They are useful for ensuring the UI is in a specific state (e.g., selecting a default camera) as soon as an operator opens the page.

5What types of actions can I assign to a button?
  • Device Command — Direct control of hardware
  • Sequence — Trigger a macro
  • Go To Page — Navigate to another panel or Stream Deck page
  • Set Variable — Manually change a status value
  • Timer Control — Start, Stop, or Reset a timer
6Can I copy and paste buttons? Can I copy only the appearance?

Yes. Right-Click any button to copy it and paste it onto another slot — this copies everything: look, actions, and feedback rules.

💡Use Copy Style / Paste Style to copy only the visual appearance. Perfect for maintaining consistent colors, fonts, and icons while keeping different underlying actions.
7What are Feedback Rules?

Feedback rules allow a button to change its appearance dynamically based on the system state. You can change the background color, text, or icon based on variable values.

💡Example: a button turns Red if camera_1_on_air is true and returns to Gray when false.

Advanced handlers (like ATEM or Evertz) provide Feedback Suggestions: when you assign an action like "Toggle Keyer," Fantago automatically asks if you want to apply the corresponding feedback rule.

8Can I put images or symbols on buttons?

Yes. Fantago has a built-in symbol library and allows you to upload your own custom PNG/JPG images. You can layer text over images for a professional look.

In the button editor, click the Symbol icon to search through hundreds of industry-standard icons (Play, Stop, Cameras, Arrows, etc.). Symbols are treated like text — their color can be changed independently of the button background.

9What types of Timers can I create?

You can create Count-Down (for segments) or Count-Up (for total show time) timers. Timers are shared system-wide — a timer started on a Stream Deck will be visible on all Virtual Panels in real-time.

Configure Expiration Actions (e.g., auto-switch ATEM when countdown reaches zero) and Cue Points (e.g., fire a warning at exactly 10 seconds remaining).

10Can I display dynamic content in a label?

Yes. Labels support Variable Injection using double curly braces. Writing:

VOL: {{audio_master_level}}%

...will result in a label showing the real-time volume of your mixer. In the Builder, use the Variables sidebar to click any variable name and copy it directly into your label.

11Can I share a panel with an operator who doesn't have Fantago installed?

Yes — panels are standard web pages served by Fantago. Any device on the same network (PC, Mac, iPad, smartphone) can open a panel by navigating to its URL in any modern browser. No installation of any kind is required on the operator's device.

The panel URL follows the format: http://[server-ip]:3000/panel/view/[panel-id] (3000 is the default port; use the one chosen at installation if different). You can find the direct link in the Panel Viewer by clicking the Share or Open button next to the panel name.

💡For tablet-based operator stations, simply bookmark the URL and add it to the home screen — on both iOS and Android this creates a fullscreen shortcut that looks and behaves like a native app.
12Can I organise buttons across multiple pages within the same panel?

Yes. The Panel Builder supports multiple pages within a single panel. You can add a "Go To Page" action to any button to navigate between pages — useful for grouping controls by category (e.g. Cameras, Audio, Graphics) without cluttering a single screen.

💡This feature also works on Stream Deck profiles: assign a key to switch pages and keep your hardware layout organised even with a large number of commands.
13What are Faders and Rotaries?

Two panel elements that set a level instead of firing a command: a fader (a bar at least three cells long, vertical or horizontal, shaped as a plain bar or as a mixing-console fader with a cap) and a rotary (a knob of 1×1, 2×2 or 3×3 cells with a ring that fills from 0 to 100).

  • They are moved by dragging with the mouse or a finger (Shift for fine moves) or with the mouse wheel; on a touch screen two fingers move two controls at once.
  • Their actions run on every move, up to 25 times a second, with the position as {{control_percent}} (0-100) or {{control_value}} (mapped to a range you choose, e.g. 0-1 for an OSC fader). In Steps mode they send relative moves instead, {{control_delta}}.
  • The position shown comes from a variable, so a move made on the device itself — on the console, from its remote, by a preset — is followed on the panel.
  • An over colour above a set point (like the zone above 0 dB on a mixer), a double tap to a set position, and the device's own scale marks (+10, 0, -10 … -∞ on an X32).
💡They work with any device, including a generic one: an OSC command such as /ch/01/mix/fader (f){{control_value}} is enough. With a handler that knows the control, picking the action fills in the position variable, the scale and the dB values for you.
14Which devices can a fader, a rotary or a Stream Deck + dial control?

Any device that accepts a level in a command can be driven with a generic handler. These handlers also offer ready-made Position and Adjust actions, with the device's real scale and live readback:

Behringer X32 / Midas M32 Yamaha CL / QL / TF / DM / Rivage (RCP) Axia Livewire (LWCP) Blackmagic ATEM Blackmagic Camera Blackmagic HyperDeck vMix OBS Studio Resolume Arena QLab OSEE GoStream RGBlink mini Shelly Panasonic PTZ Sony VISCA OBSBOT Tail Fantago Prompter

Typical uses: mixer faders and sends in dB, a switcher's T-bar, input volumes, camera zoom / iris / focus and pan / tilt, HyperDeck jog and shuttle, light brightness, and the scrolling speed of a prompter.

Stream Deck

Select a topic below to expand its details

1Which Stream Deck devices are supported?

Fantago supports the entire Elgato Stream Deck family:

Mini (6 keys) Standard (15 keys) XL (32 keys) + (8 keys, 4 dials) + XL (36 keys, 6 dials) Studio (Rack-mount)
💡The dials of the Stream Deck + and + XL are fully supported: they can turn pages or drive a device while they turn — see question 7 below.
2Do I need to install Elgato software to use Stream Decks?

Yes. To use Stream Deck devices connected via USB (Mini, Standard, XL, Plus), you need to install two things:

  1. The Stream Deck Software (v7.0 or later) by Elgato — downloadable from the official Elgato website.
  2. The Fantago Plugin for Stream Deck — in the Stream Deck Builder, under Connected Devices, press Download Stream Deck plugin. The file comes from your Fantago server, so it works without Internet access and it is the plugin tested with your version. It is also on the Download page.

On the computer running the Elgato software, double-click the downloaded file to install it, then drag Fantago Key Action onto the keys and enter the address and port of the Fantago server.

The Stream Deck Studio connects via the network directly to Fantago — no Elgato software or plugin is required.

3Is there a "Lock" functionality for Stream Deck?

Currently, the Safety Lock is available for the Stream Deck Studio (Stage 1 and Stage 2 locking), preventing accidental triggers in high-pressure environments.

💡Support for locking Standard and XL models is coming in an upcoming update.
4Can I use multiple pages on Stream Deck?

Yes. You can create as many pages as you need. Use the PAGE_UP, PAGE_DOWN, or GO_TO_PAGE actions to navigate between them.

You can also run an action when a profile is loaded — perfect for initialization tasks like setting encoders to a specific mode or clearing variables at the start of your shift.

5How do Feedbacks work on Stream Deck?

Feedbacks on Stream Deck are instantaneous. If a variable changes in the system (e.g., someone clicks a button on a web panel), the Stream Deck key will update its image or color immediately to reflect the new state.

💡If you use a Smart Action (from an Advanced Handler), the system will offer to set up the feedback automatically. For custom commands, define rules manually in the Stream Deck Builder.

Fantago also supports Portable Fonts — your custom fonts will look the same on the hardware regardless of the operating system.

6Can I connect more than one Stream Deck? Is there a limit?

Yes. You can plug in multiple USB devices and connect multiple Network devices (Studio). Fantago identifies each one by its unique Serial Number and allows you to assign different profiles to each.

✅The physical limit is based on your server's USB bandwidth or network capacity. Technically, Fantago can manage dozens of devices simultaneously.
7How do I use the dials of a Stream Deck + or + XL?

A dial can do two things:

  • Turn pages — a dial with no turn action pages the profile, one page per detent.
  • Drive a device while it turns — a volume, a mixer fader, a camera's zoom, iris or focus, a pan/tilt head, a T-bar, the speed of a prompter. The device follows the hand, and the steps turned while a command is on its way add up, none lost.

In the Stream Deck Builder, pick the Stream Deck + or + XL model and select a dial under the keys. Each dial has three action lists — When Turned, When Pushed, When Touched — and its own part of the touch strip, which shows a title, a live value (e.g. -4.7 dB) and a bar that follows the device even when it is moved from elsewhere. The strip can look like a rotary knob, a fader or plain text, in your colours.

The actions that work on a dial are the same ones that work on panel faders and rotaries (see Panels → questions 13 and 14): picking one fills in the step size, the position variable and the value text for you.

💡Dials need Stream Deck plugin 2.9.1 or later. Step-by-step setup: Stream Deck + dials guide.
8How do I know the Stream Deck plugin is up to date?

The Elgato software updates only Marketplace plugins, and the Fantago plugin is installed by hand, so Fantago checks it for you: whenever a USB deck connects, the plugin reports its version.

If it is older than the one that came with your Fantago, a warning appears on the dashboard and in the notification bell, and the deck's entry under Connected Devices reads Plugin vX – current is vY. Download the plugin again from the same button and double-click it on that computer.

✅A newer plugin downloaded later from the website (a fix published after your release) is never reported as outdated. The Stream Deck Studio has no plugin and is never flagged.

Prompter

Select a topic below to expand its details

1Does Fantago have a teleprompter?

Yes. The Prompter page in the menu holds a library of scripts in folders and an editor with word count and reading time. A script can carry markers (#NAME lines to jump to), cues in brackets, and bold, italic, underline and colours.

A prompter is an internal device of Fantago: it is driven like any other device, from panel buttons, Stream Deck keys and dials, and Logic Flows. Corrections to a script can be sent on air without losing the reading position.

💡Overview: Teleprompter · Step by step: Prompter guide.
2How do I show the prompter on the talent monitor?

There are three ways, and they can be mixed:

  • Fantago Display — a small free program for the computer that drives the monitor (see the next question). The simplest choice for a fixed installation.
  • A browser — open http://[server-ip]:[port]/prompter-output.html?prompter=NAME full screen.
  • A phone or tablet — see question 4.

The output scrolls by time, mirrors for a beam-splitter glass, shows a reading line, and keeps its own controls (keyboard, mouse wheel, a bar that appears on mouse movement) working even if Fantago becomes unreachable. With several outputs on the same prompter, all of them are kept on the same words.

3What is Fantago Display, and what does it run on?

Fantago Display is a separate, free program for the computer driving a prompter monitor. It shows the prompter in one window with no browser around it, on the monitor you choose, full screen, and reopens where it was at the next start. It keeps the monitor awake, waits for Fantago when it is not reachable and comes back by itself.

Windows 10 / 11 macOS 13 Ventura or later (Intel and Apple silicon)

Download it from the Download page. At first start it asks for a pairing code (question 5), then for the prompter and the monitor to use. Ctrl+Shift+S opens its setup, Ctrl+Shift+Q quits.

💡On macOS 12 the disk image opens but the app shows a "prohibited" sign: the system refuses to start it (the floor is set by Electron, the framework it is built on). Use a browser on that Mac instead. On Windows the installer is not code-signed yet: SmartScreen asks once — More info → Run anyway.
4Can I use a phone or a tablet as a prompter?

Yes. Open http://[server-ip]:[port]/prompters and add it to the Home Screen: it opens full screen with a tile for every prompter, showing its script and whether it is scrolling.

  • Tap the text to start or stop it, double tap to go back to the start of the paragraph.
  • Drag up or down to move the text, drag sideways to set the speed.
  • On a phone the control bar is a single row for the thumb; a tablet keeps the full bar. The screen is kept on.
5Can anyone on the network open the prompter?

No. A prompter is shown only to a browser logged in to Fantago or to a device paired with a code. Anyone else who opens the page is refused and can neither see nor drive it.

To pair a computer, phone or tablet: on the Prompter page, open Displays and type the 6-digit code it shows (valid 5 minutes, usable once) on the new device. The device then keeps a key of its own. The same list shows every paired device, what it is showing and when it was last seen; removing one stops its prompter at once.

6How do I drive the prompter from panels, Stream Decks and Logic Flows?

Pick the prompter as the device of a button, key, dial, fader or flow node. Its actions include:

  • Play / Pause / Stop, Set Speed (-30 … 30, where 10 is a normal reading pace and negative scrolls back), Adjust Speed on a dial, Set Speed Position on a fader (the middle stops it).
  • Next / Previous / Go to Paragraph, Go to Marker, Scroll Lines.
  • Text Size, Mirror, Blank, Lock.
  • Load Script from the library and Reload Script (the latest version, keeping the position).

It publishes variables such as running state, speed, current paragraph, marker, progress and time left, so keys and labels can show them and light up; picking an action fills in the feedback rule for you.

7Does the prompter count towards the demo limits?

The demo allows one prompter, and it does not count towards the demo's device limit. A licensed installation can have as many prompters as it needs.

Prompter settings and the script library are included in Backup & Restore; a restored script keeps its id, so the keys that load it keep working.

Handlers

Select a topic below to expand its details

1What is the difference between Dynamic and Advanced handlers?
Dynamic HandlersCreated via the built-in UI. Perfect for 90% of devices. Define commands, feedbacks, and parameters using a simple form — no coding required.
Advanced HandlersWritten in JavaScript. Used for complex hardware requiring active state management, like the Blackmagic ATEM (which needs constant synchronization of hundreds of variables).
2Can I create my own handler?

Yes. You don't need to be a programmer. Use the Handler Builder to create a Dynamic Handler — you just need your device's manual to copy-paste the command strings.

💡Advanced handlers require JavaScript knowledge. Documentation for the Plugin API is available in the Developers section and on the official website.
3What are "Capabilities" in the Dynamic Handler Builder?

Capabilities define what a device can do (e.g., "It has 32 inputs", "It supports volume control"). Defining these allows Fantago to generate the correct dropdown menus and UI elements automatically when you use that device.

4Can I configure REST/API commands in the Dynamic Handler Builder?

Yes. The builder supports HTTP/HTTPS protocols with custom Methods (GET, POST, PUT), Headers, and JSON Body payloads.

✅This makes it compatible with almost any modern web-controllable device.
5How do I handle and interpret device responses?

Define Response Interpretations. When the device sends data back, Fantago scans it to update variables.

💡Example: if a device sends VOL:45, tell Fantago to ignore the VOL: prefix and save 45 into a variable.

Regex allows surgical extraction from complex strings. For example, if a device returns STAT:MUTED;VOL:12;TEMP:45, a regex like VOL:(\d+) captures 12 and ignores the rest — this value can then update a volume indicator on your panel.

6What is "onLoad State Polling"?

This is a list of commands that Fantago sends to the device as soon as the system starts or the device is enabled. It ensures Fantago knows the current state of the hardware right from the beginning, without waiting for an operator to click a button.

7Can I use the AI assistant to create an Advanced handler?

Yes — this is one of the most powerful features in Fantago. In the Handler Builder → Advanced (JS) tab, click the ✦ Generate Plugin with AI button. A chat panel opens where you can describe your device and its protocol.

The AI can read a URL (e.g. the manufacturer's API documentation page) or accept pasted text from a PDF manual. It then writes a complete, ready-to-deploy JavaScript handler that covers connections, command execution, state synchronisation, and response parsing.

💡For complex protocols (TCP persistent, matrix routers, WebSocket), a cloud model (Gemini, GPT-4, Claude) gives significantly better results than a local model. Handler generation is one of the tasks where model quality matters most.
8What information should I give the AI to get the best handler?

The more context you provide, the better the result. Ideal inputs:

  • Protocol type — TCP, UDP, HTTP REST, WebSocket, OSC
  • Connection mode — persistent (the device keeps the socket open) or one-shot (connect, send, disconnect)
  • Command examples — copy the exact command strings from the manual (e.g. POWER ON\r\n)
  • Response format — how the device replies and what data needs to be extracted
  • Documentation URL — the AI can fetch and parse the page automatically
✅After the handler is saved, you can ask the AI to modify, extend, or debug it. It reads the existing code before making changes.
9How do I update the built-in handlers?

Built-in handlers are bundled inside the Fantago binary and updated automatically when you install a new version of the application. You do not need to manage them manually.

Custom handlers you create (saved in userData/handlers/) are never overwritten by updates — they always take precedence over built-in handlers with the same name. After an update, use the Reload Plugins button in the Advanced tab to hot-reload custom handlers without restarting the server.

💡If a built-in handler is updated and you have a custom version with the same name, your custom version will continue to be used. Rename or remove it to switch to the updated built-in.

Listeners

Select a topic below to expand its details

1What is the "Listeners" functionality for?

Listeners turn Fantago into a "Command Server". External systems (like a webpage, a script, or a third-party automation tool) can talk to Fantago, opening the door for total system integration.

💡You can change the listening ports in Settings. Choose any available port for TCP, UDP, and HTTP listeners to avoid conflicts with other software on your network.
2Can Fantago translate incoming TCP commands to other protocols?

Yes — this is one of Fantago's strongest features. You can send a simple TCP string to the Fantago listener, and Fantago can translate it into an OSC command for a sound console, a REST API call for a camera, and a UDP trigger for a matrix — all at the same time.

3Can I send commands via HTTP? What is the syntax?

Yes. Fantago provides a full REST API. Trigger any action by sending a URL request from a browser or any software that supports HTTP calls.

http://[IP]:[PORT]/api/execute?device=[NAME]&command=[CMD]
💡Full documentation of endpoints is available in the internal API guide. In the Handlers section, click on any handler name to see all supported actions and the exact strings required to trigger them.

Backup

Select a topic below to expand its details

1Can I save the entire system to a single file and import it elsewhere?

Yes. The Full Backup generates a single encrypted file containing your entire database. Import this file on a fresh Fantago installation on a different machine and your entire studio setup will be restored instantly.

2What happens if I import elements that already exist?

During import, the system will ask if you want to Merge or Overwrite.

MergeOnly adds new elements, leaving your current configuration intact.
OverwriteReplaces your current configuration entirely with the one from the backup file.
3Can I use a backup to migrate my setup to a different server or operating system?

Yes — this is one of the most powerful uses of the backup feature. The backup file is cross-platform: a configuration created on Windows can be imported on a Linux or macOS server without any manual conversion.

Simply install Fantago on the new machine, open the Dashboard, go to the Backup section, and import your file. Within seconds your entire studio setup — devices, panels, sequences, schedules, handlers, and Stream Deck profiles — will be fully restored.

✅This also makes disaster recovery trivial: keep a copy of the backup on a USB stick or cloud storage, and you can rebuild a working system from scratch in minutes.

License

Select a topic below to expand its details

1What can I do with the system without purchasing a license?

Without a license, Fantago runs in Free/Lite mode. You can explore all the features and configure a limited number of devices and panels.

✅Perfect for testing hardware compatibility before buying. There is no expiration date — the Lite version can be used indefinitely. Only the number of managed elements is restricted.
2What are the limits of the unlicensed version?

The unlicensed version is typically limited to:

  • 2 devices
  • 1 user panel
  • 1 Stream Deck profile

Advanced features like email alerts or high-frequency polling might also be restricted.

3Can I install the same license on multiple systems?

No. A Pro license is tied to the unique hardware ID of the server machine during activation.

💡If you need to move the license to a new computer (e.g., after a hardware failure), please contact our support team to reset your activation key.
4Can I install multiple Fantago instances on the same PC?

Each instance must be separately licensed to operate in Pro mode.

⚠️We strongly advise against running multiple instances on the same machine to avoid port conflicts and CPU oversubscription. One Fantago server is powerful enough to manage an entire facility.

Installation

Select a topic below to expand its details

1How do I install Fantago on Windows?

Download the Windows installer (.exe) from the Download page and run it. Administrator privileges will be requested. Once installation is complete, Fantago starts automatically and a tray icon appears in the system notification area (bottom-right of the taskbar).

Right-clicking the tray icon gives you quick access to the following actions:

  • Open Dashboard — opens the web interface in your default browser
  • Start / Stop Fantago — starts or stops the background service
  • Launch at startup — toggle automatic start with Windows
  • Uninstall — removes Fantago from the system
💡Your user data (devices, panels, configurations) is stored in a separate folder and is preserved when you uninstall or update.
2How do I install Fantago on macOS?

Download the macOS installer (.pkg) from the Download page and run it. Follow the on-screen steps — you will be prompted for your administrator password. After installation, Fantago starts automatically and a menu bar icon appears at the top-right of the screen.

Clicking the menu bar icon gives you quick access to:

  • Open Dashboard — opens the web interface in your default browser
  • Start / Stop Fantago — starts or stops the background service
  • Launch at login — toggle automatic start at login
  • Uninstall — removes Fantago from the system
💡On macOS, Fantago runs as a background agent. If macOS asks for permission to accept incoming network connections, click Allow so the Dashboard is reachable from other devices.
3How do I install and manage Fantago on Linux?

The Download page offers Fantago for Linux in two formats, for both x86-64 and Raspberry Pi (ARM64). They install the same software in the same way: the application goes to /opt/fantago, your devices, panels and logic flows to /var/lib/fantago, and Fantago runs as a systemd service under a dedicated fantago user, starting automatically at boot.

  • Debian package (.deb) — recommended on Ubuntu, Debian, Raspberry Pi OS and their derivatives. Installation, upgrades and removal go through apt.
  • Self-extracting installer (.run) — for any other distribution that uses systemd.

Installing the .deb package

Open a terminal in the folder where you downloaded the file and run the command below. The ./ in front of the file name matters: it tells apt to install a local file instead of searching its online repositories.

sudo apt install ./fantago_*_amd64.deb # Linux x86-64 sudo apt install ./fantago_*_arm64.deb # Raspberry Pi

The service is started straight away, and the last line of the output shows the Dashboard address, for example Fantago is running. Dashboard: http://192.168.1.20:3000.

Upgrade: download the new .deb and install it with the same command. Your configuration and the port in use are kept.

Uninstall: sudo apt remove fantago. Your configuration and data stay in /var/lib/fantago, so a later install picks them up again; apt purge leaves them too. To delete them permanently: sudo rm -rf /var/lib/fantago && sudo userdel fantago.

💡Already running Fantago from a .run installation? You can install the .deb over it: data and port carry over. From then on, update and remove it with apt only, not with /opt/fantago/uninstall.sh.

Installing with the .run installer

Open a terminal in the folder where you downloaded the file, make it executable and run it as root:

chmod +x fantago-*-linux-*.run sudo ./fantago-*-linux-*.run

The installer first shows the End User License Agreement (scroll with the arrow keys, press q to close it) and asks you to type yes to accept. It then installs the files, registers the service and starts it.

Two optional flags:

  • --accept-eula — accepts the license without the interactive prompt, for scripted or unattended installs.
  • --port 8080 — installs Fantago on the port you choose instead of the default.

Upgrade: run the newer .run file the same way. Your configuration and the port in use are kept.

Uninstall: sudo /opt/fantago/uninstall.sh. Your data is kept in /var/lib/fantago; to delete it as well: sudo rm -rf /var/lib/fantago.

Opening the Dashboard

Browse to http://<server-ip>:3000 from any computer on the same network. Port 3000 is the default: if another program is already using it, the installer picks the next free port and tells you which one at the end of the installation. An upgrade keeps the port you already have.

The port is stored in the "port" entry of /var/lib/fantago/fantacore.config.json. To change it, edit that value and restart the service with sudo systemctl restart fantago.

Service management

Use the following commands from any terminal to control the service:

  • Check service status:
    sudo systemctl status fantago
  • Start the service:
    sudo systemctl start fantago
  • Stop the service:
    sudo systemctl stop fantago
  • Restart the service:
    sudo systemctl restart fantago
  • Enable auto-start at boot:
    sudo systemctl enable fantago
  • Disable auto-start at boot:
    sudo systemctl disable fantago
  • View live logs:
    journalctl -u fantago -f

Update

Select a topic below to expand its details

1Can I update the system? What is covered for free?

Yes. Updates are free for all minor versions within the same major release (e.g., if you own v2.3.0, you can update to v2.3.1, v2.4.0, etc., for free). Major version upgrades (e.g., from v2.x to v3.x) may require a small upgrade fee.

2Is there a subscription model?

There is currently no subscription model. Fantago is sold as a Lifetime License — you pay once and own it forever. We do not exclude the possibility of introducing an optional subscription tier in the future, but any such addition will never replace the one-time purchase model.

✅We believe in ownership, not subscriptions.
3Will I lose my data if I update the system?

Updates are designed to be Data-Safe. The installer will automatically migrate your database to the new version.

⚠️As a professional precaution, always perform a Database Backup before initiating an update.
4How do I install an update?

Simply download and run the new installer for your platform. The installer will completely overwrite the previous application files — no manual uninstall is required first.

  • All user data (devices, panels, sequences, handlers, schedules, and logs) is stored in a separate data folder and is never touched during the upgrade.
  • Your Pro license is automatically recognised after the update — you do not need to re-enter your activation key.
✅Just install the new version on top of the existing one. That's all.

Developers

Select a topic below to expand its details

1Where can I find info on building Advanced Handlers?

Detailed API documentation, code examples, and boilerplate templates are available in the /docs folder of your installation and in the Developer Guide on our official website.

💡Our engine is built on Node.js, making it very accessible for web developers.
2How can I share my custom plugin with other users?

We love community contributions! If you have developed a robust handler for a popular piece of gear, contact us.

✅If your handler meets our quality standards, we can include it in the official Fantago distribution. In exchange, we often provide free Pro licenses or other incentives.

AI Assistant

Everything you need to know about Fantago's built-in AI

1How do I configure an AI model?

Open the AI panel (click the ✦ AI button in the toolbar) and click the ⚙ Settings icon in the panel header. You will see the following configuration fields:

  • Provider — choose from Google Gemini, OpenAI, Anthropic Claude, Groq, Ollama, or any OpenAI-compatible endpoint
  • API Key — your personal key from the provider's website. It is stored locally on the server and never transmitted to Fantago's servers
  • Model — the specific model to use (e.g. gemini-2.0-flash, gpt-4o, claude-3-5-sonnet)
  • Base URL — only required for Ollama or custom endpoints
💡Each AI context (Dashboard, Logic Builder, Handler Builder) remembers its own model configuration independently.
2What do cloud models cost? Are there free options?

Costs depend on the provider and the volume of requests. Here is a practical overview:

Free or near-free
  • Google Gemini Flash — generous free tier (up to 1,500 requests/day), recommended starting point
  • Groq — free tier with fast inference on open-source models (Llama 3, Mixtral)
  • Ollama (local) — completely free, runs on your machine, no internet required
Paid (pay-per-token)
  • OpenAI GPT-4o — ~$0.005 per 1K tokens, high quality
  • Anthropic Claude — similar pricing, excellent for code generation
  • Google Gemini Pro — affordable, strong reasoning
✅For everyday dashboard tasks and logic flow generation, the Gemini free tier is more than sufficient. Reserve paid models for complex handler generation.
3Local models vs cloud models — what are the trade-offs?
Local models (Ollama)
  • ✅ Zero cost — no API key, no subscription
  • ✅ Fully offline — works in air-gapped facilities
  • ✅ Complete data privacy — nothing leaves your network
  • ✅ No rate limits or throttling
  • ⚠️ Requires a capable GPU (8 GB VRAM minimum for useful models)
  • ❌ Limited reasoning on complex tasks
  • ❌ Slower inference compared to cloud APIs
Cloud models
  • ✅ State-of-the-art quality and reasoning
  • ✅ No local hardware requirements
  • ✅ Fast response times
  • ⚠️ Requires internet connectivity
  • ⚠️ Cost per request (though often very low)
  • ⚠️ Context (prompts) is sent to the provider's servers
💡Practical recommendation: use a local model (e.g. llama3.2 via Ollama) for simple dashboard commands and variable management. For generating a complete Advanced handler from a protocol spec, always use a top-tier cloud model — the difference in output quality is significant, and a poorly generated handler can be hard to debug.
4What can I ask the AI assistant?

The AI assistant understands the context it operates in. Here is what you can ask in each area:

  • Dashboard — "Send the POWER ON command to Camera 1", "Start the Morning sequence", "Set the DELAY variable to 2500", "What is the current state of the ATEM switcher?", "Create a new device called PTZ Cam with IP 192.168.1.50"
  • Logic Builder — "Create a flow that turns off all lights when the stream ends", "Build an automation that sends a command every 30 minutes", "Add a condition node that checks if the variable LIVE equals 1"
  • Handler Builder — "Generate a handler for the Barco projector using this REST API documentation", "Add a new action called MUTE to the existing handler", "Fix the connection error in the current handler"
5What can't I ask the AI assistant?

The AI assistant is purpose-built for Fantago tasks. It cannot:

  • Browse the internet or retrieve live information (unless a cloud model is used and the provider supports web search)
  • Modify the Fantago server configuration files directly
  • Access or modify files outside the Fantago data folder
  • Control devices that are not configured in Fantago
  • Generate panels or Stream Deck layouts (these must be built manually in the respective builders)
  • Execute operating system commands or scripts outside Fantago's scope
💡If a request is outside scope, the AI will explain what it cannot do and suggest the correct workflow inside Fantago.

Various

System tray, menu bar, updates and general topics

1System tray icon on Windows — what are the menu options?

On Windows, Fantago installs FantagoTray.exe, which runs in the notification area (bottom-right, next to the clock) and auto-starts at login. Right-click the icon to access:

  • Start Server — starts the Fantago background service if it is not running
  • Stop Server — stops the service gracefully
  • Restart Server — stops and restarts the service (useful after configuration changes)
  • Open Dashboard — opens the Fantago web interface in your default browser
  • Uninstall Fantago — launches the uninstaller
  • Exit — closes the tray app only (the server continues running)
💡The tray app is single-instance. If you close it by mistake, relaunch it from C:\Program Files\Fantago\FantagoTray.exe or from the Start Menu.
2Menu bar icon on macOS — what are the options?

On macOS, Fantago Menu Bar.app installs as a Swift native app and appears as an icon in the macOS menu bar (top-right). It auto-starts at login via a LaunchAgent and reads the configured port from fantacore.config.json. Click the icon to access:

  • Start Server — starts the Fantago LaunchDaemon
  • Stop Server — stops the server gracefully
  • Restart Server — full restart (recommended after updates or config changes)
  • Open Dashboard — opens the Fantago interface in your default browser on the configured port
  • Uninstall — launches the removal script
💡If the menu bar icon does not appear after installation, open System Settings → General → Login Items and verify that "Fantago Menu Bar" is listed and enabled.
3How does the update notification work?

Fantago periodically checks for new versions in the background. When an update is available, a badge (a coloured dot or number) appears on the update icon in the top bar of the Dashboard. Clicking the badge opens the Update panel, which shows:

  • The current installed version
  • The latest available version and its release date
  • A summary of what's new (changelog highlights)
  • A download link for the new installer or binary

Fantago does not update itself automatically — you always download and install the new version manually to stay in control of your production environment.

💡Built-in handlers are updated with the application. Custom handlers in userData/handlers/ are never touched by updates.

Release Notes

Select a version below to expand its changelog

1v2.15.0 — the prompter and continuous controls
  • Fantago has a teleprompter: a Prompter page with a script library in folders, markers and cues, shown full screen on the studio monitor, a tablet or a phone — and driven from panel buttons, Stream Deck keys, Stream Deck + dials and Logic Flows, with several screens kept on the same words
  • Fantago Display 1.0.0, a free program for the computer driving a prompter monitor: the prompter in one window with no browser around it, on the monitor you choose, full screen. Windows and macOS, on the download page
  • A prompter is shown only to a browser logged in to Fantago or to a computer paired with a six-digit code; the Displays list shows every paired screen and removing one stops it at once
  • New Fader and Rotary elements in the Panel Builder: levels set from the device's own scale, in dB where the device works in dB, with scale marks and a console-style look
  • Stream Deck + and + XL dials as continuous controls: turning one drives a device while it turns, the push and the touch run their own actions, and the strip shows the device's real value
  • Panel faders, rotaries and dials now drive nineteen device families: Behringer X32 / Midas M32, Yamaha RCP, ATEM, Blackmagic Camera, HyperDeck, vMix, OBS, Resolume, GoStream, RGBlink, Shelly, QLab, Axia LWCP, Sony VISCA, OBSBOT and Panasonic PTZ
  • New handler: Behringer X32 / Midas M32 (beta) over OSC — fader levels in dB, relative moves, mutes and channel names, following what the operator does on the surface
  • Sony VISCA 2.4.1 rewritten on Sony's documents and tried on a real BRC-AM7, now covering the classic VISCA family; Blackmagic HyperDeck 2.0.3 with jog, shuttle and live timecode; Blackmagic Camera 1.5.1 with the rest of the REST API, the camera password and values checked before they are sent
  • The grey theme is the default on a first install
  • Panels, Stream Deck profiles, Logic Flows and prompter scripts are organised in folder trees, with drag and drop and copy and paste
  • Handlers can group their actions under titles, and every drop-down list is drawn in Fantago's own style
  • Less work for the processor: a variable changing several times a second no longer costs up to a third of a core
  • Stream Deck fixes: a key given a new job drops the old feedback look, all fourteen builder fonts are drawn on the deck, an encoder turns as many pages as it is turned
  • The Stream Deck plugin (2.10.0) now comes with Fantago: download it from the Stream Deck Builder, even with no Internet access, and Fantago warns when a deck machine runs an older one
  • Fixes: the demo really allows eight keys and eight panel elements, the wheel over a fader no longer turns the page, restoring an older backup no longer doubles the Logic Flows, renaming a device carries its faders and rotaries along
  • Community: Blackmagic Camera 1.5.1, Panasonic Kairos 1.24.4, QLab 1.1.0 and vMix 2.1.0 are offered as community updates at the same version as the ones bundled here
💡Inside Fantago, Help → Updates & What's New compares your version with the latest one and lists what the newest release brings.
2v2.14.0 — Panasonic PTZ preset thumbnails, Interface Scale, clock variables
  • Panasonic PTZ Camera handler 1.8.0: preset thumbnails — Store Preset takes the camera snapshot and puts it on every panel button and Stream Deck key that recalls that preset, live, without resetting the page; a Tap = Recall, Hold = Store button; live feedback; speed presets that retune every move button; Iris and Focus Auto/Manual toggles; a variable with the camera model; Diagnostics
  • Fix: the Panasonic PTZ shutter buttons did nothing on real cameras — new Shutter: Set Mode, working Shutter Step +/- and the shutter mode as a variable with feedback
  • Panasonic PTZ Controller handler 1.2.1: live feedback, read-only Diagnostics, group feedback, camera label and summary variables, a Polling Interval, a quiet retry while the controller is unreachable, and fixes after renaming the device
  • “⇄ Devices” in the Panel Builder and the Stream Deck Builder: point a page, or a whole panel or profile, at other devices and sequences in one go — feedback rules, variables in labels and parameters follow
  • Interface Scale (Settings → Appearance): a Full HD screen no longer needs the browser zoomed out
  • Clock variables ({{sys_clock_hh}}, {{sys_clock_mm}}, {{sys_clock_date}} …) and a run-state variable for every countdown and counter (timer_main_show_state for a timer called Main Show), so keys and buttons show the time or light up while a timer runs, without a Logic Flow
  • Renaming a device now updates everything that refers to it — feedback rules, labels, commands, schedules, triggers, timers and Logic Flows. Fix: deleting or renaming a device also touched the variables of devices with a similar name, and Cleanup Orphaned removed variables in use
  • Logic Flows: disabling a flow stops what it was already doing; triggers gain “If already running”; the Logic Builder asks before discarding unsaved changes; the AI assistant no longer invents panel and button ids
  • Fix: a loop in a Logic Flow after a Debounce node shut the whole server down — and the server no longer stops on an unhandled error in a background task
  • Logic Flow fixes: saving one flow reset every other flow, two quick saves made timers fire twice, “Every N minutes” fired at the wrong times, the enable checkbox reset the flow's settings, duplicating or importing turned logging off
  • The dashboard forms (Device, Sequence, Schedule, File and Network Trigger) are redrawn in cards, and the device form's handler list has a search field. Fix: the device list of a sequence step was empty
  • Builder fixes: reordering pages now really renumbers them, Page Up/Down no longer overwrites a panel's start page, duplicating a Stream Deck page no longer empties the original, and the builders no longer wipe images a handler put on a button
  • Stream Deck fixes: a key's background image mode now works on real devices, and on classic Stream Decks the text size and vertical alignment match the builder preview — install Stream Deck plugin 2.6.2 from the download page
  • Fix: a handler's polling was stopped right after it started, so panels saw only the reading taken at startup; a renamed device no longer keeps its old connection running
  • Written guides on the website for Blackmagic devices, vMix, Audinate Dante, Logic Flows and Stream Deck Studio