Moode Audio Player for Raspberry Pi

Hi,

Moode 2.7 release image will use Linux kernel 4.4.19. This + MPD 0.19.19 have been running really well in my test environment and they contain a lot of fixes and improvements 🙂

The 4.4.19 kernel also contains additional I2S overlay drivers for new HAT and Zero audio devices coming on the market.

Moode 2.7 will include support for the devices below providing I get all the necessary config and device description information from the vendors.

Dion Audio LOCO
IQaudIO Digi
JustBoom DAC, AMP and Digi
Mamboberry LS DAC+
Red Rock DigiDAC1

Regards,
Tim
 

Attachments

  • moode-r26-mpd-kernel.png
    moode-r26-mpd-kernel.png
    275.7 KB · Views: 332
Thanks for the speedy replies everybody.

Kent, my secret desire is to have a 500gb m.2 usb3 enclosure to hold my entire flac collection. I like the moode gui a lot better using local data vs using moode as an upnp endpoint. But, I've only been using moode a couple weeks.

I'm still working out some money priorities. Number one being to donate, which I will do in a few minutes.

In the vain of getting wiffy points; I have spent the better part of my saturday configuring Openelec to play slide shows on my PI3 from the dnla server in the other room.

The original idea was to run a Openelec slideshow while pumping music out through speakers; then reboot to Moode for headphone usage when the rest of the clad wants to watch TV in the other room. imho playing music and a slideshow in openelec is a pain, Trying to use it for something it isn't designed to do. Openelec is a home theater that does a couple other things. Moode is a music player.

After today's openelec suffrage I'm inclined to build another house PI for Moode only; then clone it for a work system with a m.2 enclosure floating between the two.

Tomorrow I'm going to try and get moode running on a PI zero. However at the end of the day I think it may be easier to just buy another PI3 moode is so easy to configure on a pi3. Getting wifi to work on a zero looks like it could be a hassle.
 
