mNo edit summary |
No edit summary |
||
Line 106: | Line 106: | ||
== Switch == | == Switch == | ||
* HP 1910-24G JE006A | * HP 1910-24G JE006A | ||
* Switch IP: 192.168.0.254 on VLAN1 | |||
* VLAN1 (Internal) | |||
- Ports 1-22 | |||
- Port 24 WHEN TAGGED | |||
* VLAN2 (External) | |||
- Ports 23-24 | |||
Master machine does DHCP on eth0.1 to range 192.168.0.0/24 for the workers, then set up forwarding between eth0.1 and eth0. | |||
== Current Status == | == Current Status == | ||
Line 165: | Line 175: | ||
Quick discovery when I eventually rewrite this: XdmX will _not_ accept screens starting with numbers - they must start with a letter! So all remote screens have to resolve from the master correctly. | Quick discovery when I eventually rewrite this: XdmX will _not_ accept screens starting with numbers - they must start with a letter! So all remote screens have to resolve from the master correctly. | ||
=== asciiflut === | === asciiflut === |
Revision as of 21:35, 7 April 2018
16 Screen Wall | |
---|---|
Participants | Nooitaf, User:zmatt |
Skills | Linux, X |
Status | Active |
Niche | Video artsy stuff |
Purpose | Fun |
Tool | No |
Location | Space |
Cost | |
Tool category |
16screen-thingy.jpg {{#if:No | [[Tool Owner::{{{ProjectParticipants}}} | }} {{#if:No | [[Tool Cost::{{{Cost}}} | }}
Since 9 screens are obviously not enough (see 9 Screen Wall 1), Petraea built a 16 screen one.
Power on and off
There is a power button on the bottom left that'll shutdown all machines when they're on, and power on all machines when they're off. The master node is key.
Power on
Button powers on master node, and this will do a wake-on-lan for the other machines.
Power off
Masternode powers off the other machines via ssh, and then will power down itself.
Machines
Default user on the master node is display. You can ssh as root into the master node on 16-wall-1.nurdspace.lan and ssh into the rest from there (192.168.255.x).
Machine 1
- Master node
- HP Compaq dc7600 Ultra-slim
- Pentium 4 3GHz
- 2.25GB DDR2 533MHz RAM (2x 1 GB and 1x 256MB), max 3x1GB
Machine 2
- HP Compaq dc7600 Ultra-slim
- Pentium 4 3Ghz
- 1GB DDR2 533MHz (1x512MB and 2x256MB) Max 3x1GB
Machine 3
- HP Compaq dc7700p Convertible Minitower
- Core2 6300 @ 1.86GHz
- 1GB DDR2 533MHz (2x512MB) (max 4x2GB)
Machine 4
- Asus 5S800-VM/Vintage
- Celeron D 2.66GHz running @ 2.8GHz
- 2GB DDR (2x 1GB, no slots free)
Machine 5
- HP Compaq dc7600 Ultra-slim
- Pentium 4 3GHz
- 2GB DDR2 533MHz (2x 1GB) max 3x 1GB
Machine 6
- HP Compaq dc7600 Ultra-slim
- Pentium 4 3GHz
- 1GB DDR2 (2x512MB, one slot free, max 3GB)
Machine 7
- HP d330 uT (DG285T)
- Pentium 4 2.6GHz
- 2GB (4x512MB, no slots free)
Machine 8
- Dell Optiplex GX270
- Pentium 4 * 2.8GHz
- 2GB DDR RAM (4x512MB, no slots free)
Switch
- HP 1910-24G JE006A
- Switch IP: 192.168.0.254 on VLAN1
- VLAN1 (Internal)
- Ports 1-22 - Port 24 WHEN TAGGED
- VLAN2 (External)
- Ports 23-24
Master machine does DHCP on eth0.1 to range 192.168.0.0/24 for the workers, then set up forwarding between eth0.1 and eth0.
Current Status
Most of the scripting has been copied over from 9 Screen Wall 1 and is semi-working. In order to complete things properly, the internal networking needs finishing.
The screen setup script has been improved to:
#!/bin/bash export DISPLAY=:0 export XAUTHORITY=~/.Xauthority DISP1=VGA-1 #sometimes VGA-0 DISP2=DVI-I-1 #sometimes DVI-0 x=1280 y=1024 function setscreens() { xrandr --newmode "$x"x"$y"_c 108.88 1280 1360 1496 1712 1024 1025 1028 1060 -Hsync +Vsync xrandr --addmode "$DISP1" "$x"x"$y"_c #Could be VGA0 - check xrandr xrandr --addmode "$DISP2" "$x"x"$y"_c #Could be DVI0 - chrck xrandr xrandr --output "$DISP1" --mode "$x"x"$y"_c --rotate normal --output "$DISP2" --mode "$x"x"$y"_c --above "$DISP1" --rotate normal } function readscreens() { raw=$(xrandr | sed 's/primary //' | grep 'connected' | cut -d ' ' -f 1,3|tr ' ' '.') for q in $raw ; do ID=$(echo $q | cut -d '-' -f 1) DIMX=$(echo $q | cut -d '.' -f 2| cut -d 'x' -f 1) DIMY=$(echo $q | cut -d '.' -f 2| cut -d '+' -f 1| cut -d 'x' -f 2) POSX=$(echo $q | cut -d '+' -f 2) POSY=$(echo $q | cut -d '+' -f 3) if [ "$ID" == "VGA" ] ; then if [ "$POSY" == $y ] ; then VGA=1 fi fi if [ "$ID" == "DVI" ] ; then if [ "$POSY" == 0 ] ; then DVI=1 fi fi done if [ "$VGA" == 1 ] ; then if [ "$DVI" == 1 ] ; then return 0 fi fi return 1 } setscreens sleep 1 while ! readscreens ; do setscreens sleep 1 done
Quick discovery when I eventually rewrite this: XdmX will _not_ accept screens starting with numbers - they must start with a letter! So all remote screens have to resolve from the master correctly.
asciiflut
(unfinished) http://github.com/nooitaf/asciiflut asciiflut can be started on the screen by starting with: ./run-asciiflut.sh
The script does some terminal magic (set font size and use settings from .Xresources).
You can connect to the server on port 1234 and send your pixels There is also a mjpeg stream you can watch on port 1235 but it will slow down the machine massively :S