Moode Audio Player for Raspberry Pi

Hi Tim, here is the Belkin reader (without a card inserted) before and after on my linux box.
It has 6 slots for 9 different types of card.

Code:
blunder@blunder-OptiPlex-755:~$ ls -tr /dev/disk/by-id 2> /dev/null | sort
ata-ST3250820AS_9QE15Z1E
ata-ST3250820AS_9QE15Z1E-part1
ata-ST3250820AS_9QE15Z1E-part2
ata-ST3250820AS_9QE15Z1E-part3
ata-ST3250820AS_9QE15Z1E-part5
ata-ST3250820AS_9QE15Z1E-part6
ata-ST3250820AS_9QE15Z1E-part7
blunder@blunder-OptiPlex-755:~$ ls -tr /dev/disk/by-id 2> /dev/null | sort
ata-ST3250820AS_9QE15Z1E
ata-ST3250820AS_9QE15Z1E-part1
ata-ST3250820AS_9QE15Z1E-part2
ata-ST3250820AS_9QE15Z1E-part3
ata-ST3250820AS_9QE15Z1E-part5
ata-ST3250820AS_9QE15Z1E-part6
ata-ST3250820AS_9QE15Z1E-part7
usb-Generic_STORAGE_DEVICE_000000001514-0:0
usb-Generic_STORAGE_DEVICE_000000001514-0:1
usb-Generic_STORAGE_DEVICE_000000001514-0:2
usb-Generic_STORAGE_DEVICE_000000001514-0:3
usb-Generic_STORAGE_DEVICE_000000001514-0:4

Here it is with a Moode sd card inserted.. this corresponds with it reporting as sdd I have been caught out by this reader before so now pay attention to df -h before using it to write...;)


Code:
blunder@blunder-OptiPlex-755:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            2.4G     0  2.4G   0% /dev
tmpfs           492M  7.7M  484M   2% /run
/dev/sda2        13G  8.2G  3.4G  72% /
tmpfs           2.5G   44M  2.4G   2% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           2.5G     0  2.5G   0% /sys/fs/cgroup
/dev/sda6        44G   37G  4.7G  89% /home
cgmfs           100K     0  100K   0% /run/cgmanager/fs
tmpfs           492M   88K  492M   1% /run/user/1000
/dev/sda7       159G  131G   29G  83% /media/blunder/hoarding
/dev/sdd2       481M  216M  237M  48% /media/blunder/root
/dev/sdd1        14M  3.7M   11M  27% /media/blunder/boot

On the other hand, my dedicated sd to usb adapter always reports as sdb if no other usb devices are plugged in.

Hi Bob,

The Builder calls for a Raspberry Pi running Raspbian.

-Tim

****************************************************************
**"
** Moode OS Image Builder v1.0
**
** Welcome to the automated process for creating the wonderful
** custom Linux OS that runs moOde audio player.
**
** You will need a Raspberry Pi running Raspbian with SSH
** enabled, at least 2.5GB free space on the boot SDCard and
** a spare USB or USB-SDCard drive that the new OS will be
** written to during the build process.
**
** Be sure to backup the SDCard used to boot your Pi
**
****************************************************************


-Tim
 
Hi Bob,

The Builder calls for a Raspberry Pi running Raspbian.

-Tim

****************************************************************
**"
** Moode OS Image Builder v1.0
**
** Welcome to the automated process for creating the wonderful
** custom Linux OS that runs moOde audio player.
**
** You will need a Raspberry Pi running Raspbian with SSH
** enabled, at least 2.5GB free space on the boot SDCard and
** a spare USB or USB-SDCard drive that the new OS will be
** written to during the build process.
**
** Be sure to backup the SDCard used to boot your Pi
**
****************************************************************


-Tim

Yes I know that and I have no problems building. :D

I was just supplying some info on card readers that may help with Stuarts errors ... ;)
If he is using a card reader the output I have supplied may point to why the build is not finding his sd card.. ???
 
Last edited:
Hi folks,

Thanks for all your helpful suggestions.

I'm using an nGear multi-card reader, no model number, that has previously performed perfectly for a multitude of SD cards reads and writes. I'm using a SanDisk 32GB Extreme Plus SD Card (U3, I think).

The RPi3 has a HiFiBerry DAC+ and a small Belkin 7-port USB powered hub that also powers the Pi. I've been plugging the card reader into the Pi directly, although it seems not to make any difference if it's plugged into the hub. The Pi is running the latest Raspbian Stretch light that I downloaded today and SSH is active and the Pi is accessible remotely from my iMac on the network.

