Moode Audio Player for Raspberry Pi

Hello Tim,

Thank you so very much for Moode! I haven't enjoyed music as much since i bought my first compact discs. Everything sounds perfect, so yeah, thanks!

I have however one big issue, which is that I cannot copy files from my Mac laptop over the network to the USB stick inserted in the moode-pi. I tried almost everything, hacked /etc/fstab in several ways to mount the (vfat) stick properly, changed permissions to the /media/USB directory where the stick gets mounted and spent quite some time experimenting with settings in smb.conf, unfortunately without any success. The laptop keeps telling me that I don't have permission to see the contents of the USB stick. I can access the internal SD without problems so theoretically it should be possible.

Do you have any clues or tips for me how to copy files over to the USB stick?

Thanks,
Rob
 
Hello Tim,

Thank you so very much for Moode! I haven't enjoyed music as much since i bought my first compact discs. Everything sounds perfect, so yeah, thanks!

I have however one big issue, which is that I cannot copy files from my Mac laptop over the network to the USB stick inserted in the moode-pi. I tried almost everything, hacked /etc/fstab in several ways to mount the (vfat) stick properly, changed permissions to the /media/USB directory where the stick gets mounted and spent quite some time experimenting with settings in smb.conf, unfortunately without any success. The laptop keeps telling me that I don't have permission to see the contents of the USB stick. I can access the internal SD without problems so theoretically it should be possible.

Do you have any clues or tips for me how to copy files over to the USB stick?

Thanks,
Rob

Hi Rob,

USB storage devices are auto-mounted by disk label to /media folder for example if USB stick has label "MyDiskLabel" then you end up with /media/MyDiskLabel as the mount point.

There is the following symlink
/var/lib/mpd/music/USB -> /media

And samba share
/var/lib/mpd/music/USB

Connecting to //moode/USB causes error apparently due to Samba using the permissions of /media instead of /media/MyDiskLabel. I'm not exactly sure about this though.

Try connecting directly to //moode/USB/MyDiskLabel

-Tim
 
Zootalaws,

I woke up this morning and gave myself a dope-slap. You probably know most of this already; I just want to establish I'm capable of thinking once I have my coffee 🙂

1) a hostname in the .local pseudodomain will not be resolved simply because I change DNS servers. mDNS is a separate service to begin with and .local is just a clever hack to get to it. Android includes libraries which allow one to resolve mDNS queries (and there are Android apps which use them; see below) but Android doesn't use them when an app like any of our web browsers asks for it to resolve a hostname 😡

2. changing DNS servers won't fix the underlying problem that Android doesn't use the information provided by most DHCP servers via option 15-Domain Name and option 119-Domain Search. Android just passes the naked hostname like "moode" to the server and you know what happens next.

3. mDNS-aware Android apps: I don't know of any mainline web browser for Android which is mDNS aware. However, there are a number of Android zeroconf browsers. Two I've used are Bonjour Browser and Zeroconf Browser. They tell me more than I usually want to know about services being offered on my LAN but they also tell me the IPs of my Moode players. Not the only way to play---I often use a traditional local network scanner like Fing---but the zeroconf browsers prove the underlying Android libraries work.

It's been 8 years since the first release of Android and Google remains unresponsive to the deafening outcry of users to make Android play well with Apple and Microsoft technology. The forum threads keep getting longer and longer. You'd think by now a Chrome-alternative like Firefox or Opera would fill the void. Opera, for example, now has its own VPN capability built-in, which shows they're capable of bypassing Google's DNS; one wouldn't think mDNS is a big step for them.

Regards,
Kent

Different versions of Android OS have different levels of support for mDNS, and yes, it's an on-going annoyance that they are so unresponsive to what people actually want. What they have done with Jellybean and Lollipop and on is to support NSD (network service discovery) which effectively does the same thing and should resolve Zeroconf names, but as with all things Android, if the developers don't use the APIs available to them, the fact that the OS supports a function doesn't matter, if the app doesn't use those functions.

