Moode Audio Player for Raspberry Pi

I have Moode running on a Pi Zero and using a Phat DAC. I get audio through earbuds,but not through a test speaker I'm using? https://thepihut.com/products/mini-portable-speaker-for-the-raspberry-pi

Are there a reason it shouldn't work?

The Phat DAC only has a line output, so it's not designed for headphones. Your earbuds may work, but probably not very well.
However, the speaker is powered so it presumably has a built-in amplifier, hence it should work. Can you try the speaker plugged into something else to check it?

John
 
It is the same board...

Are you using Moode 2.7, and have you tried the I2S setting for Suptronics x400? It's the same board, I think.

Yes - I have 3 of these - they work well as the Suptronics x400. You need to ensure you have set the jumpers on the board correctly to enable the output you want. (They also worked well as any of the 5122 boards so long as you had the jumpers set). Adrian
 
Yes - I have 3 of these - they work well as the Suptronics x400. You need to ensure you have set the jumpers on the board correctly to enable the output you want. (They also worked well as any of the 5122 boards so long as you had the jumpers set). Adrian

great, to get the audio out on 3.5mm jack, should the jumper remain on? will try it both ways...
 
The Phat DAC only has a line output, so it's not designed for headphones. Your earbuds may work, but probably not very well.
However, the speaker is powered so it presumably has a built-in amplifier, hence it should work. Can you try the speaker plugged into something else to check it?

John

I hooked it to the laptop and it worked. Not sure of the problem.
 
The speaker is using the male to male 3.5 audio cable and the earbuds is just using the plug connector. I am plugging them into the audio out jack on the phat dac.
https://shop.pimoroni.com/products/phat-dac

That's curious. Only thing I can imagine is that the m-m 3.5 jack is a bad cable. Try something else. or test the cable by plugging into the line in of another power speaker or another amp. Do you have any devices like a stereo? You could get a miniplug to stereo rca cable Y adapter for the stereo.
 
That's curious. Only thing I can imagine is that the m-m 3.5 jack is a bad cable. Try something else. or test the cable by plugging into the line in of another power speaker or another amp. Do you have any devices like a stereo? You could get a miniplug to stereo rca cable Y adapter for the stereo.

I switched out the cable already and no luck on the speaker working.
 
Noisy DSD playback

I bought this album from HDTracks in DSD 5.6MHz . I played it on my Raspberry Pi 3 running the latest version of moode(2.7 + update) iFi micro DSD. Sounds great. I then took my Pi over to a friend's house. He has a Gustard X20 DAC that feeds a Schitt Rag amp. IT SOUNDED TERRIBLE Resampling was off. DoP was off. Sounded crackly and staticky. When I turn on either resampling or or DoP , it sounded good again. Interestingly, his DAC NEVER reported DSD, always PCM. So I assume it's a moode problem in that it doesnt like to talk to a Gustard DAC. Anybody else have DAC issues?
 
Hi,

The first Moode 2.7 in-place update is nearing completion :)

This update contains an important improvement to networking that should resolve some issues when static addresses are used. It also includes minor bug fixes, a variety of updates, a new version of shairport-sync and some code that will be useful when the Advanced Audio Kernel is integrated.

When released, installation is simple. First make sure that debug logging is turned off in System config (this requires a reboot), then click "CHECK for software update". View the release notes then INSTALL.

Regards,
Tim
 

Attachments

  • moode-logotypes-v2.png
    moode-logotypes-v2.png
    34.9 KB · Views: 308
Hello just wondered is there a way to stop it scrolling back to the top when you browse your music folder as its a pain when you come out of a folder back into the main menu and its back up to the top

+1 :) I think this has been mentioned already and is possibly on Tim's to do list ?
Not a biggie but it would make creating play-lists smoother.
(as a workaround, if you use a device with a mouse you can speed it up a tad.)
 
Tim,
Here is the shairport log when the dropouts are happening... any idea about whats going on?

