Ok, the price segment for the ultra changed.
Before I buy a new one, somebody else should really make it work first.
Ok, i made it work.
The Ultra runs with 48k, so that the jack options needed to be changed.
I made it transparent in the webconf.
The two alsa sliders DAC and PGA are visible.
I am not quite sure how to separate the level of playback and capture though.
But I am in contact with Matt to solve this issue.
I am going to avoid the Audioinjector Ultra 2 until some things changed.
This might be a new driver or I give it another try when Raspi 4 is out.
Those are the main issues:
-
alsactl store
alsactl: get_control:256: Cannot read control â2,0,0,C Data Buffer,0â: Input/output error
That makes it impossible to save the volume. As it is resetting to 100 every boot, which is too loud. I used a script which sets it to 80% at boot time. -
The volume for the playback and the capture is called âDACâ in both cases and âamixer controlsâ doesnât show two different controls either so that I could use numid=xy to handle it. This means, that both output volume and input volume are the same. When alsamixer is used, they are locked together as well.
If Matt would change the driver, so that there are two mixers, we could set two different volume levels. -
As I have to use a different jack setting, Pianoteq is not as nice as with other cards. And I get more xruns either. Thatâs why I said, I would give it another try when there is a Raspi 4.
But as of know, I am going to use the Zero again.
Yes indeed.
The ultra uses the linux/sound/soc/codecs/cs4265.c driver. This driver is a little bit of a mess, I have already made many fixes to it.
To address your points:
- Yes this is a problem - it is to do with buggy code in the linux driver. I will look into it when I get more time.
- I believe the ADC is called PGA in the capture screen of alsamixer. Again the âDACâ in the alsamixer capture section is due to buggy linux codec code. So to sum up, use DAC in the playback section of alsamixer and PGA (for ADC) in the capture section of alsamixer.
- It wasnât clear whether there are more xruns or not - which jack settings are being used ?
Matt
HI @flatmax!
Welcome to Zynthianâs community! Nice to see you here. We are a few AudioInjector owners in our community.
Your help will be really appreciated for having AI cards fully integrated in zynthian and working 100%. Your cards are very interesting stuff for building synthesizers
Regards,
@flatmax
Hi Matt, nice to see you here.
Please let us know, when you fixed the driver.
I will test that and the DAC/PGA issue in that case.
-P 70 -t 2000 -s -d alsa -d hw:0 -r 48000 -p 256 -n 2 -X raw
Those are xruns when Pianoteq is used. The Hifiberry seems to use less processing power.
When I play the same sound with Hifiberry, the performance stays green at approx. 50% most of the time with peaks at 80%. (at 44.1k)
But with AudioInjector Ultra and Zero as well, I am constantly at 60/70% with little peaks up to 100%, so that there are occasional xruns.
Thanks a lot,
Markus
Sweet !
I am wondering why two i2s based cards would have such different cpu usage ?
Both use the same DMA right? Their Alsa soc pcm processes should be very similar ⌠hmmm
I have had a thought. Maruks, can you tell me, does the audio injector open jack in full duplex mode (with input and output) ? Do the other sound cards open jack in half duplex output only mode ?
Hm. Yes the hifiberry doesnât have Audio In.
How can I disable it so that the Audioinjector Zero is saving resources?
Is muting enough?
The comparison between hifiberry and ultra isnât fair because ultra is set to 48k.
Just noting that upstream Linux is in the process of being patched for the issue 1 above.
This will make alsactl store work as expected.
Turns out it was a cs4265 linux codec driver bug.
Can I expect the change already when I do an rpi-update?
@flatmax
I just tried, but an rpi-update didnât solve it. Do I have to wait?
Are you informing us, when we can test again?
Cheers,
Markus
@flatmax
I just tested the Ultra with our first running buster image on a Raspi4âŚno jack hasnât been started.
Ok, I donât know, what went wrong first. Now it works.
The alsastore issue is solved.
The pianoteq index is 17 and the first time in my life I donât get any xrunsâŚrunning raspi4âŚ
So now I can officially say, that zynthian supports Audio Injector Ultra as well
Please use this thread
fyi, there is currently a bug:
I think, itâs even located in the driver itself.
What is the best way to run a command during startup?
I could pick one of the raspbian ways. But is there a zynthian way as well?
Something I could configure in the webconf would be nice.
You need to run a mute every startâŚyes, mute, not unmuteâŚI think, itâs reversed somewhere.
This is hardcoded in the update_zynthian_sys.sh, inside zynthian-sys/scripts. You can fix It there.
Regards
that is only called during update.
I added this line (which works when I run it manually)
amixer -c audioinjectorul sset âDACâ mute
(note the bugâŚit means unmute)
But after restart itâs still mute.
I tried /etc/rc.local as well. But that is too early.
I tried to change the line in zynthian_engine_mixer but this only helps for the startup issue. When I change the volume in AudioMixer, itâs mute again.