It would be a worthwhile effort to download all the web browsers you can and test them for Zeroconf support - it may be that someone has built an app that supports it, but we aren't aware of that.

So, there are two obstacles: a version of android that supports Zeroconf and an app that supports Zeroconf.

Android has actually produced APIs that support Bonjour, mDNS, etc., but unless they are used the only way to resolve a non-numeric is address is to create a host table entry and point your android device to the local router, whether that's by spoofing using a hard-coded route or by manually assigning an IP address to your handset with a specific DNS server entry.

Currently these APIs are available.

better-zeroconf (JmDNS)
RxDNSSD (Apple mDNS)
RxBonjour (Apple mDNS)
ZeRxConf (JmDNS + Android native API)
android-mdns (Apple mDNS)

Which is why you can download a Zeroconf browser (not web browser) or Bonjour browser (again, not a web browser) and see your local services enumerated, but the web browsers (chrome, dolphin, etc.) don't resolve the address.

IIRC Bonjour browser will allow you to highlight the service and open the IP address in chrome, so a two-step solution that works but is less than elegant.

In conclusion (post-waffle) it looks like there is no current method for resolving moode,local in a browser address bar and have it deliver a page, whether you spoof the google dns or not, because no matter what you do, network-wise, nobody has built a Zeroconf-aware web browser that I'm aware of - but then I moved away from android over a year ago and won't be going back unless there is a pressing reason. (One reason would t my father demands I support his GPS-based autopilot, which I have been trying to avoid... it's based on android and his control app is an android app - if he gets push-back from his customers, he just bundles a free android phone with the device and that usually keeps them happy. I don't want to try and port all his apps to iOS, the cost alone precludes that as an option).

Apart from those doing development where their network configuration and moode players are changing, it would seem that the most sensible method is to hard-code an IP address in moode and create a desktop' bookmark on your phone. That's what I would do.

Or get an iOS phone, which does it natively.
 
Hi,

Nope. Home networking is the deep end of the pool where the alligators live.

-Tim

In my experience it's a shallow puddle, genetically... 😀

Maybe people should cast their minds back a couple of versions where the way to configure your player was to connect it via a piece of Ethernet, locate the address and then go in and manually change your wifi/network settings.

Unless I'm mistaken, Moode was the first of the Pi music players to offer ota wifi configuration and was heralded as such, only to have it become not-good-enough for elderly technophobes to navigate.

My Dad is 85, I gave him one and a printed page of instructions, including how to connect it to his router's samba share and he didn't ring me back until he wanted to know what oversampling was and would it make any difference to his enjoyment.

My wife, the teacher, stumbled and fell, but mostly because she over-analyses things and got herself all turned around by failing to follow certain steps (like joining the AP).

If you write it up simply enough, it's a remarkably simple process and should work in nearly all implementations.
 
Unless I'm mistaken, Moode was the first of the Pi music players to offer ota wifi configuration and was heralded as such, only to have it become not-good-enough for elderly technophobes to navigate.

This elderly technophobe has it hard enough configuring it for ethernet let alone any of that new-fangled wifi stuff..😱😀

Today my EOP devices decided they had had more than enough of playing nice..🙁 After 3 years of sterling service they now cut out totally whenever new appliances are plugged into the mains.

Tried to photograph some Christmas stock I was sending out and as soon as I plugged in the lights the Moode webradio stuttered to a halt only to resume when the lights were unplugged (not turned off but unplugged). Tested the wiring but all is ok. Other appliances are causing the connection to drop too..

Oh well...might just have to give this wifi a try.....or wait ! I've got 30 metres of cat6 somewhere ??? Might be a trenching job for the new year break. 😀
 
Your NAS is using outdated security protocols for samba. Can you update it to a more modern version, one that uses ntlmssp? That is the default for nearly all up-to-date OSs

