The code for this was intended just as a very rough prototype. It ended up working fine and the unit has not needed a restart since installation. A startup job runs a script that polls GPIO inputs. When it detects an input on a button, it sends an HTTP request to the CueServer. The lights dim to the preset.
The raspberry pi also hosts a simple web page to control the CueServer. This simple responsive app allows users to control the lights from desktop and mobile devices. The large touch targets are great for mobile users, key-bindings allow the use of the keyboard on desktop devices.CueServer Web Remote
Chief makes great projector mounts! Unfortunately custom mounts are not available for all hardware. Universal mounts work alright, but custom mounts can be manufactured for a fraction of the cost.
A 1/8" aluminum plate was used. 5 Holes were drilled and tapped for a 10-24 thread. Screws were inserted to interface with the existing mount. M4 screws and spacers allowed for a secure connection to a Optoma TH1060P. Spacers dropped the projector 8mm allowing for proper airflow. One Chief Universal Mounting Adaptor retails for over $160. I was able to make two custom fit projector plates for $50!