Try any driver free for 30 days

Docs · Control4 guides

Control4 troubleshooting playbook

A systematic method beats guessing. For every problem: define the symptom exactly, check from the most likely and cheapest cause outward, change one thing at a time, and confirm the fix from the customer's side (the app or touch screen), not just Composer.

The general method

  1. Reproduce it. Which room, which device, which interface (app, touch screen, keypad, remote), every time or intermittent, since when.
  2. Ask what changed: power outage, new router or ISP, OS update, driver update, new device, customer moved equipment.
  3. Separate control from signal. Did the device receive the command (power and input changed) but the picture or sound is wrong? That is wiring or bindings. Did nothing happen? That is control (IR, serial, IP, ZigBee).
  4. Check the device in Composer: identify and address (Connections > Network), driver status properties, Lua output with debug on.
  5. Check the network: is the device reachable, did its address change, is it on the right subnet.
  6. Fix, then test from the customer's interface.
  7. Write down what you found and changed in the project notes, then back up.

Device shows offline

Checks:

  1. Connections > Network: is the Address blank (never identified) or an old address (device moved)?
  2. Is the device powered and on the network? Check the router's client list or a network scan.
  3. Is it the same subnet or VLAN as the controller?
  4. Driver properties: correct IP, port, credentials. Status or Last Error property.
  5. Lua output with debug on: connection refused, timeout, or authentication errors.
  6. Did the device's firmware update and change its API or require re-pairing?

Fixes:

  • Set a DHCP reservation, then re-identify (or update the IP property).
  • Re-run the driver's pairing action if it has one.
  • Power cycle the device (smart outlet or PoE port if remote).
  • Update the driver if the manufacturer changed the device's protocol.

IP device lost after a reboot or power outage

Almost always an address change. Without a DHCP reservation, the router hands out new addresses after an outage and drivers keep talking to the old ones.

Fix: create reservations for every controlled device, then re-identify or correct the IP property for each one that moved. SDDP-identified devices follow address changes on their own; manually identified ones do not.

If the device kept its address but still is not reachable after the outage, check for a device that comes up slower than the controller (some TVs and AVRs disable network control in eco or standby modes after power loss). Turn on network standby or quick start options in the device's own menu.

IR not working

Checks:

  1. Is the IR binding from the device's IR input to the right controller or expander port?
  2. Emitter placement: directly over the device's IR window. Use a phone camera to look for the IR sensor area and to see whether the emitter flashes when you send a command (many phone cameras show IR as a flicker).
  3. Port mode: on controllers with ports that can be IR or serial, confirm the port is in IR mode.
  4. Correct driver: the right model or code set. A similar model can have different codes.
  5. Toggle vs discrete: a driver using toggle power gets out of sync. Prefer drivers with discrete on and off codes.
  6. Timing: some devices need a delay after power on before accepting input commands. Raise the power-on delay property in the driver.
  7. Interference: sunlight, plasma or LED backlight bleed, or a second emitter or the device's own remote fighting the emitter. Use shielded or blink emitters.

If one command works and another does not, it is the code. If nothing works, it is the binding, port, or emitter.

Serial (RS-232) not working

Checks:

  1. Serial binding from the driver to the right port.
  2. Port settings in the driver match the device: baud, parity, data bits, stop bits, flow control.
  3. Cable: straight-through vs null modem, and the right pinout for the controller port (3.5 mm ports need the correct adapter). Verify with a known-good cable before blaming the driver.
  4. Port mode: if the port can be IR or serial, set it to serial.
  5. Device menu: many TVs and projectors disable RS-232 control unless a setting is turned on, or only accept serial while powered on.
  6. Lua output: are commands going out? Is anything coming back?

A device that receives commands but never reports status usually has a TX/RX issue (one direction working) or a feedback setting turned off on the device.

Symptoms: new device missing, renamed room still shows the old name, button missing, scene missing.

