A web frontend and backend for controlling a Dell Projector using their TCP protocol. The frontend only uses HTML and CSS, and the backend is written in Node.js. The frontend works using HTML forms and redirects on the backend. The frontend includes some optional javascript for better UX, but all buttons work without it.
This project was inspired by https://github.com/Grayda/dell-control.
- Clone the repository
- Install dependencies with
yarn install
- Run the server with
yarn start
The server can be configured using environment variables. The following variables are available:
- SERVER_PORT: 3000 (default)
- SERVER_ADDRESS: 0.0.0.0 (default)
- BEAMER_ADDRESS: '192.168.0.1' (current IP from realraum beamer is default)
- BEAMER_PORT: '41794' (default)
- DEBUG: 'true' or 'false'
- Clone the repository
- Install dependencies with
yarn install
- Run the server with
yarn dev
(uses nodemon) - Open http://localhost:3000 in your browser
- Sent command menuToggle
<Buffer 05 00 06 00 00 03 00 1d 14> to 192.168.33.41:41794
(05 00 06 00 00 03 00 1d 14)
Wireshark:
-
HDMI 1:
05 00 06 00 00 03 00 cd 13
-
PC:
05 00 06 00 00 03 00 d0 13
-
Component 1:
05 00 06 00 00 03 00 d1 13
-
Component 2:
05 00 06 00 00 03 00 d2 13
-
S-Video 1:
05 00 06 00 00 03 00 cf 13
-
Video 1:
05 00 06 00 00 03 00 ce 13
-
Volume Up:
05 00 06 00 00 03 00 fa 13
-
Volume Down:
05 00 06 00 00 03 00 fb 13
-
Volume Mute:
05 00 06 00 00 03 00 fc 13
-
Volume Unmute:
05 00 06 00 00 03 00 fd 13
-
Auto Button:
05 00 06 00 00 03 00 32 14
-
Source Button:
05 00 06 00 00 03 00 6f 17
-
FreezeOn:
05 00 06 00 00 03 00 f0 13
-
FreezeOff:
05 00 06 00 00 03 00 f1 13
-
ContrastUp:
05 00 06 00 00 03 00 f6 13
-
ContrastDown:
05 00 06 00 00 03 00 f7 13
-
BrightnessUp:
05 00 06 00 00 03 00 f4 13
-
BrightnessDown:
05 00 06 00 00 03 00 f5 13
-
ColorUp:
05 00 06 00 00 03 00 f2 13
-
ColorDown:
05 00 06 00 00 03 00 f3 13
-
SharpnessUp:
05 00 06 00 00 03 00 f8 13
-
SharpnessDown:
05 00 06 00 00 03 00 f9 13
Use tcp.payload contains "05000600000300" && ip.dst == 192.168.33.41
to filter for commands.