Without the SD reader plugged in:
Code:
pi@raspberrypi:~ $ ls -tr /dev/disk/by-id 2> /dev/null | sort
mmc-SA16G_0x26279bf8
mmc-SA16G_0x26279bf8-part1
mmc-SA16G_0x26279bf8-part2
With the reader plugged in:
Code:
pi@raspberrypi:~ $ ls -tr /dev/disk/by-id 2> /dev/null | sort
mmc-SA16G_0x26279bf8
mmc-SA16G_0x26279bf8-part1
mmc-SA16G_0x26279bf8-part2
usb-Generic_STORAGE_DEVICE_000000000570-0:0
usb-Generic_STORAGE_DEVICE_000000000570-0:1
usb-Generic_STORAGE_DEVICE_000000000570-0:2
usb-Generic_STORAGE_DEVICE_000000000570-0:3
usb-Generic_STORAGE_DEVICE_000000000570-0:4
With an SD card in the reader:
Code:
pi@raspberrypi:~ $ ls -tr /dev/disk/by-id 2> /dev/null | sort
mmc-SA16G_0x26279bf8
mmc-SA16G_0x26279bf8-part1
mmc-SA16G_0x26279bf8-part2
usb-Generic_STORAGE_DEVICE_000000000570-0:0
usb-Generic_STORAGE_DEVICE_000000000570-0:1
usb-Generic_STORAGE_DEVICE_000000000570-0:2
usb-Generic_STORAGE_DEVICE_000000000570-0:2-part1
usb-Generic_STORAGE_DEVICE_000000000570-0:3
usb-Generic_STORAGE_DEVICE_000000000570-0:4
Hope that helps! :)
 
And here's with Stretch Light on the SD card in the reader:

Code:
pi@raspberrypi:~ $ ls -tr /dev/disk/by-id 2> /dev/null | sort
mmc-SA16G_0x26279bf8
mmc-SA16G_0x26279bf8-part1
mmc-SA16G_0x26279bf8-part2
usb-Generic_STORAGE_DEVICE_000000000570-0:0
usb-Generic_STORAGE_DEVICE_000000000570-0:1
usb-Generic_STORAGE_DEVICE_000000000570-0:2
usb-Generic_STORAGE_DEVICE_000000000570-0:2-part1
usb-Generic_STORAGE_DEVICE_000000000570-0:2-part2
usb-Generic_STORAGE_DEVICE_000000000570-0:3
usb-Generic_STORAGE_DEVICE_000000000570-0:4
Notice that there's now a part 2.

Stuart
 
Why not provide a image file? This can easily solve many problems.

Hi,

Because there are time consuming GPL compliance administrative tasks that are required for each distribution or "image" thats released. Way more time than I personally have.

But I should add that anyone can volunteer to do this :)

-Tim
 
Last edited:
Hi Zootalaws, have you had any experience with, or comments regarding the IQAudio Pi-DAC PRO?

Hi BryceJ,

I'm not Zootalaws, but I have been using a Pi-DAC Pro for some months.
I am using Moode 3.8.4, with SoX resampling to 32 Bit / 384 kHz, RT kernel, Hardware volume control, Performance CPU Governor, and RR MPD Scheduler.

I am very pleased with the SQ and have had no issues with the Pi-DAC Pro.

Regards,
Rob
 
Hi BryceJ,

I'm not Zootalaws, but I have been using a Pi-DAC Pro for some months.
I am using Moode 3.8.4, with SoX resampling to 32 Bit / 384 kHz, RT kernel, Hardware volume control, Performance CPU Governor, and RR MPD Scheduler.

I am very pleased with the SQ and have had no issues with the Pi-DAC Pro.

Regards,
Rob

Thanks Rob, I am looking for user experiences. This seems like an interesting board, and I like the option of balanced output.
 
Hers is my 2 cents worth re build write fails...either not writing or reporting not enough space.

You are all using multi-slot card readers instead of dedicated sd to usb adapters.

Linux mounts multi-slot readers as devices sda,sdb,sdc,sdd etc. The script assumes and asks that all usb devices are unplugged other than the write device and then attempts to write to sdb.

However, most sd cards are in the slot corresponding to sdd so don't get written to.
As the slot that is sdb is mounted then the write is attempted but as no card is present there then there is no space to write to and so this is reported.

Anyone care to comment or correct...?

Try a dedicated adapter...

Micro Sd Card Adapter Walgreens | Latest USB

Memwah Micro SD Card Reader - Fast USB 2.0 Adapter for all MicroSD cards - Pro Action Camera UK
 
Hers is my 2 cents worth re build write fails...either not writing or reporting not enough space.

You are all using multi-slot card readers instead of dedicated sd to usb adapters.

Linux mounts multi-slot readers as devices sda,sdb,sdc,sdd etc. The script assumes and asks that all usb devices are unplugged other than the write device and then attempts to write to sdb.

However, most sd cards are in the slot corresponding to sdd so don't get written to.
As the slot that is sdb is mounted then the write is attempted but as no card is present there then there is no space to write to and so this is reported.

Anyone care to comment or correct...?
I just built beta 12 with a multi-slot reader on a Pi 3. The script failed at the dd command, so after reading the recent discussions about these readers, I just tried the dd command manually, and in my case it worked with /dev/sdc. I expect it varies depending on the device. Once this was done, the remainder of the script worked without a hitch.
 
I just built beta 12 with a multi-slot reader on a Pi 3. The script failed at the dd command, so after reading the recent discussions about these readers, I just tried the dd command manually, and in my case it worked with /dev/sdc. I expect it varies depending on the device. Once this was done, the remainder of the script worked without a hitch.

