Silent Radiance server

Warning: technical!

Machine for wifi server

SilentRadiance started out as a silent disco system using wifi broadcasting, and you can make a server of your own.

The server currently runs on ubuntu 16.04 linux on certain laptops.

Only a few wireless cards (Broadcom BCM4311) are able to transmit at the speed required. We have found that the Gateway MX64xx series of laptops work good, as they have a 64 bit amd chip, and the correct card.

The hp laptops of the era run the cpu in a slow speed on linux, so those are not suggested.

A modern acer was also able to act as a server.

Others -

BCM4311 - for dell inspiron! HP apple Dell XPS M1710 DW1490 D620 D630 
BCM4306/3 ???
BCM4312 dell levono hp
BCM4318  hp nc6000 nc4200
BCM4306/3
Some BCM4322 hp/ + wifi card
BCM43222 apple
BCM43224 wifi/apple/dell
BCM43225 ibm/hp/lenovo
BCM43227 lenovo
BCM43228 dell dw1530 or hp 2570p or lenovo or pci-e desktop!!!!!
BCM43217
BCM43131
BCM43224 card - including macbook air
BCM43225 - laptop card

Constituents

The server acts as a sound distributer; either by playing the sound locally, or by receiving it from the line input. The pulse audio driver is used.

The server also is acting like an access point via the hostapd program, and has dhcp capabilities.

A second wireless or wired connection to the linux server will allow it to act asw a gateway and router to the internet. This helps tempermental phones to connect.

With those running, the program music_broadcast does the transmitting. The transmission is broadcast on the .255 (broadcast) ip address and can send via ipv4 or ipv6 internet protocols (ipv6 is to satisfy apple).

Usage is as follows:

Usage: ./music_broadcast   []
  where:
   is one of the following:
      IPV4_SR00_POOR - this is the standard mode for wifi drivers that broadcast at only 1Mb/s
      IPV6_SR00_POOR - this is the mode for Apple testing. IPV6, right?
      IPV4_SR00 - Probably the best quality - as it goes fast.
      IPV6_SR00 - Good for the IOS community.
      IPV4_SR01 - Second best.
      IPV6_SR01 - Only if you are ipv6

   is the ip address to broadcast.  This is usually 10.70.255.255 for ipv4, or ff01::1 for ipv6

   is the network interface name - mandatory for ipv6, and ignored for ipv4

The SR01 protocol is older, more likely to loose statistics on packets, but 20% more efficient.
The SR00 protocol does not have sequentical frames ( they skip in poor mode), and this allows 
us to transmit in 1Mb/s wifi cards.
The only card found to transmit faster than 1Mb/s is the Broadcom BCM4311 802.11b.g WLAN (rev 01)
card, found int Gateway MT64xx, MX64xx, and similar laptops.  Some HP laptops also sport this card
But the HP laptops CPU locks at a slower speed on linux platforms.

Example runs:
      ./music_broadcast IPV4_SR00_POOR 10.70.255.255
      ./music_broadcast IPV6_SR00_POOR ff01::1 wlan0
      ./music_broadcast IPV4_SR00 10.69.255.255
      ./music_broadcast IPV6_SR00 ff01::1 wlan0
      ./music_broadcast IPV4_SR01 10.71.255.255
      ./music_broadcast IPV6_SR01 ff01::1 wlan0

This always transmits on port 6969


After the program is set up, one has to set up the sound configuration to read from internal audio, or via line in. This is done by clicking upper left on the sound icon and choosing Sound Settings...
The volumne Control window comes up. Built-in Audio Analog stereo should be chosen for audio being generated by the laptop. Line-=in should be choosen to receive audio from an external line. Note that the volume control should be set very low (but not off) for the built-in audio analog stereo, otherwise speaker noise will come out about 1/2 of a second too early.
The transmission is 802.11G with the rate fixed to be high, which tricks the broadcom drivers to broadcast at that high speed as well.
One can have 3 (1,6,11) or 4 (1,4,7,11) channels transmitting concuurrently. Normally one names the SSID as silent1, silent2, silent3, silent4.
This is just a brushing of how to use and set up a server. There is a more technical document here.