Checks and fixes:

  1. File > Refresh Navigators (Shift+F5).
  2. Check visibility in the room's menu settings. New experience and custom buttons can default to Hidden.
  3. Force close and reopen the app. Restart the touch screen.
  4. Confirm the app and touch screen are on current versions.
  5. If the app works remotely but not at home, or the reverse, look at the network path (local VLAN or Wi-Fi isolation vs cloud).

Programming not firing

  1. Select the event in the Programming view and click Execute. If the actions run, the trigger is the problem.
  2. Trigger checks: correct event (Press vs Release vs Tap), the sensor or device actually reports the change, the schedule time and time zone are right.
  3. Conditionals: check each one against real current values (variables in the Variables agent, device states in Properties). One false conditional hides everything under it.
  4. Delays and loops: a long delay, or a loop that never ends.
  5. Competing programming: another script, schedule, routine, or motion sensor undoing the action.
  6. Driver updates: commands or events a driver renamed may have dropped out of scripts. Re-add them.
  7. After a reboot: variables that should be initialized at system startup.
  8. Homeowner routines (X4) doing the opposite of your programming.

Audio or video path wrong

Symptoms: wrong input, no picture, no sound, sound from the wrong speakers, volume controls the wrong device.

  1. Watch what happens when you select the source. Does every device in the path power on and switch? If not, a control binding is broken.
  2. In Connections, trace the source's output through each hop to the room's video endpoint. Check signal types at every hop.
  3. Check the room's endpoints: video, audio, video's audio, and the volume endpoints.
  4. Look for duplicate paths (source wired both directly and through the AVR) and duplicate room endpoint bindings.
  5. Check AVR zones and matrix input and output numbering.
  6. Check device timing: a TV that ignores input commands while warming up needs a longer power-on delay.
  7. Refresh Navigators after binding changes.

Controller slow or unstable

Symptoms: delayed button response, Composer timeouts, app spinning, random reboots.

  1. What changed? A new or updated driver is the top suspect. Drivers that do heavy work at load, poll aggressively, or reconnect in tight loops drag the whole system down.
  2. Disable or remove the suspect driver and see if the system recovers.
  3. Check programming for loops without delays and scripts that trigger each other.
  4. Check the network: a broadcast storm, a failing switch, or a bad cable can look like a slow controller.
  5. Check heat and power. A hot rack and a missing UPS cause odd behavior.
  6. Check the controller's storage: very large media libraries, huge logs, or many camera drivers on a small controller.
  7. Split duties: add a secondary controller for heavy driver or audio loads.
  8. Gather Device Logs and System Diagnostics before rebooting if you need Control4 support to investigate.

Updates failing

  1. Read the release notes and upgrade documents for that release before starting.
  2. Back up the project first.
  3. Confirm internet access from the controller and the right subscription for the target OS (X4 upgrades require a qualifying OS version and account setup; check current requirements).
  4. Make sure all devices are powered and online in Network Tools. Offline devices cannot take their firmware.
  5. If a system has both ZigBee and Ethernet connections for a device, Control4's guidance is to remove the ZigBee network connection and identify it over Ethernet before updating.
  6. Run the update from Tools > Update Manager and watch it. Expect Composer to disconnect and streaming audio to stop while Director updates. Reconnect and keep watching.
  7. Wait for the finished message. IP devices update in the run; ZigBee and hybrid devices are handled separately.
  8. Confirm firmware versions in Network Tools. If the ZigBee mesh moved, allow several minutes for devices to reconnect.
  9. After X4 updates, confirm required agents are present and spot check schedules and drivers.

ZigBee devices dropping or slow

  1. Tools > ZigBee Health: signal strength and route quality per device.
  2. Weak devices: add mains-powered ZigBee devices or a ZigBee access point between them and the coordinator.
  3. Coordinator placement: a controller in a closed metal rack starves the mesh. Use the external antenna or move the coordinator role.
  4. Channel: check overlap with the home's Wi-Fi channels.
  5. Battery devices: replace batteries before chasing anything else.
  6. Avoid changing channel or moving the mesh outside a planned visit. The whole mesh drops while it re-forms.

Still stuck? Ask Fixxy (bottom right) or open a ticket.