Code:
Looking for the configuration file "/etc/shairport-sync.conf".
Looking for configuration file at full path "/etc/shairport-sync.conf"
Output device name is "hw:0".
Open Mixer
Lowest dB value is a mute -- try minimum volume +1
Hardware mixer has dB volume from -103.000000 to 0.000000.
Has mute ability.
The processor is running little-endian.
Version: "2.8.4-OpenSSL-Avahi-ALSA-stdout-soxr-metadata"
statistics_requester status is 0.
daemon status is 0.
rtsp listening port is 5000.
udp base port is 6001.
udp port range is 100.
Shairport Sync player name is "Moode Airplay".
Audio Output name is "(null)".
on-start action is "/var/www/command/spspre.sh".
on-stop action is "/var/www/command/spspost.sh".
wait-cmd status is 1.
mdns backend "(null)".
userSuppliedLatency is 0.
AirPlayLatency is -1.
iTunesLatency is -1.
forkedDaapdLatency is -1.
stuffing option is "1" (0-basic, 1-soxr).
resync time is 2205.
allow a session to be interrupted: 0.
busy timeout time is 120.
drift tolerance is 88 frames.
password is "(null)".
ignore_volume_control is 0.
playback_mode is 0 (0-stereo, 1-mono).
disable_synchronization is 0.
audio backend desired buffer length is 6615.
audio backend latency offset is 0.
volume range in dB (zero means use the range specified by the mixer): 0.
zeroconf regtype is "_raop._tcp".
configuration file name "/etc/shairport-sync.conf" resolves to "/etc/shairport-sync.conf".
metdata enabled is 1.
metadata pipename is "/tmp/shairport-sync-metadata".
metadata socket address is "(null)" port 0.
metadata socket packet size is "500".
get-coverart is 1.
Successful Startup
avahi: avahi_register.
avahi: register_service.
avahi: service '4EA8E21A3B78@Moode Airplay' group is not yet commited.
avahi: request to add "_raop._tcp" service with metadata
avahi: service '4EA8E21A3B78@Moode Airplay' group is registering.
avahi: service '4EA8E21A3B78@Moode Airplay' successfully added.
New RTSP connection from 192.168.1.136:53586 to self at 192.168.1.112:5000.
Play connection from user agent "Airfoil/4.9.0 (Macintosh; N; Intel)".
Active-Remote string seen: "2298139828".
DACP-ID string seen: "C1C6747504139237".
Unrecognised User-Agent. Using latency of -1 frames.
rtp_setup: cport=6002 tport=6003.
Set up play connection from 192.168.1.136 to self at 192.168.1.112.
listening for audio, control and timing on ports 6001, 6002, 6003.
Timing receiver -- Server RTP thread starting.
Control receiver -- Server RTP thread starting.
Audio receiver -- Server RTP thread starting.
Timing sender thread starting.
volume: -1.943359

Setting volume db to -333.609965.
syncing to seqno 31966.
received metadata tags in SET_PARAMETER request.
PCM handle name = 'hw:0'
alsa device parameters:
  access type = RW_INTERLEAVED
  format = 'S16_LE' (Signed 16 bit Little Endian)
  subformat = 'STD' (Standard)
  number of channels = 2
  number of significant bits = 16
  rate = 44100 frames per second (precisely).
  precise (rational) rate = 0.000 frames per second (i.e. 0/1088784512).
  period_time = 23219 us (>).
  period_size = 1024 frames (precisely).
  buffer_time = 2972154 us (>).
  buffer_size = 131072 frames (>).
  periods_per_buffer = 128 (precisely).
Open Mixer
Setting volume db to -333.609965.
received metadata tags in SET_PARAMETER request.
received metadata tags in SET_PARAMETER request.
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -- ALSA device in incorrect state (4) for play.
Packet reception interval stats: mean, standard deviation and max for the last 2,500 packets in microseconds:     7982.9,     1830.3,    26575.0.
Error -- ALSA device in incorrect state (4) for play.
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Lost sync with source for 4 consecutive packets -- flushing and resyncing. Error: -2279.
syncing to seqno 36248.
 
Last edited:
Tim,
Here is the shairport log when the dropouts are happening... any idea about whats going on?

Code:
Looking for the configuration file "/etc/shairport-sync.conf".
Looking for configuration file at full path "/etc/shairport-sync.conf"
Output device name is "hw:0".
Open Mixer
Lowest dB value is a mute -- try minimum volume +1
Hardware mixer has dB volume from -103.000000 to 0.000000.
Has mute ability.
The processor is running little-endian.
Version: "2.8.4-OpenSSL-Avahi-ALSA-stdout-soxr-metadata"
statistics_requester status is 0.
daemon status is 0.
rtsp listening port is 5000.
udp base port is 6001.
udp port range is 100.
Shairport Sync player name is "Moode Airplay".
Audio Output name is "(null)".
on-start action is "/var/www/command/spspre.sh".
on-stop action is "/var/www/command/spspost.sh".
wait-cmd status is 1.
mdns backend "(null)".
userSuppliedLatency is 0.
AirPlayLatency is -1.
iTunesLatency is -1.
forkedDaapdLatency is -1.
stuffing option is "1" (0-basic, 1-soxr).
resync time is 2205.
allow a session to be interrupted: 0.
busy timeout time is 120.
drift tolerance is 88 frames.
password is "(null)".
ignore_volume_control is 0.
playback_mode is 0 (0-stereo, 1-mono).
disable_synchronization is 0.
audio backend desired buffer length is 6615.
audio backend latency offset is 0.
volume range in dB (zero means use the range specified by the mixer): 0.
zeroconf regtype is "_raop._tcp".
configuration file name "/etc/shairport-sync.conf" resolves to "/etc/shairport-sync.conf".
metdata enabled is 1.
metadata pipename is "/tmp/shairport-sync-metadata".
metadata socket address is "(null)" port 0.
metadata socket packet size is "500".
get-coverart is 1.
Successful Startup
avahi: avahi_register.
avahi: register_service.
avahi: service '4EA8E21A3B78@Moode Airplay' group is not yet commited.
avahi: request to add "_raop._tcp" service with metadata
avahi: service '4EA8E21A3B78@Moode Airplay' group is registering.
avahi: service '4EA8E21A3B78@Moode Airplay' successfully added.
New RTSP connection from 192.168.1.136:53586 to self at 192.168.1.112:5000.
Play connection from user agent "Airfoil/4.9.0 (Macintosh; N; Intel)".
Active-Remote string seen: "2298139828".
DACP-ID string seen: "C1C6747504139237".
Unrecognised User-Agent. Using latency of -1 frames.
rtp_setup: cport=6002 tport=6003.
Set up play connection from 192.168.1.136 to self at 192.168.1.112.
listening for audio, control and timing on ports 6001, 6002, 6003.
Timing receiver -- Server RTP thread starting.
Control receiver -- Server RTP thread starting.
Audio receiver -- Server RTP thread starting.
Timing sender thread starting.
volume: -1.943359

