Volumio X86/ Debian Buster debugging party (BETA)

yes, automount of usb disk will come in the next version.

@WeDloMiS: Excellent!!!

Now how do I get this into a generic version?
Should be doable, I may need your asound.conf, will get back on this.
Good find, thank you for helping with this.

I do maybe a mistake but I don’t create a asound.conf. The /etc/asound.conf is created for a custom hardware configuration. In my case, the system detects my hardware configuration without problem.
The modifications added is about the software with alsamixer.
By default, the state file for alsamixer is /var/lib/alsa/asound.state

My file after modifications with alsamixer :

volumio@volumio:/var/lib/alsa$ cat asound.state state.PCH { control.1 { iface MIXER name 'Headphone Playback Volume' value.0 87 value.1 87 comment { access 'read write' type INTEGER count 2 range '0 - 87' dbmin -6525 dbmax 0 dbvalue.0 0 dbvalue.1 0 } } control.2 { iface MIXER name 'Headphone Playback Switch' value.0 true value.1 true comment { access 'read write' type BOOLEAN count 2 } } control.3 { iface MIXER name 'Headphone Playback Volume' index 1 value.0 87 value.1 87 comment { access 'read write' type INTEGER count 2 range '0 - 87' dbmin -6525 dbmax 0 dbvalue.0 0 dbvalue.1 0 } } control.4 { iface MIXER name 'Headphone Playback Switch' index 1 value.0 true value.1 true comment { access 'read write' type BOOLEAN count 2 } } control.5 { iface MIXER name 'Loopback Mixing' value Disabled comment { access 'read write' type ENUMERATED count 1 item.0 Disabled item.1 Enabled } } control.6 { iface MIXER name 'Mic Playback Volume' value.0 0 value.1 0 comment { access 'read write' type INTEGER count 2 range '0 - 31' dbmin -3450 dbmax 1200 dbvalue.0 -3450 dbvalue.1 -3450 } } control.7 { iface MIXER name 'Mic Playback Switch' value.0 false value.1 false comment { access 'read write' type BOOLEAN count 2 } } control.8 { iface MIXER name 'Capture Volume' value.0 39 value.1 39 comment { access 'read write' type INTEGER count 2 range '0 - 63' dbmin -1725 dbmax 3000 dbvalue.0 1200 dbvalue.1 1200 } } control.9 { iface MIXER name 'Capture Switch' value.0 true value.1 true comment { access 'read write' type BOOLEAN count 2 } } control.10 { iface MIXER name 'Mic Boost Volume' value.0 0 value.1 0 comment { access 'read write' type INTEGER count 2 range '0 - 3' dbmin 0 dbmax 3600 dbvalue.0 0 dbvalue.1 0 } } control.11 { iface MIXER name 'Beep Playback Volume' value.0 0 value.1 0 comment { access 'read write' type INTEGER count 2 range '0 - 31' dbmin -3450 dbmax 1200 dbvalue.0 -3450 dbvalue.1 -3450 } } control.12 { iface MIXER name 'Beep Playback Switch' value.0 false value.1 false comment { access 'read write' type BOOLEAN count 2 } } control.13 { iface MIXER name 'IEC958 Playback Con Mask' index 16 value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.14 { iface MIXER name 'IEC958 Playback Pro Mask' index 16 value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.15 { iface MIXER name 'IEC958 Playback Default' index 16 value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.16 { iface MIXER name 'IEC958 Playback Switch' index 16 value true comment { access 'read write' type BOOLEAN count 1 } } control.17 { iface MIXER name 'IEC958 Default PCM Playback Switch' value false comment { access 'read write' type BOOLEAN count 1 } } control.18 { iface MIXER name 'Master Playback Volume' value 0 comment { access 'read write' type INTEGER count 1 range '0 - 87' dbmin -6525 dbmax 0 dbvalue.0 -6525 } } control.19 { iface MIXER name 'Master Playback Switch' value true comment { access 'read write' type BOOLEAN count 1 } } control.20 { iface CARD name 'Mic Jack' value false comment { access read type BOOLEAN count 1 } } control.21 { iface CARD name 'Headphone Front Jack' value true comment { access read type BOOLEAN count 1 } } control.22 { iface CARD name 'Front Headphone Surround Jack' value false comment { access read type BOOLEAN count 1 } } control.23 { iface CARD name 'SPDIF Phantom Jack' value true comment { access read type BOOLEAN count 1 } } control.24 { iface PCM name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 comment { access read type INTEGER count 4 range '0 - 36' } } control.25 { iface PCM name 'Capture Channel Map' value.0 0 value.1 0 comment { access read type INTEGER count 2 range '0 - 36' } } control.26 { iface PCM device 1 name 'Playback Channel Map' value.0 0 value.1 0 comment { access read type INTEGER count 2 range '0 - 36' } } control.27 { iface CARD name 'HDMI/DP,pcm=3 Jack' value false comment { access read type BOOLEAN count 1 } } control.28 { iface MIXER name 'IEC958 Playback Con Mask' value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.29 { iface MIXER name 'IEC958 Playback Pro Mask' value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.30 { iface MIXER name 'IEC958 Playback Default' value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.31 { iface MIXER name 'IEC958 Playback Switch' value false comment { access 'read write' type BOOLEAN count 1 } } control.32 { iface PCM device 3 name ELD value '' comment { access 'read volatile' type BYTES count 0 } } control.33 { iface PCM device 3 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } }

To integrate this, I think there are 2 ways :

1 - when this audio card is detected, add this state file
2 - use a script with “amixer” command to play my custom configuration done with “alsamixer”

The point 2 is the best solution. alsamixer is a “graphical” tool to configure easy the outputs but “amixer” can do the same thing with command lines.

In the state file, the outputs for the SPDIF are “IEC958”.

With the SPDIF, we don’t change the volume. The amplifier will be use for this. With “alsamixer” (or “amixer”), we can only mute or unmute these outputs but no change about the volume.

Any additional informations for this card :

volumio@volumio:/usr/share/alsa$ amixer -c 0 info Card hw:0 'PCH'/'HDA Intel PCH at 0x81414000 irq 118' Mixer name : 'Realtek ALC283' Components : 'HDA:10ec0283,80862060,00100003 HDA:80862883,80860101,00100000' Controls : 33 Simple ctrls : 11

volumio@volumio:/usr/share/alsa$ amixer -c 0 scontrols
Simple mixer control 'Master',0
Simple mixer control 'Headphone',0
Simple mixer control 'Headphone',1
Simple mixer control 'Mic',0
Simple mixer control 'Mic Boost',0
Simple mixer control 'IEC958',0
Simple mixer control 'IEC958 Default PCM',0
Simple mixer control 'IEC958',16
Simple mixer control 'Beep',0
Simple mixer control 'Capture',0
Simple mixer control 'Loopback Mixing',0
volumio@volumio:/usr/share/alsa$ amixer -c 0 scontents
Simple mixer control 'Master',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 87
  Mono: Playback 0 [0%] [-65.25dB] [on]
Simple mixer control 'Headphone',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 87
  Mono:
  Front Left: Playback 87 [100%] [0.00dB] [on]
  Front Right: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Headphone',1
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 87
  Mono:
  Front Left: Playback 87 [100%] [0.00dB] [on]
  Front Right: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Mic',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono:
  Front Left: Playback 0 [0%] [-34.50dB] [off]
  Front Right: Playback 0 [0%] [-34.50dB] [off]
Simple mixer control 'Mic Boost',0
  Capabilities: volume
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: 0 - 3
  Front Left: 0 [0%] [0.00dB]
  Front Right: 0 [0%] [0.00dB]
Simple mixer control 'IEC958',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'IEC958 Default PCM',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'IEC958',16
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'Beep',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono:
  Front Left: Playback 0 [0%] [-34.50dB] [off]
  Front Right: Playback 0 [0%] [-34.50dB] [off]
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 63
  Front Left: Capture 39 [62%] [12.00dB] [on]
  Front Right: Capture 39 [62%] [12.00dB] [on]
Simple mixer control 'Loopback Mixing',0
  Capabilities: enum
  Items: 'Disabled' 'Enabled'
  Item0: 'Disabled'

Here, the main interesting command is .with “scontrols” argument.

With this command, the outputs you will use are :

Simple mixer control 'IEC958',0 Simple mixer control 'IEC958 Default PCM',0 Simple mixer control 'IEC958',16

To mute or unmute these outputs, the “amixer” command is perfect. In my case, I want mute IE958c,0 and IEC958 Default PCM, and unmute the IEC958,16 output.

This operation will be execute only on the first boot. After, the configuration will not be modified.

Maybe, you can add a condition in the firststart.sh script. When you have this sound card, you execute theses lines :

amixer -c 0 set IEC958,0 mute amixer -c 0 set 'IEC958 Default PCM',0 mute amixer -c 0 set IEC958,16 unmute

Just for example, a script I just wrote :

#!/bin/bash
card=`cat /proc/asound/cards`
if [[ $card =~ "HDA Intel PCH" ]]
then
   echo "Unmute / Mute SPDIF Output for the sound card"
   echo "-----------------------------"
   amixer -c 0 set IEC958,0 mute
   amixer -c 0 set 'IEC958 Default PCM',0 mute
   amixer -c 0 set IEC958,16 unmute
fi

To provide needs with others sound cards in future, you can use “case” instead of “if”.

hello!
beta 002 boot on my laptop, but stop with the following error (see picture)
image.jpg

How have you created the usb key ? I think that your usb key is corrupted.

Try with another usb key.

you were right… Now it boot. but no kiosk started. Just the bash prompt. I can log in (volumio/volumio) but no more. I restart volumio (volumio vstart) but no UI.

Post your /var/log/boot.log and /var/log/Xorg.0.log files. Just to see.

Hi,
i tested the latest version you had on this post, with the board i used there were some problems with the wifi adapter, it’s a intel 3168 and there is a known bug with the iwlwifi module in the 4.19.104 kernel, i fixed it by rebuilding the kernel including this patch https://patchwork.kernel.org/patch/11353871/
. Even if the wifi finally started working i had a lot more problems with the WebUI that after rebuilding the kernel for some reason wouldn’t go out of the loading loop, the backend was obviously not working. I haven’t fixed that so i will maybe post an update later, by the way this is my lspci log: https://pastebin.com/xqKT9dPA

When booting from odriod-h2 with intel j4105 cpu, only black screen is seen.

ODROID-H2 => hardkernel.com/shop/odroid-h2/

Please tell me how to boot !.
work hard.

I will try to add something to allow HDA sound card tweaking, which we can enhance when we get other requests for card- or chip-specific tweaks.
In your case, not only “HDA Intel PCH” needs to be considered, the used chip could also play a role as with the ALC892 there a re no mute issues.

Without more information, I can’t do anything.
Did your machine get an IP? Can you access the H2 with a browser from another PC/ tablet of smart phone?
Please try to ssh into the machine (if possible) and supply us with the info as requested in the opening post!

I will add the patch to my build, with your own kernel you may get a boot loop as it could cause issues with our own initramfs.
Hope to post a new version soon.

Hi,
no there is no boot loop the ramdisk works fine the web ui backend just crash, i didn’t have the time to take a look but otherwise with my kernel it works fine, i used your config to compile it so it’s almost the same except for the patch and the fact that i used the 105 and not the 104.

Ok, thanks.
I’m checking 4.19.106 as we speak, will patch it if necessary and use it for the next version.

Absolutely ! I think you can add a script with “case” and not “if”. The custom tweaks can be added easily for differents cards. The problem is maybe the ALC256 …

Maybe only a corrupted boot disk. Black screen ok but when ?

If the boot disk isn’t loaded else it’s not a system problem … Ideally, make a video when you start your odriod.

Updated OP a few minutes ago with a link to version 0.003

Solved issues

  • intel 3138 chip wireless problems
  • spdif port missing on “HDA Intel PCH” audio devices
  • muted spdif port on “HDA Intel PCH” with Realtek ALC283
  • my Volumio not showing any streaming services

Also added “inxi”, for the ones familiar with it, to help reporting

Lattepanda 2/32 gb sound via hdmi, wifi not work, gui over hdmi not work.
Install to emmc fine.
Liva Pc sound via hdmi and analog, wifi ok, Install to emmc fine.
Usb flash drive not show, if mount via ssh usb drive ad to music library on both boards.
Use ver 0.003