That's the other way to do it but given some are windows users the dedicated adapter seems more sure...;)

Thanks for your confirmation...
 
That's the other way to do it but given some are windows users the dedicated adapter seems more sure...;)

Thanks for your confirmation...
You're right. A dedicated adapter is easier, but I don't have one, and many people may not. I just used ssh from my Mac to issue the command - I imagine that ssh from Putty would do the same.

I'm sure it's possible to create a script that will work so long as only the target card is plugged into the multi-adapter, but it's beyond me to create it, unfortunately. I suppose you might brute-force by trying every sd<n> in turn until one returns success? Kludgy, I fear.
 
got it :D

First, you made a mistake with this :

sudo dd if=2017-11-29-raspbian-stretch-lite.img of=../../sda bs=1M

../../sda is not a device so you wrote a sda file that you can delete now (no need of this) ==> Look at /home, you must find the sda file.

Tried that:

Code:
pi@raspberrypi:~/mosbuild $ sudo dd if=2017-11-29-raspbian-stretch-lite.img of=/dev/sda bs=1M
dd: failed to open '/dev/sda': No medium found
Tried it this way:

Code:
pi@raspberrypi:~/mosbuild $ sudo dd if=2017-11-29-raspbian-stretch-lite.img of=../../sda bs=1M
1772+0 records in
1772+0 records out
1858076672 bytes (1.9 GB, 1.7 GiB) copied, 240.968 s, 7.7 MB/s
pi@raspberrypi:~/mosbuild $

Same solid green light on reboot with supposedly bootable card.

So each slot of your multiUSB adapter is discovered as a drive.
The one for microSD is /dev/sdc

So even it's a bit dirty, writing the img file on /dev/sdc should work !

From the mosbuild directory :

sudo dd if=2017-11-29-raspbian-stretch-lite.img of=/dev/sdc

If writing succeed, then poweroff and insert the new SDcard just wrote in the RPI SD slot ... power on !

You should able to monitor log with :

tail -f /home/pî/mosbuild.log

May the force be with you :D

And here's with Stretch Light on the SD card in the reader:

Code:
pi@raspberrypi:~ $ ls -tr /dev/disk/by-id 2> /dev/null | sort
mmc-SA16G_0x26279bf8
mmc-SA16G_0x26279bf8-part1
mmc-SA16G_0x26279bf8-part2
usb-Generic_STORAGE_DEVICE_000000000570-0:0
usb-Generic_STORAGE_DEVICE_000000000570-0:1
usb-Generic_STORAGE_DEVICE_000000000570-0:2
usb-Generic_STORAGE_DEVICE_000000000570-0:2-part1
usb-Generic_STORAGE_DEVICE_000000000570-0:2-part2
usb-Generic_STORAGE_DEVICE_000000000570-0:3
usb-Generic_STORAGE_DEVICE_000000000570-0:4
Notice that there's now a part 2.

Stuart
 
I just built beta 12 with a multi-slot reader on a Pi 3. The script failed at the dd command, so after reading the recent discussions about these readers, I just tried the dd command manually, and in my case it worked with /dev/sdc. I expect it varies depending on the device. Once this was done, the remainder of the script worked without a hitch.

You got it ;)

Thinking to fix the builder for the multi-slot adapter ... but in this case, we need some users to test ... I don't own this kind of adapter (and looks like neither Tim).

I can just test the "no regression status"

@Timcurtis : What do you think about that ?

The fix could be line at 147 of mosbuild.sh :

replace : if [ -z "$USBDEV" ] ; then
by : if [ -z "$USBDEV" ] || [ `echo "$USBDEV" | wc -w` -gt 1 ] ; then

If someone is able to confirm this fix, that would be great for the comunity !
 
Last edited:
You got it ;)

Thinking to fix the builder for the multi-slot adapter ... but in this case, we need some users to test ... I don't own this kind of adapter (and looks like neither Tim).

I can just test the "no regression status"

@Timcurtis : What do you think about that ?

The fix could be line at 147 of mosbuild.sh :

replace : if [ -z "$USBDEV" ] ; then
by : if [ -z "$USBDEV" ] || [ `echo "$USBDEV" | wc -w` -gt 1 ] ; then

If someone is able to confirm this fix, that would be great for the comunity !

I was already experiencing this issue with a multi-card reader when using your first script. I went and bought a dedicated MicroSD card reader.

I am prepared to help test with the multi card reader.
 
You got it ;)

Thinking to fix the builder for the multi-slot adapter ... but in this case, we need some users to test ... I don't own this kind of adapter (and looks like neither Tim).

I can just test the "no regression status"

@Timcurtis : What do you think about that ?

The fix could be line at 147 of mosbuild.sh :

replace : if [ -z "$USBDEV" ] ; then
by : if [ -z "$USBDEV" ] || [ `echo "$USBDEV" | wc -w` -gt 1 ] ; then

If someone is able to confirm this fix, that would be great for the comunity !

Hi,

Sounds good :)

If several people with multi-port devices can make this edit and confirm that the Builder successfully writes the base OS image I'll test on my end with a single port device and if it also still works then I can commit the change and upload a new version of the Image Builder.

-Tim