RS232 Projector Controller: Difference between revisions

From Chaosdorf Wiki
(add github link)
Line 9: Line 9:
|annoying=notify
|annoying=notify
|has label=Yes
|has label=Yes
|git=https://github.com/chaosdorf/projector-controller-iot}}Controls the [[Beamer Hackcenter|projector]] via its RS232 interface. Integrated into [[HomeAssistant]] via MQTT.
|git=https://github.com/chaosdorf/projector-controller-iot}}Controls the [[Beamer Hackcenter|projector]] via its RS232 interface. Integrated into [[HomeAssistant]] via MQTT. Source code on [https://github.com/chaosdorf/projector-controller-iot GitHub].


=== Location ===
=== Location ===

Revision as of 18:00, 23 September 2025

RS232 Projector Controller
Projector Controller Mounted.jpg
Ort Hackcenter
Besitzstatus Leihgabe
Kontakt ente
Git-Repo https://github.com/chaosdorf/projector-controller-iot

Controls the projector via its RS232 interface. Integrated into HomeAssistant via MQTT. Source code on GitHub.

Location

Attached to truss next to projector in Hackcenter.

Technical Details (see git repo)

µC: ESP32-S3-WROOM with 8MB flash, SP3232EEN-L/TR RS232 transceiver

Programmable via UART, JTAG, and theoretically USB (the data lines are swapped for this, and would need to be fixed with a knife and soldering iron)

MQTT Topics

Commands
Topic Arguments Description
/projector-controller/cmd/power ON/OFF Sends the main power commands
/projector-controller/cmd/(menu|enter|up|down|left|right|back) Emulate keypresses
/projector-controller/cmd/raw Binary data Sends raw bytes over serial, framed with [0x02, [...data] 0x03]
Status
Topic Values Description
/projector-controller/availability online/(offline) Publishes the controller's availability every couple of seconds
/projector-controller/stat/power ON/OFF Publishes the projector's power status (doesn't work)


Limitations

DO NOT SPAM POWER COMMANDS, IT BREAKS EVERYTHING

When the projector receives an invalid command—e. g. power on when it's already powered on—it just ignores all future commands until the serial cable is yanked and replugged. There is a QPW command for querying its current power status, the projector just does not seem to respond to it in the way mentioned in the manual.[1]

References