# ATEM Tally Lilliput RM209 + SuperSource: Complete Companion Config (6 Cams, Auto Triggers)
Hello Bitfocus community!
I’m sharing a complete setup for synchronizing Lilliput RM209 tally lights (3 panels, 2 screens each = 6 cams) with a Blackmagic ATEM, including SuperSource (ID 6000) + 4 PIP. It lights red for PGM, green for PVW, off otherwise – all auto via Companion triggers, no manual buttons. Ideal for multi-cam live with overlays.
## Overview
This setup auto-syncs tally lights for 6 Lilliput RM209 screens (3 panels, 2 each) with Blackmagic ATEM. Supports SuperSource (ID 6000) + 4 PIP. Uses Companion triggers + Python UDP bridge.
## Features
- **Auto-sync**: Red for PGM, green for PVW, off otherwise.
- **SuperSource Support**: Tally for PIP sources (red if SuperSource PGM, green if PVW).
- **Polling**: UDP bridge maintains lights stable (no timeouts).
- **Scalable**: 18 triggers (3 per cam) + 12 expression variables for 6 cams.
## Requirements
- Bitfocus Companion v4.1+. - Python 3.8+.
- ATEM switcher (IP connected in Companion).
- 3 RM209 dual panels (IPs: 192.168.1.109/110/111, ports 19522 source/19523 dest).
## Install
- **Python Bridge**: Save `tally_bridge.py`, run `python tally_bridge.py`. Test: `http://localhost:8080/?state=rouge&band=1&id=1\` (light on screen 1 band 1, red, stable).
2. **Companion Configs**: Import `expression-variables-tally-lilliput-rm209.companionconfig` (12 vars for PGM/PVW per cam) and `triggers-tally-lilliput-rm209.companionconfig` (18 triggers: 3 per cam).
3. **ATEM & HTTP**: Add ATEM connection (IP switcher). Add “Generic HTTP Requests” > Label “RM209_Tally-Bridge” > Base URL `http://localhost:8080` > Connect.
## Test
- PGM CAM1: Red on screen 1 band 1.
- PVW CAM1: Green. - SuperSource PGM + CAM1 in Box1: Red.
- Cut: Off.
## Debug
- Logs: Companion View > Logs (“expression evaluated”).
- Firewall: Allow UDP 19522/23.
- Payloads: Checksum XX DD (XX = state + 0x15 id=1, +0x9C id=2) – see how-to-analyze.txt.
## Files Attached
GitHub - tally-lilliput-rm209-setup
- `tally_bridge.py`: UDP polling bridge (off on Ctrl+C).
- Configs: Companion JSON for vars/triggers.
- how-to-analyze.txt: UDP payload guide.
If you have questions, tweaks (e.g., yellow for ISO), or similar setups, let me know!
Happy tallying! ![]()