[Moode 2.7 release image will use Linux kernel 4.4.19. This + MPD 0.19.19 have been running really well in my test environment and they contain a lot of fixes and improvements 🙂
/QUOTE]
Hi Tim - sounds great - thanks!
Do you know if any of the new overlay drivers fixes and improvements will benefit the i2s Es9018K2M boards (as per this link ES9018K2M ES9018 I2S input DAC decoder board Support IIS-32bit 384K / DSD64 | eBay
I got this from a Chinese supplier recently so no support, and initially tried it in Moode with a ES9023 setting that you have already included. It would only work on 16/44 and gave stuttering and very bad distortion on anything else. It does work on the RPI-DAC setting up to 24/192. It looks like it needs some specific setting/drivers/overlays to work as intended, and maybe to allow the internal volume control. Any thoughts? Thanks for all your hard work Adrian
 
Do you know if any of the new overlay drivers fixes and improvements will benefit the i2s Es9018K2M boards (as per this link ES9018K2M ES9018 I2S input DAC decoder board Support IIS-32bit 384K / DSD64 | eBay
I got this from a Chinese supplier recently so no support, and initially tried it in Moode with a ES9023 setting that you have already included. It would only work on 16/44 and gave stuttering and very bad distortion on anything else. It does work on the RPI-DAC setting up to 24/192. It looks like it needs some specific setting/drivers/overlays to work as intended, and maybe to allow the internal volume control. Any thoughts? Thanks for all your hard work Adrian

I saw your original post and ordered one of these. Mine plays the 24BIT/352.8kHz Britten test file from...2L High Resolution Music .:. free TEST BENCH using the RPI-DAC setting. (24/96 is enough for my needs however...🙂 )
I will try the internal volume control tomorrow and report.

The same ebay store has a usb to i2s that would enable DSD ....?
http://www.ebay.co.uk/itm/NEWEST-XM...tput-support-DSD-for-es9018-DAC-/331882193789
 
Last edited:
MPD troubles with NAS

Hi, guys.

I'm trying to get my 2TB NAS work with Moode 2.6. I'm connecting to it with this mount flags: cache=strict,ro,dir_mode=0777,file_mode=0777

MPD Update starts and freeze. The library path contains only 8 folders (12 GB) with music. I see in Moode Audio only 7 folders and that's all.I was looking for this "Updating" for 2 days but nothing happened.

When the drive is connecting via USB everything is alright.
I've tried Raspberry PI 3 with libreelec as Samba NAS and Openwrt router with Samba. It doesn't matter.

Could you help me please? Runeaudio has cracks during Airplay playback and the new Volumio doesn't see folders even on my Windows Share, on libreelec NAS neither and is very slow on my Raspberry PI B.

Which information should I get via SSH and provide?
 
[Moode 2.7 release image will use Linux kernel 4.4.19. This + MPD 0.19.19 have been running really well in my test environment and they contain a lot of fixes and improvements 🙂
/QUOTE]
Hi Tim - sounds great - thanks!
Do you know if any of the new overlay drivers fixes and improvements will benefit the i2s Es9018K2M boards (as per this link ES9018K2M ES9018 I2S input DAC decoder board Support IIS-32bit 384K / DSD64 | eBay
I got this from a Chinese supplier recently so no support, and initially tried it in Moode with a ES9023 setting that you have already included. It would only work on 16/44 and gave stuttering and very bad distortion on anything else. It does work on the RPI-DAC setting up to 24/192. It looks like it needs some specific setting/drivers/overlays to work as intended, and maybe to allow the internal volume control. Any thoughts? Thanks for all your hard work Adrian

Hi Adrian,

Not much that can be done unless the designer/manufacturer of this DAC provides a driver and support...

ES9023 and PCM1794A (RPI-DAC) chips don't provide hardware volume control so I'd assume that the drivers used for these chips, hifiberry-dac and rpi-dac respectively are not coded to expose h/w/volume capabilities.

-Tim
 
Hi, guys.

I'm trying to get my 2TB NAS work with Moode 2.6. I'm connecting to it with this mount flags: cache=strict,ro,dir_mode=0777,file_mode=0777

MPD Update starts and freeze. The library path contains only 8 folders (12 GB) with music. I see in Moode Audio only 7 folders and that's all.I was looking for this "Updating" for 2 days but nothing happened.

When the drive is connecting via USB everything is alright.
I've tried Raspberry PI 3 with libreelec as Samba NAS and Openwrt router with Samba. It doesn't matter.

Could you help me please? Runeaudio has cracks during Airplay playback and the new Volumio doesn't see folders even on my Windows Share, on libreelec NAS neither and is very slow on my Raspberry PI B.

Which information should I get via SSH and provide?

Just found a solution. Really simple. On NAS: fsck.ext3 -y dev/sda1
HDD had errors in fs.
 
Not much that can be done unless the designer/manufacturer of this DAC provides a driver and support...

ES9023 and PCM1794A (RPI-DAC) chips don't provide hardware volume control so I'd assume that the drivers used for these chips, hifiberry-dac and rpi-dac respectively are not coded to expose h/w/volume capabilities.

If this "ebay" Chinese board is in hardware mode, ie. only BCLK, LRCLK, DATA reqd, then it's supportable. The problem with supporting the on-chip volume control and other functionality, means having it software connected, using I2C..... And there is an elephant in the room straight away, in as much as the datasheet that provides the register info for software control is only available under NDA and ESS have "forbidden" an open source driver which exposes that register info obtained from the NDA'd datasheet. So although there are drivers already floating about for the 9018 variants, I doubt one will ever be provided with the "official" RPi kernel, and any distributor of an open source distribution who ships one is likely to find themselves being contacted by ESS legal! 😉
 
Thanks for the speedy replies everybody.

Kent, my secret desire is to have a 500gb m.2 usb3 enclosure to hold my entire flac collection. I like the moode gui a lot better using local data vs using moode as an upnp endpoint. But, I've only been using moode a couple weeks.

...

Tomorrow I'm going to try and get moode running on a PI zero. However at the end of the day I think it may be easier to just buy another PI3 moode is so easy to configure on a pi3. Getting wifi to work on a zero looks like it could be a hassle.

That's a nice looking enclosure. Note that RPis have only USB2.0 ports. This limits the maximum data transfer rate to about 1/10 of that possible with pure USB3.0. Nevertheless, the USB3.0 controller in the enclosure should actually hit that rate consistently, something most USB2.0 flash controllers do not. YMMV.

500GB is a walk in the park. Just be sure your file system is clean in the Linux sense (see slr's recent posts) and the music directory/filename structure passes muster with mpd (see past threads about problems with the update/indexing process failing part way through a collection).

I have no experience with the RPi Zero. The RPi3B is very convenient but don't forget that its onboard WiFi antenna can be an issue. A metal case will act as a Faraday shield, for example. Similarly, I had trouble placing an open RPi3B in an audio cabinet where other metal boxes---amp, CD player, etc---and a rat's nest of wires were affecting the wireless communications with my rather distant Access Point. I had to disable the onboard WiFi adapter and put a conventional WiFi USB adapter on the end of a short USB cable to get it into the open. For that reason, I dropped back to an older RPi I already had; I expect an RPi Zero would have served just as well. I can't easily run Ethernet cable to the cabinet and while Powerline Networking would work fine here, I don't want to spend the extra bucks.

Regards,
Kent
 
If this "ebay" Chinese board is in hardware mode, ie. only BCLK, LRCLK, DATA reqd, then it's supportable. The problem with supporting the on-chip volume control and other functionality, means having it software connected, using I2C..... And there is an elephant in the room straight away, in as much as the datasheet that provides the register info for software control is only available under NDA and ESS have "forbidden" an open source driver which exposes that register info obtained from the NDA'd datasheet. So although there are drivers already floating about for the 9018 variants, I doubt one will ever be provided with the "official" RPi kernel, and any distributor of an open source distribution who ships one is likely to find themselves being contacted by ESS legal! 😉

I'd read that about ESS licensing. They must have magic particles in their chips given such secrecy.

Its only 9018 in their lineup that has on-chip h/w volume correct?

-Tim
 
I searched the forums and couldn't seem to figure this out - cover art not appearing on all my ripped flac files. I ripped them using media monkey but I guess I didn't tag them with the artwork. So I added the artwork in a couple to try it out. They are folder.jpg in the folder containing the album. Now instead of the moodeaudio logo appearing in playback I get the album art not found message.
Any guidance would be apprecaited.

Thanks,

George
 
Got Moode running on a PI Zero this morning. Couple bumps in the road, but everything is working now.

Biggest bump is nothing happens as quickly as it does on my PI3.

Used a usb/lan dongle to hook up a usb (schiit wyrd/modi) dac, usb hard drive and usb edimax wifi dongle.

Stumbling points for me, an inexperienced user.
Must use a 2.5 amp power supply, note: my dac is self powered. WiFi and disk are not.
I had never setup a usb dac in moode before. don't forget to set audio to usb after configuring the dac.
Use plus usb voltage.
Got wifi working using the lan connection entering sid and password.

as a upnp renderer sound kind of sucks because of the usb dac, i'm guessing. Local music and radio sounds great.

I'm going to buy another zero for music, returning this one back to pi-hole duties and my PI3 to headphone duty.

Very nice piece of software! Donation made.
 
Hi,

Moode 2.6 2016-08-28 update available.

READ CAREFULLY

Installing this update package followed by manually updating the kernel to 4.4.19 via the rpi-update command below will effectivly upgrade Moode 2.6 to Moode 2.7. If the updated kernel is not installed then NO SUPPORT will be provided!

sudo rpi-update 818a860cf690d64c62d3227ad9c36d5867a671c2
sudo reboot
sudo rm -rf /boot.bak
sudo rm -rf /lib/modules.bak
sudo rm -rf /lib/modules/4.4.8+
sudo rm -rf /lib/modules/4.4.8-v7+

The update package can take several minutes to complete due to components that are downloaded and installed from Jessie repo. After pressing INSTALL, if the message "Software update complete, Reboot required" appears immediately, just ignore it and wait several minutes. There is bug in Worker that prevents System config screen from auto-waiting before displaying the completion message. The bug is fixed in this update.

The update process can be monitored by ssh TOP to determine when its ok to reboot. Look for apt-get and mandb running. When they are both finished and no longer appear in list, its safe to reboot.

1) One of the updates installs HTML files that revert the knob colors to Emerald. Use Customize to set another color, then back to your favorite color, then refresh.

2) The wonderful Crossfeed DSP plugin is included in this update and there is a config change to enable Airplay over AP mode. IMPORTANT: To establish Crossfeed/MPD outputs and Airplay over AP mode its necessary to perform the steps below after reboot.

a) MPD config, APPLY
b) System config, set Crossfeed DSP to 725 Hz 4.5 dB then set it back to disabled.
c) The config can be verified by running the cmd below from ssh session