I know that doesn't answer your question about moode saving your options, but it's another approach at a fix.

What NAS are you using?

I'm using an old Apple Time Capsule as the file server. It is also a repeater for my Apple Airport Extreme router/wifi. No way to choose protocols AFAIK. However, as I posted later, I re-burned the SD card and started over, and it worked this time, accepting the 'sec=ntlm' command.
 
Hi Tim,
Is it possible to use Moode on Odroid? Do you plan to start support for this platform?
I'm asking because Odroid has the benefit on not sharing the USB with the ethernet.

...in addition the odroid boards have both clocks- one for 48- and one for 44khz multiples. Generally it's the much better platform for audio- at nearly the same price.

It would be really great to have a Moode- version for Odroid- boards one day;-)

Greetingz, Robert
 
Shairport

Hi,

I just upgraded to 3.0 from 2.7. Shairport/ Airplay has worked flawless before but since I upgraded it has started to drop out so it´s unusable. What could be the problem? I haven't change anything else. it´s connected with cable not Wifi.

Best regards,
L
 
This elderly technophobe has it hard enough configuring it for ethernet let alone any of that new-fangled wifi stuff..😱😀

Today my EOP devices decided they had had more than enough of playing nice..🙁 After 3 years of sterling service they now cut out totally whenever new appliances are plugged into the mains.

Tried to photograph some Christmas stock I was sending out and as soon as I plugged in the lights the Moode webradio stuttered to a halt only to resume when the lights were unplugged (not turned off but unplugged). Tested the wiring but all is ok. Other appliances are causing the connection to drop too..

Oh well...might just have to give this wifi a try.....or wait ! I've got 30 metres of cat6 somewhere ??? Might be a trenching job for the new year break. 😀

EOP being Ethernet over power?
 
Has anyone noticed they process upexplorer at 100℅. I am trying make it reproducible, but at the moment I have rebooted 2 different pi's with upexplorer at 100℅

To expand upon this I have had this happen to me on several occasions with both a Pi3 and a PI2.

I originally though this was an issue with a particular set of FLAC files which are 24bit 192KHz but I did not play these last night on the PI3.

Basically last night I left both PI's on but not playing, this morning when I checked them them the CPU in the Moode Web front end was showing as 30% and CPU temp as 56 degrees C. Running TOP showed upexplorer at 100%.

The only other thing I can think of at the moment was serving up tracks from an AssetUPNP instance

Systems
PI3 Wired with Digi + out to Marantz 24/96 DAC
I have set SOX to oversample to 96KHz and also enable the Advanced Kernal with 24/384 over sampling.

Pi2 , Edimax Wireless and Iqaudio Dac +
Normal and Advanced kernel with no oversampling and with 24/384 oversampling.
 
To expand upon this I have had this happen to me on several occasions with both a Pi3 and a PI2.

I originally though this was an issue with a particular set of FLAC files which are 24bit 192KHz but I did not play these last night on the PI3.

Basically last night I left both PI's on but not playing, this morning when I checked them them the CPU in the Moode Web front end was showing as 30% and CPU temp as 56 degrees C. Running TOP showed upexplorer at 100%.

The only other thing I can think of at the moment was serving up tracks from an AssetUPNP instance

Systems
PI3 Wired with Digi + out to Marantz 24/96 DAC
I have set SOX to oversample to 96KHz and also enable the Advanced Kernal with 24/384 over sampling.

Pi2 , Edimax Wireless and Iqaudio Dac +
Normal and Advanced kernel with no oversampling and with 24/384 oversampling.

Hi,

Thats odd.

upexplorer is used for fetching cover art from UPnP song files. It queries the underlying UPnP network thats established when the UPnP renderer is started.

Below is the command thats run from within Moode. If u are using something other than "Moode UPNP" as the renderer name then substitute it.

Try testing from cmd line

sudo killall upexplorer
sudo upexplorer --album-art "Moode UPNP"

-Tim
 
Last edited: