Set up a Squeezebox Radio
Public downloads and new-install instructions remain paused. The original playback replacement is running on one development radio; the revised installer has not completed a clean-radio installation test. Historical releases are not the current setup.
The Squeezebox software and instructions are provided AS IS, without warranty. Installation and use are at your own risk. See warranty information.
Current development setup
The tested target is a Logitech Squeezebox Radio (baby) with stock firmware 7.7.3 r16676. SqueezeRadio now supplies its own station player, presets, metadata, artwork fetcher, display and LAN API. StandaloneRadio, HTTPSProxy and StandaloneTime have been removed from the development device after a private recovery copy was verified on the owner’s Mac. No firmware flash or factory reset is involved.
The player uses the existing firmware decoder and an original ARMv5 HTTP/HTTPS helper built with licensed OpenSSL and musl. HTTPS certificate and hostname checks stay enabled. Read components, security, and runtime development.
What the revised installer does
The source installer expects a locally built runtime, CA bundle and license notices in dist/runtime; these are not a public downloadable package. It checks the hardware and required files, backs up existing applets/settings/runtime/startup files, preserves or creates the private pairing key, and installs the original application and helper. It preserves other startup commands and starts the helper before any foreground service.
The generic installer initially moves any existing StandaloneRadio, HTTPSProxy and StandaloneTime directories into its private backup outside the loader. Remove those backups from the device only after verifying an off-device recovery copy. Their preset settings remain available for a one-time data import. Existing six station choices, the last station and display theme are preserved. The installer does not reboot automatically.
Clock sync uses our own startup service around the stock firmware msntp utility and RTC.
A normal reboot is required after installing Lua changes. Never repeatedly kill Jive or disable the hardware watchdog. Keep reliable power and a verified off-device backup.
Weather and stations
applets/IndieRadio/Config.lua contains editable city coordinates and a label. The radio's weather uses Open-Meteo; its free endpoint is restricted to non-commercial use. The iPad's weather is separate and uses NWS with an editable ZIP.
Choose Squeeze Picks for the curated library or Find more stations for the Radio Browser directory view. The directory offers indie stations by country; United States is the first choice. It is a station browser, not individual-song search or on-demand playback. Streams and metadata availability can change or be geographically restricted.
Using the installed development radio
- Open SqueezeRadio → Find more stations → United States and select a station, or use Squeeze Picks.
- Once your station is selected, hold one of the six numbered buttons to save it. This replaces the station previously assigned to that button.
- Check the three-second “Preset N saved” message and station name. The standard save sound follows the radio’s sound-effects setting; the visual message works even when sounds are disabled.
- Tap a numbered button to play its saved station.
The iPad’s A few favorites tiles are a separate preset set for playback on the iPad. Saving a hardware preset does not replace an iPad favorite, and vice versa.
There is no automatic playback time limit. A stalled decoder triggers a reconnect after more than 20 seconds without audio progress. After six unsuccessful retries, the player keeps trying once a minute until the stream returns. An intentional Stop or power-off stays stopped.
Controller pairing
The LAN API remains on port 8770. Existing controller pairing is preserved. Its private bearer key is /etc/squeezeplay/userpath/indie-remote-token; do not publish it. The iPad app is separately maintained and proprietary, and can play streams directly without a Squeezebox.
Optional mDNS supports indie-radio.local; a LAN IP address also works. See API and hostname details.
Verification still required for public release
The development radio has passed preset playback, AAC/MP3 decoding, stop/resume and migration checks, with audible playback confirmed. Broader stream/playlist formats, long-duration and network-failure testing, every hardware interaction, other models and a complete clean-radio install still need coverage. Do not treat this page as a public release announcement.
Keep recovery instructions with the backup. Never erase or factory-reset a working radio or iPad to troubleshoot this software.
Squeeze Picks
The shared curated collection is called Squeeze Picks — Indie & alternative, handpicked. On iPad, open Browse → Picks. On the radio, select Squeeze Picks. The catalog includes international choices such as 95bFM, RDU and Radio One in New Zealand. Discover / Find more stations remains the separate Radio Browser search.
Both clients ship with a catalog and retain the last valid downloaded update. The iPad checks when opened or foregrounded, at most once per six hours; the radio checks at startup and every six hours. Failed updates keep the existing list. Stream fixes apply when selecting a station again, without rewriting saved preset slots or stopping current playback. Streams still require internet. HLS entries appear only on iPad.
The public catalog is at https://squeezeradio.com/catalog/stations.json and the readable list is at https://squeezeradio.com/picks/. The master and application sources remain in private repositories. This list is not a live stream-health guarantee or a grant of broadcast/artwork rights.
Squeeze Picks is now a focused indie/alternative music list, not a general community-radio directory. Each revision2 entry passed a short live audio check; that check does not guarantee uninterrupted playback or availability in every country. Saved presets remain separate from editorial Picks and are retained when an entry leaves the list.