DIY Audiophile Digital Media Player - RASA.

Hi All,

This is my first post on this forum, I wanted to share a project I am working on for quite sometime now.

This is a Simple to use USB and Network Media player with Remote and Front Panel Control. I am a software engineer in India who loves audio. I have been working on this in my free time for the past two years. Initially I created the unit to only work in my cabinet that has a MCU with encoder and buttons, I have now removed all these dependencies and uploaded the OS image so anyone can build this player.
(Please be Gentle, its still in beta and is being developed by Just One developer :) ).

The primary objective was to have a USB Media player that is as easy as a CD player to use and not compromise on sound quality with things like, Buffering full tracks to memory before play, not running daemons in the background till needed etc.

[IMGDEAD]http://rasaaudio.com/wp-content/uploads/2019/08/rasabox-768x409.png[/IMGDEAD]

[IMGDEAD]http://rasaaudio.com/wp-content/uploads/2019/08/PowerAmp1-768x512.jpg[/IMGDEAD]

Features
Play Hi Resolution Music on
USB Drives
NAS Drives (Windows Shares,NAS over SAMBA, NFS Volumes)
DLNA/UPNP Servers

Stream Music Directly from Moblies and PCs.
Android Devices (BubbleUPNP) and
IOS Devices (ShAirPort)
Acts like a UPNP Renderer or Wireless Speaker.
Acts like a Bluetooth Speaker.

Control the Player
From Remote. (needs MCU Board)
Front Panel Buttons and encoder.(needs MCU Board)
Android App.

You can download the image and tutorial here
DIY

Here is the video that walks thru the process of burning the image and booting this.
YouTube

App to control the player
RASA Player Remote Control - Apps on Google Play

The channel has other feature videos too.


I have tried to document my journey in a blog here,
Blog


Software Technical Details:
I am not using Roon or VolumeIO or even MPD. I am using a customized RPI3 Raspbian based distro which we developed for Factory Automation that had read only root so could be switched off directly and a separate partition for persistence. I have a SDL based Control and UI app which talks to a gstreamer based custom player. The control app takes care of mounting the SMB , NFS volumes handles Bluetooth Dongle pairing, WIFI setup etc. Since I have a LCD and a rotary encoder the entire setup can be done using the front panel setting. I also have included Shairport Sync for AirPort Support and uPNP. There is also an app in the Appstore for discovering the player in the LAN and controlling it from a smartphone.
The Web UI is built using HTML CSS and JS which is loaded in the App. The same Web UI can also be viewed from the PC too.

Hardware:
I use RPI3B+ with Allo BOSS is what I prefer for sound quality, have tested with other boards too , most I2S boards are supported. I had used SMPS for RPI and LPSU for Allo BOSS.

Would greatly Appreciate feed back and Suggestions.

Thank you,
Ravi Kiran.
 
Last edited:
Yes David, USB DACs are supported but the are not generally advised for RPI, since on the RPI, USB bus is shared with other devices which might lead to SQ degradation.

The same software stack runs on intel NUC, there we can connect to USB Dacs without Issues.

Tromperie, The app theoritically does not have a limit, The first screen discovers all the players
,once you select the IP , the app connects to that player and you can control it , you can get back to the homescreen and connect to a different player.