Page 9 of 12

Re: ExpertSDR

PostPosted: Sat Apr 25, 2015 5:20 am
by W4MMP
Hi Florin,

Thanks very much. I will set up it according to your instructions tomorrow and let you know.

Re: ExpertSDR

PostPosted: Sat Apr 25, 2015 5:42 am
by florin.tanasa
Ok Ron,
We discuss tomorrow.

73,YO8TFF, Florin

Re: ExpertSDR

PostPosted: Sat Apr 25, 2015 1:21 pm
by W4MMP
Hi Florin,

What version of Jack are you using? Jack1 or Jack2?

Re: ExpertSDR

PostPosted: Sat Apr 25, 2015 5:19 pm
by W4MMP
Hi Florin,

Almost working. The application comes up and I can configure the audio device via the configure screen. Just one more thing to fix and I think ExpertSDR will work.

I get this when I kick on the upper left hand start button:
Expression 'parameters->channelCount <= maxChans' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 1438
Expression 'ValidateParameters( inputParameters, hostApi, StreamDirection_In )' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 2742
pa19::start(): Invalid number of channels
ExpertSDR: OnStart(): SDR control can't started!
ExpertSDR: OnStart(false).
SetRx1Osc is set: 0

Also, I get a pop up window with the following text: Portaudio Error! Can't open stream.

I know port audio is working because I can run a portaudio utility called pa_devs and it finds the device.

It appears my audio device is not configured properly. It is a C-Media USB Audio Device.

Re: ExpertSDR

PostPosted: Sat Apr 25, 2015 8:29 pm
by florin.tanasa
I know this problem also at me not work all time and in ubuntu in special with my usb sound card and alsa but if you start jack you can used.
I check with debugger if take correct the number of channels for input and output and is ok.
Install QjackCtl and this take also jack if not install jack2

Re: ExpertSDR

PostPosted: Sat Apr 25, 2015 8:46 pm
by W4MMP
Hi Florin,

I think I have narrowed the problem down to an issue with portaudio. I believe it is due to the fact that the USB audio device has only "mono" input. I have made a post on the portaudio email list. I will wait until I hear something back from the port audio folks. Almost there !!!

Thanks again for all your help.

On a separate issue. Now that ExpertSDR is almost working, is there a document that specifies the application interface between ExpertSDR and optional plug in(s)? ExtIO_Si570.dll works on Windows (obviously) but there is no ExtIO_Si570.dll replacement for Linux. This is what I have been waiting to do. I plan to produce an option plugin for the Peaberry (or softrock RXTX) but I need to know what to interface it with ExpertSDR.

Re: ExpertSDR

PostPosted: Sun Apr 26, 2015 6:13 am
by florin.tanasa
Look Ron,
Debug in manjaro http://www.zimagez.com/zimage/debugpamanjaro.php where the same card work with alsa driver
and
Debug in ubuntu http://www.zimagez.com/zimage/screensho ... 085956.php where the same card not work with alsa driver
I do not know why, because another sdr software xSDR from our group, this is closed source, work in ubuntu and this also use portaudio.
Later I try recompile from source portaudio and to check if with the last source work.

73, YO8TFF, Florin

Re: ExpertSDR

PostPosted: Mon Apr 27, 2015 5:30 pm
by W4MMP
Hi Florin,
The problem is with OpenExpertSDR.

1) My first test was using a C-Media USB audio adapter. The problem is that OpenExpertSDR is not properly examining the capabilities of the audio device as presented by portaudio and reporting that the audio adapter is not compatible with Openexpersdr . This C-Media adapter only has a mono stereo input. I understand that a mono input is not compatible with OpenExpertSDR , however OpenExpertSDR should report that. At the moment it is causing portaudio to throw an exception:

Expression 'parameters->channelCount <= maxChans' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 1438
Expression 'ValidateParameters( inputParameters, hostApi, StreamDirection_In )' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 2742
pa19::start(): Invalid number of channels

I posted this to the portaudio email list and it is confirmed the cause of the exception is that OpenExpertSDR is ignoring the capabilities of the audio device and attempting to features the device is not capable of.

2)I attached my Peaberry to the RPi 2. OpenExpertSDR detects the Peaberry sound device and allows me to set the Peaberry sound device in the configuration window. However, when I press the OpenExpertSDR start button, it again causes portaudio to throw an exception:
Expression 'alsa_snd_pcm_hw_params_set_buffer_size_near( self->pcm, hwParams, &bufSz )' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 2005
Expression 'PaAlsaStreamComponent_FinishConfigure( &self->capture, hwParamsCapture, inParams, self->primeBuffers, realSr, inputLatency )' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 2655
Expression 'PaAlsaStream_Configure( stream, inputParameters, outputParameters, sampleRate, framesPerBuffer, &inputLatency, &outputLatency, &hostBufferSizeMode )' failed in 'src/hostapi/alsa/pa_l
inux_alsa.c', line: 2767

This probably because OpenExpertSDR is not honoring the capabilities of the Peaberry sound device. I have tested the Peaberry sound device with the portaudio utilities and everything tests good.

What source file has the code for opening and configuring the audio device?

Re: ExpertSDR

PostPosted: Tue Apr 28, 2015 1:34 pm
by florin.tanasa
Hi Ron,
The file is pa19.cpp from https://github.com/florintanasa/OpenExp ... /PortAudio
Try to start with jack or an usb sound card if you have and check if usable in your platform.

Re: ExpertSDR

PostPosted: Tue Apr 28, 2015 4:05 pm
by W4MMP
Hi Florin,
Thanks for the information. I really don't want to use Jack as it introduces just another variable into the mix. I will see what I can do with modifying the portaudio control and usage of the audio devices. At one time in doing all this "stuff", I think I had an audio adapter attached to the RPi2 that actually worked with OpenExpertSDR. It has stereo for both input and output. I will move it from my PC to the RPi2 and test again. If it works, that proves that portaudio works and the issue is with the method OpenExpertSDR uses to manage audio devices. Also, again if the USB adapter to which I am referring works, that means I must fix the source code so that it works with the Peaberry.

This has been a learning experience.