pi@moode:~ $ mpc outputs
Output 1 (ALSA default) is enabled
Output 2 (ALSA crossfeed) is disabled
pi@moode:~ $

d) Network config, APPLY
e) This will update the configuration for Airplay over AP mode

3) Several configuration changes are included that provide improved support for loading large collections into the Library panel.

4) New commercial-free, listener-supported radio stations and support for exciting new I2S audio devices are included in this update, and a new universal rotary encoder driver that updates Moode volume knob and supports both hardware and software volume.

Finally, it's always a good idea to BACKUP the SD Card before installing updates 🙂

Enjoy!

Regards,
Tim

Package contents

-- New Features

NEW: In-place software updater
NEW: Crossfeed DSP for headphone listening
NEW: Support Meridian Explorer 2 and MQA
NEW: Cache PHP session data using memcache
NEW: Restart.sh script for reboot/poweroff
NEW: Setting to turn off Pi-3 WiFi/BT adapter
NEW: Sys config settings for kbd and layout
NEW: Universal rotary encoder driver

-- Media

NEW: AddictedToRadio - Quiet Storm
NEW: Buddah Radio
NEW: Positivly Baroque
NEW: Radio FM4
NEW: Audiophile Lounge
NEW: Audiophile Rock-Blues
UPD: Zen FM stream link to mp3
UPD: Audiophile Baroque stream link
UPD: Audiophile Classical stream link
UPD: Audiophile Jazz stream link
UPD: The Jazz Groove stream link

