Skip to content

NeatoFx Audio 50

Device Type:misc
Electrical Standard:global
Board:esp32
Difficulty:Comes with ESPhome (1/5)

NeatoFx Audio 50

Overview

The NeatoFx Audio 50 is a WiFi-enabled audio and automation controller for themed attractions, escape rooms, haunted houses, and interactive installations. It combines a 50 W amplified MP3 player, two relay outputs, two dimmable spotlight outputs, and optional 4-channel RF wireless inputs in a single pre-flashed networked unit.

Ships with a Kenwood KFC-1666S 6.5” 2-way speaker and includes battery backup with automatic switchover on power loss.

Applications: haunted house scares, shooting gallery hit audio, escape room narrative progression, scavenger hunt clues, museum exhibit narration, themed restaurant moments.

Key features:

  • TPA3116D2 50 W amplifier with included Kenwood KFC-1666S 6.5” speaker (4–8 Ω)
  • DFPlayer Mini MP3 playback from MicroSD (FAT32, up to 32 GB, 4-digit filename prefix)
  • Playback modes: single file, random from folder, sequential playlist, background loop with event interruption
  • 2 wired trigger inputs (digital, debounced, 3.3 V logic)
  • Optional 4-channel 433 MHz RF receiver (A/B/C/D wireless buttons)
  • Per-input configurable: specific track or random selection
  • 2 × SPDT relay outputs — 15 A @ 12 VDC / 250 VAC; trigger at audio start, end, or after delay
  • 2 × FET dimmable spotlight outputs — 4.2 A each, 12 V, PWM 0–100%, sync to audio events
  • Software volume control (0–30, persistent across reboots)
  • Battery backup with automatic switchover
  • Home Assistant native (ESPHome API), FPP, and MQTT compatible
  • Standalone AP mode; hotspot audio-XX, web UI at 192.168.4.1
  • OTA firmware updates

Hardware

ComponentSpecification
MCUESP32-WROOM-32UE
Input voltage12 V DC
AmplifierTPA3116D2, 50 W
Speaker (included)Kenwood KFC-1666S 6.5” 2-way, 4–8 Ω
Audio storageMicroSD, FAT32, up to 32 GB
Audio formatMP3 (128 kbps minimum recommended), 4-digit filename prefix
Max filesUp to 255 in standard operation (3,000 on card)
Relay outputs2 × SPDT, 15 A @ 12 VDC / 250 VAC
Spotlight outputs2 × FET, 4.2 A each, 12 V, PWM dimmable
Wired inputs2 × digital, debounced, 3.3 V logic
RF inputs4-channel 433 MHz (optional add-on, A/B/C/D)
WiFi802.11 b/g/n 2.4 GHz
Battery backupYes — automatic switchover on power loss

PCB revisions

  • Rev 2.3 — original design
  • Rev 2.4 / 2.5 / 2.6 — same pinouts; RFTX connector configurable as 4 RF inputs or trigger outputs; Rev 2.6 is the latest

Hardware Pinout

Audio 50 PCB pinout

GPIO Pinout

GPIOFunction
GPIO17DFPlayer Mini UART TX (→ DFPlayer RX)
GPIO16DFPlayer Mini UART RX (← DFPlayer TX)
GPIO26Relay 1 output
GPIO27Relay 2 output
GPIO33FET 1 — SpotLight 1 (LEDC PWM)
GPIO25FET 2 — SpotLight 2 (LEDC PWM)
GPIO0Amplifier wake (active-high)
GPIO5Amplifier unmute (active-low)
GPIO22Heartbeat LED output
GPIO23Status LED (active-low)
GPIO4RF TX power enable
GPIO34Wired input 1 (active-low)
GPIO39Wired input 2 (active-low)
GPIO32Push button (INPUT_PULLUP)
GPIO36RF remote button A
GPIO2RF remote button B
GPIO15RF remote button C
GPIO35RF remote button D

Quick Start

  1. Power on — device broadcasts WiFi hotspot audio-XX (unit-specific)
  2. Connect phone or laptop to the hotspot — captive portal opens at 192.168.4.1
  3. Select your venue WiFi network and enter credentials
  4. Device reboots and joins the network
  5. Home Assistant discovers the device within 60 seconds
  6. Access web UI via local hostname (e.g., audio-1.local) to configure tracks, volume, and outputs

For standalone operation (no hub), skip steps 3–5 and use the web UI at 192.168.4.1.

Configuration

substitutions:
id: "1"
name: audio-${id}
friendly_name: "NeatoFx Audio ${id}"
packages:
board: github://CodeMakesItGo/NeatoFx_Public/Audio/NeatoAudio50/boards/rev2_4.yaml@main
rftx: github://CodeMakesItGo/NeatoFx_Public/Audio/NeatoAudio50/boards/common/rftx_none.yaml@main
config: github://CodeMakesItGo/NeatoFx_Public/Audio/NeatoAudio50/configs/home_assistant.yaml@main

For a fully networked install with Home Assistant, RF inputs, FPP support, and audio scripts, import the complete configuration:

The current firmware configuration is fetched live from the upstream repository:

# Loading https://github.com/CodeMakesItGo/NeatoFx_Public/blob/main/Audio/NeatoAudio50/main.yaml…

Variants

All variants are selected via commented includes in main.yaml:

OptionChoices
Board revisionboards/rev2_4.yaml (Rev 2.4/2.5/2.6, default) or boards/rev2_3.yaml (Rev 2.3)
RFTX connectorboards/rftx_outputs.yaml (trigger outputs, default) or boards/rftx_inputs.yaml (4 RF inputs)

Operating modes

  • Standalone — creates its own WiFi AP. Use configs/standalone.yaml.
  • Networked — joins home WiFi and exposes the Home Assistant ESPHome API. Use configs/networked.yaml.