INTERNET RADIO / TICKER / WEATHERSTATION

by hansiart in Circuits > Raspberry Pi

1011 Views, 5 Favorites, 0 Comments

INTERNET RADIO / TICKER / WEATHERSTATION

radio_max_1.jpg
radio max

This is a very good internet radio, but more than that, it is a weather station, a ticker and a domotica system as well.

And it is:

  • very cheap
  • works really good
  • very easy to build and operate
  • portable due to the easy connection to wifi
  • No programming or soldering skills needed.

Just buy the components, connect some wires between them and thats it!. Oh, and burn an image of the radio operating system on an sd card. It would be a nice birthday present as it is very easy to operate. This radio has a lot of nice features. All controllable via a webinterface.

There is a.o.

  • a 10 channel equalizer,
  • a timer and a domotica system.
  • You can easy compile your own list of favorite stations.
  • Artists / Songtitles are shown on the display and the webpage.
  • A higly configurable ticker with lots of options.
  • It can show pressure, moisture and temperature.

Watch the simple video to get an idea.

Supplies

  • What you need is:
  • a Raspberry zero W
  • a 5v micro usb power supply or build your own
  • PCM5102 I2S DAC GY-PCM5102 (ebay)
  • a BME280 sensor
  • 4 or 5 cascaded max7219 ledmatrix display (ebay)
  • 8gb micro sd card
  • minimal 9 dupont wires
  • a powered computer speaker set (second hand)

The rest is optional.

INTERNET RADIO / TICKER / WEATHERSTATION / DOMOTICA SYSTEM

rpiradio_max_homepage.jpg
test_1.jpg

SUMMARY OF THE WORKING

The radio is completely controlled by webinterfaces, your phone (or other wifi enabled device) is the remote control. The only (optional) physical control element is a button or touchpad. The radio plays streams that are provided bij Internet Radio Stations. There are uncountable stations to listen to, a lot of them play only music of a certain genre so you can always listen to your favorite music.

So the radio has to be connected to your wifi network. I made that a simple operation that anyone can do. If the radio can't connect to a wifi network, it opens an accesspoint automatically. If you connect to that and then you browse to http://192.168.4.1 you'l enter the configpage. Here you can enter your wifi credentials. When done it reboots and will connect. Once connected it shows the ip address on the display. Just browse to this address and your done. Almost as simple as connecting your smartphone to a wifinetwork.

One of the first things to do now is expanding the filesystem to the size of your sd card. This is also a simple task, just click "expand rootfs" under the system menu and see what happens. When ready, you need to reboot.

Now you can explore the many features this radio has. When you connect a good pc speakerset you can enjoy a cristalclear sound that can be set to your own preferences with the 10 channel equalizer.

DOMOTICA

This is beyond the scope of this instructable but i have to mention it: I have this radio in use as a complete domotica system that works perfectly together with google home. I can voice-conrol many lamps and scenes in my house. And the radio itself ofcourse. Only an extra investment of about 13$ is needed to build an RFlink Gateway and plug it into the usb. The system is already up and running. On how to do this, a lot of information is available on the internet.

STEP 1 BUILDING IT

interior_1.jpg
rpi_zero_2_max.jpg
CIMG4624.JPG
touchsensor.jpg

used abbreviations:

DEVICE: desktop pc, laptop, tablet or Phone with WIFI

RPI: The raspberry zero W

The radio will work without the other hardware so you can test with only the RPI. It is however recommended to connect the display so that you can see what's happening and find out your ip address.

Optional, when you have some soldering skills, you can add a standby led, (is on when the radio is out) a pushbutton or a touchpad and / or a power board that allows switching the power of the speakerset. When you use a touchpad, you can connect an led to gpio20 that lights up when a touch event took place.

PREPARATION

You start with downloading and burning the image on an sd card. You do this by following the instructions here: SD CARD BURNING INSTRUCTION

Note the SD card requirements! When nothing seems to work, suspect the SD-card.

Below you'l find a link where you can download the sd-card image file.

update 9 march 2021

I made a new image available that has some improvements. Most of the critical scripts are replaced by c programs that improved the reaction speed. Some forgotten translations are corrected. The infopage now displays the size and usage of the sdcard.

DOWNLOAD IMAGE FROM ONEDRIVE

To verify that all is working, i downloaded the image myself from onedrive (5 minutes), unzipped it an burned it on an SD-card. I used win32diskimager. No problem what so ever.

FIRST TEST

We start with testing the software. Connect at least the led matrix. Insert the sd card and power up. You will see the led on the RPI flash just a few times. For energy saving it stays off further on. After some time (be patient, the raspberry is not very fast) you get some messages on the display. It tells you that an accesspoint is opened. Now go to your DEVICE and open the network configuration. You will see a wifi network called "radioAP". Connect your DEVICE to this network with passwd "rpiradio". Now open your browser and go to 192.168.4.1 , you will enter the config portal. Here you can provide the network credentials. When done, save and reboot. The ip address is shown on the display. Connect your DEVICE back to the normal network and check that you can reach the webpage of the radio.

If you plan to use (optional) a button or touchpad, you could connect them now and test if it works. The drawing shows what wiring is needed.

If you have the dac connected you can plug-in the headset of a Phone. Now you have a fully operational radio. The controls on the webpage are self-explanatory. Where needed you can click a help link. TIP: The dac and the touchpad all have leds on board that eat energy. Not much but 24/7 yearly…. I cut them from the board, there is light pollution enough in this world.

STEP 2 THE POWERUNIT

max_power.jpg
power_1.jpg

When you power the raspberry with usb, you can connect the vcc of the other hardware directly to the raspberry. But you will be short of one 5Volt pin if you have the display, the touchpad and the dac connected. You will have to split one of the dupont cables.

If you use another 5v power supply, one of the two 5v pins is the Vin now. Now you are short of 2 powerpins. In this case you can multiply one dupont cable to 3.

When you have some soldering skills you could build this power unit. It can also control the power of the speakerset so that it is not eating unnecessary power.

In the scheme you can see what components are involved.

The AC-DC converter is 5v - 700 ma (3.5W). These can work with various AC voltages AC 85 ~ 265v 50/60 hz

I used stripboard to solder the components on.

I mounted a wall outlet on the back of the housing.

STEP3 THE ENCLOSURE

CIMG4618.JPG
CIMG4620.JPG
CIMG4622.JPG

The enclosure is fairly easy to make out of some MDF sheet. This material is easy to saw and to cut. The opening for the display i cut out with a hobby knive. When you plan the usb, touchpad or tactile button at the front you have to cut out an opening for these too.

I fit the parts together with wood glue and keep them in place with some hotglue that i can easy remove afterwards. Then i cut away the excess material and remove the hotglue. After sanding the edges i painted the in- and outside with expoxy resin. This get sucked into the MDF and the joints, making it strong.

Now you can sand the front and the hood very smooth and paint it with acrylic paint.

I have a 3d printer so i can print decorative frames for the display and led, button and USB. You can also build it in an antique radio, this might look better in your house interior.

Troubleshooting

The raspberry won't boot up.

At boottime, sometimes all of the leds in the display are lighted up. This is a bug in the display library. I could not find a solution for that. Anyway, when this happens, it is eating maybe too much power. Just pull the plug and try again.

We have 5 * 64 = 320 leds, when fully powered this consumes 320 * 0,02A = 6,4A so when your powerunit can deliver some 320W you should never experience this problem.