Logitech Squeezebox receiver with flashing red light

squeezebox_red.jpgGot a Logitech squeezebox receiver the other day and after plugging it in to my switch, I assumed it would just acquire an IP (using DHCP) and just start working.
After 2 hours of changing network cables, restarting various network devices and a little bit of cursing I retreated to Google for some help.
Turns out that the Squeezebox receiver is not to be used on its own. It is to be used together with a controller and the controller is required for initial configuration.
The only reason Squeezebox receivers are sold on their own is for people that want additional receivers for their rooms.
In my case I knew there are mobile applications that can control the music playing or that one can even connect to the web interface of the Squeezebox Server.
The controller is twice the price of a receiver and being the cheapskate I am I didn’t want to fork out extra money just to configure my receiver.
Two options:
1) Borrow a controller from a friend
2) Use Net::UDAP to find your SqueezeBox receiver on the network and to configure it
Net::UDAP is a Perl module so if you are not familiar with Perl programming just download the following executable:
UDAP command shell
For a wired configuration (not WiFi), you can use the below command sequence:

discover
conf 1
set interface=1
save_data
reset

Followed by:

discover
conf 1
set squeezecenter_address=[ip address of your computer running squeeze server]
save_data

For a wireless configuration use instead:

discover
conf 1
set interface=0 lan_ip_mode=0 lan_gateway=192.168.3.1 lan_network_address=192.168.3.10 lan_subnet_mask=255.255.255.0 primary_dns=192.168.3.1 wireless_SSID=3Com wireless_wep_on=1 wireless_keylen=1 wireless_mode=0 wireless_region_id=14 wireless_wep_key_0=[WEP key] wireless_channel=11 squeezecenter_address=[ip address of your computer running squeeze server]
save_data
reset

You will obviously have to be connected to the receiver via a network cable to be able to configure it.
Type help or fields to list all device fields along with some documentation of the values they can take.
Check out the Net::UDP project page for more information and don’t forget to donate if this solves your problem!