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.
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
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.
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
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.
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 âŚ
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