-- Audio devices (i2s)

NEW: Dion Audio LOCO
NEW: IQaudIO Digi+
NEW: JustBoom DAC HAT(Zero)
NEW: JustBoom AMP HAT(Zero)
NEW: JustBoom Digi HAT(Zero)
NEW: Mamboberry LS DAC+
NEW: Red Rocks Audio DigiDAC1

-- Updates

UPD: Bump to MPD version 0.19.19
UPD: Bump to Linux kernel 4.4.19 (manually via rpi-update)
UPD: Improved watchdog monitoring
UPD: Change MPD socket connection to use debugLog()
UPD: Clean up wording on Net config and Restart screens
UPD: Add 32/176.4, 32/352.8 sample rates to SoX list
UPD: Bump NGINX fastcgi_read_timeout
UPD: Use UNIX socket for PHP/NGINX interprocess comms
UPD: Add update package date to Moode log and About
UPD: Clean up wording on MPD config screen
UPD: Add capability to install test updates
UPD: Add MPD outputs to Moode startup log
UPD: Add "no setup" to resp check in parseHwParams
UPD: Breakout airplay volume array for debug log
UPD: Bump PHP FPM max_execution_time to 180 secs
UPD: Get ALSA mixer name dynamically
UPD: Add vol.php to command/index.php
UPD: Add hover help to coverart links
UPD: Bump wait time for eth0 check during startup
UPD: Add mpd state to currentsong.txt
UPD: Add ext3 file system to udisks-glue config
UPD: Leave volume knob enabled when rotary encoder
UPD: Clean up some syntax
UPD: Add Generic-1 I2S (hifiberry-dac)
UPD: Add Generic-2 I2S (rpi-dac)
UPD: Contribs