Setting volume db to -333.609965.
syncing to seqno 31966.
received metadata tags in SET_PARAMETER request.
PCM handle name = 'hw:0'
alsa device parameters:
  access type = RW_INTERLEAVED
  format = 'S16_LE' (Signed 16 bit Little Endian)
  subformat = 'STD' (Standard)
  number of channels = 2
  number of significant bits = 16
  rate = 44100 frames per second (precisely).
  precise (rational) rate = 0.000 frames per second (i.e. 0/1088784512).
  period_time = 23219 us (>).
  period_size = 1024 frames (precisely).
  buffer_time = 2972154 us (>).
  buffer_size = 131072 frames (>).
  periods_per_buffer = 128 (precisely).
Open Mixer
Setting volume db to -333.609965.
received metadata tags in SET_PARAMETER request.
received metadata tags in SET_PARAMETER request.
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -- ALSA device in incorrect state (4) for play.
Packet reception interval stats: mean, standard deviation and max for the last 2,500 packets in microseconds:     7982.9,     1830.3,    26575.0.
Error -- ALSA device in incorrect state (4) for play.
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Error -32 writing 353 samples in play(): "Broken pipe".
Lost sync with source for 4 consecutive packets -- flushing and resyncing. Error: -2279.
syncing to seqno 36248.

Hi,

I'm not quite sure how to interpret the errors so I posted the issue to shairport-sync Git.

Please monitor the issue
https://github.com/mikebrady/shairport-sync/issues/397

-Tim
 
+1 :) I think this has been mentioned already and is possibly on Tim's to do list ?
Not a biggie but it would make creating play-lists smoother.
(as a workaround, if you use a device with a mouse you can speed it up a tad.)

Hi Bob,

Yes its been mentioned before.

The Browse panel code is mostly from the original codebase that I started with. Its been cleaned up a bit but for sure it should be rewritten at some point so it functions more like a modern file browser. Its not a trivial undertaking though so maybe someday.

-Tim
 
I bought this album from HDTracks in DSD 5.6MHz . I played it on my Raspberry Pi 3 running the latest version of moode(2.7 + update) iFi micro DSD. Sounds great. I then took my Pi over to a friend's house. He has a Gustard X20 DAC that feeds a Schitt Rag amp. IT SOUNDED TERRIBLE Resampling was off. DoP was off. Sounded crackly and staticky. When I turn on either resampling or or DoP , it sounded good again. Interestingly, his DAC NEVER reported DSD, always PCM. So I assume it's a moode problem in that it doesnt like to talk to a Gustard DAC. Anybody else have DAC issues?

Hi, Skypickle. A quick search of this thread for "Gustard" turned up just one post back in August asking if one could connect to a Gustard X20 with an HDMI cable. The response had to do only with the HDMI connection and not the Gustard X20. The lack of other responses / posts suggest to me that no one else here is using one. As for me, neither my aging ears nor my thinning pocketbook justify spending more than US$100 for a DAC, so consider the following to be idle curiosity.

How were you connected from your RPi to your IFI micro DSD? to your friend's Gustard X20?

Were your Moode settings the same for the IFI when it sounded great and for the Gustard when it sounded terrible?

Does your friend have his own DSD source with which to drive the Gustard? If so, what does the Gustard report when driven by it and how does it sound? And, if he has his own DSD source, did you try connecting it to your ifi micro DSD? If so, how did it sound?

A last-second thought: If you were using USB to connect to the DACs, are you aware of Tim's note about audio devices on his website, "Most USB audio devices work with Moode via Linux kernel USB audio driver but some devices with high speed UAC2 chipsets may require the work around listed under PLAYER FIXES." Perhaps the ifi micro USD doesn't require the work around and the Gustard X20 does.


Regards,
Kent