-- Bug fixes

FIX: Remove circular symlinks in /mnt for NAS and SDCARD
FIX: Playback panel toolbar not visible on iPad Mini
FIX: DHCP addr being assigned when eth0 set to static addr
FIX: Fail to get cover art embedded in AIFF format
FIX: Wrong encodedAT rate displayed for UPnP files
FIX: Wrong indextpl.html cp file in 2016-07-10 update
FIX: Audioinfo volume "disabled" not being displayed
FIX: ALSA mixer names with embedded spaces not parsed
FIX: Airplay not working over AP mode
 

Attachments

  • moode-logotypes-v2.png
    moode-logotypes-v2.png
    34.9 KB · Views: 465
Hi,

Moode Audio Player release 2.7 is available for download at moodeaudio.org 🙂

This release includes a new in-place software updater, Crossfeed DSP for headphone listening, support for Meridian Explorer 2 and MQA format, a universal rotary encoder driver that updates Moode volume knob and supports both hardware and software volume, some really great commercial-free, listener-supported radio stations, support for exciting new I2S audio devices, and numerous important updates and bug fixes.

Please read the attached Release Notes and view the Setup Guide at moodeaudio.org for more information.

Enjoy!

Regards,
Tim Curtis

======================
2.7 Release 2016-08-28
======================

New features

- NEW: In-place software updater
- NEW: Crossfeed DSP for headphone listening
- NEW: Support Meridian Explorer 2 and MQA
- NEW: Cache PHP session data using memcache
- NEW: Restart.sh script for reboot/poweroff
- NEW: Setting to turn off Pi-3 WiFi/BT adapter
- NEW: Sys config settings for kbd and layout
- NEW: Universal rotary encoder driver

Media

- NEW: AddictedToRadio - Quiet Storm
- NEW: Buddah Radio
- NEW: Positivly Baroque
- NEW: Radio FM4
- NEW: Audiophile Lounge
- NEW: Audiophile Rock-Blues
- UPD: Zen FM stream link to mp3
- UPD: Audiophile Baroque stream link
- UPD: Audiophile Classical stream link
- UPD: Audiophile Jazz stream link
- UPD: The Jazz Groove stream link

Audio devices (i2s)

- NEW: Dion Audio LOCO
- NEW: IQaudIO Digi+
- NEW: JustBoom DAC HAT(Zero)
- NEW: JustBoom AMP HAT(Zero)
- NEW: JustBoom Digi HAT(Zero)
- NEW: Mamboberry LS DAC+
- NEW: Red Rocks Audio DigiDAC1

Updates

- UPD: Bump to MPD version 0.19.19
- UPD: Bump to Linux kernel 4.4.19
- UPD: Improved watchdog monitoring
- UPD: Change MPD socket connection to use debugLog()
- UPD: Clean up wording on Net config and Restart screens
- UPD: Add 32/176.4, 32/352.8 sample rates to SoX list
- UPD: Bump NGINX fastcgi_read_timeout
- UPD: Use UNIX socket for PHP/NGINX interprocess comms
- UPD: Add update package date to Moode log and About
- UPD: Clean up wording on MPD config screen
- UPD: Add capability to install test updates
- UPD: Add MPD outputs to Moode startup log
- UPD: Add "no setup" to resp check in parseHwParams
- UPD: Breakout airplay volume array for debug log
- UPD: Bump PHP FPM max_execution_time to 180 secs
- UPD: Get ALSA mixer name dynamically
- UPD: Add vol.php to command/index.php
- UPD: Add hover help to coverart links
- UPD: Bump wait time for eth0 check during startup
- UPD: Add mpd state to currentsong.txt
- UPD: Add ext3 file system to udisks-glue config
- UPD: Leave volume knob enabled when rotary encoder
- UPD: Clean up some syntax
- UPD: Add Generic-1 I2S (hifiberry-dac)
- UPD: Add Generic-2 I2S (rpi-dac)
- UPD: Contribs

Bug fixes

- FIX: Remove circular symlinks for SDCARD and NAS
- FIX: Playback panel toolbar not visible on iPad Mini
- FIX: DHCP addr being assigned when eth0 set to static addr
- FIX: Fail to get cover art embedded in AIFF format
- FIX: Wrong encodedAT rate displayed for UPnP files
- FIX: Null printed in Moode log for USB sources
- FIX: Wrong indextpl.html cp file in 2016-07-10 update
- FIX: Audioinfo volume "disabled" not being displayed
- FIX: ALSA mixer names with embedded spaces not parsed
- FIX: Airplay not working over AP mode
 

Attachments

  • player-r27-1.png
    player-r27-1.png
    356 KB · Views: 449
  • moode-logotypes-v2.png
    moode-logotypes-v2.png
    34.9 KB · Views: 446
Hi,

Moode 2.6 2016-08-28 update available.

READ CAREFULLY

Installing this update package followed by manually updating the kernel to 4.4.19 via the rpi-update command below will effectivly upgrade Moode 2.6 to Moode 2.7. If the updated kernel is not installed then NO SUPPORT will be provided!

sudo rpi-update 818a860cf690d64c62d3227ad9c36d5867a671c2
sudo reboot
sudo rm -rf /boot.bak
sudo rm -rf /lib/modules.bak
sudo rm -rf /lib/modules/4.4.8+
sudo rm -rf /lib/modules/4.4.8-v7+
...

Had no trouble updating in place on a RPi1B with USB audio adapter which was running the last most current 2.6. [Sorry, I'm away from home and can only test this kit I brought with me.]

Not that it mattered, but I did notice the backup (.bak) directories did not exist after the update. When would they have been created?

Anyway, now running 2.7 with MPD 0.19.19 on kernel 4.4.19+.

Sweet.

Thanks, Tim.

Regards,
Kent
 
thanks for the work. this has replaced runeaudio for my home use because you actually update. also, props for including udlna-- i had to add that manually on rune. 🙂

quick *minor* bug report. my setup is interesting as i have an i2s device (iqaudio dac pi-dac+) and a usb output to an external dac (audio-gd nfb-11) that runs my speaker setup. mostly i use the usb out to speakers.

anyway, after updating to 2.7, under configure->mpd->audio device, both devices are labeled "i2s audio device". the setup still works with my USB device, so it appears that this is entirely aesthetic. but it makes swapping between the two slightly more confusing.

anyway, thanks again.
 
I'd read that about ESS licensing. They must have magic particles in their chips given such secrecy.

Yeah, magic pixie dust or something..... In my conversations with them and their distributors, it's generally along the lines of we have contracts with other people, (which I suspect translates to, we license and use IP from third parties), which prevents combining our product with open source and writing open source drivers......

The last time I had the conversation about wanting to release an Open Source driver for one of their software controlled chips, the answer was, "This matter has been thoroughly and seriously considered by ESS but the use of ESS devices in open source designs is not possible and ESS will not allow the use of ESS products in open source designs."

Its only 9018 in their lineup that has on-chip h/w volume correct?

9018, 9028, 9038..... basically anything more "audiophool" than the ES9023..... 😉
 
Had no trouble updating in place on a RPi1B with USB audio adapter which was running the last most current 2.6. [Sorry, I'm away from home and can only test this kit I brought with me.]

Not that it mattered, but I did notice the backup (.bak) directories did not exist after the update. When would they have been created?

Anyway, now running 2.7 with MPD 0.19.19 on kernel 4.4.19+.

Sweet.

Thanks, Tim.

Regards,
Kent

Hi Kent,

Dunno but I see them on my systems. Either way, good to hear success with the update + kernel install 🙂

-Tim