Quick update from my end.
It looks like every frame coming out of the fsk4 demodulator (I'm assuming, still a n00b here) is marked with a 'duid' of 0x0. Consequently, when data_unit.cc initializes a new data_unit from the frame, it is always creating it as an HDU (P25 header) type. This then prevents the IMBE decoder from being executed b/c it's not a voice data unit type (LDU1/LDU2 (no idea what these mean)).
I figured maybe it has something to do with our system (Ohio MARCS) not being full P25 compliant and not including metadata of any sort, so I just made the following change to data_unit.cc and re-ran it:
--- op25-orig/blocks/src/lib/data_unit.cc 2012-04-24 10:31:29.139694592 -0400
+++ op25/blocks/src/lib/data_unit.cc 2012-04-26 08:12:35.183962129 -0400
@@ -39,7 +39,8 @@
uint8_t duid = extract(frame_body, 60, 64);
switch(duid) {
case 0x0:
- d = data_unit_sptr(new hdu(frame_body));
+ //d = data_unit_sptr(new hdu(frame_body));
+ d = data_unit_sptr(new ldu1(frame_body));
break;
case 0x3:
d = data_unit_sptr(new tdu(frame_body, false));
This seemed to sort of work as I now get rather garbled, but intelligible, audio from the decoder.
I've uploaded the baseband capture (1Msps) and resulting audio .wav file that I get at the following URLS:
http://s3.amazonaws.com/public-xrp/p25.iq.bz2
http://s3.amazonaws.com/public-xrp/p25.wav
Not sure if this is of any use, but it is encouraging to hear voices at least. :)
Thanks!
Bob
--- In op25-dev@yahoogroups.com, Andy Knitt <andyknitt@...> wrote:
>
> It looks like imbe_decoder_factory.cc in OP25 defaults to
> 'software_imbe_decoder'. I manually changed the IMBE environment variable
> to "soft" and confirmed it with printenv, but I'm still getting a flat line
> at the output of the OP25 block. Any other ideas?
>
> Thanks,
>
> Andy
>
> On Mon, Apr 23, 2012 at 11:47 PM, Balint <balint256@...> wrote:
>
> > **
> >
> >
> > I *still* haven't checked out the latest code, but in my old code the
> > default voice frame output was (null?).****
> >
> > There are options for file output, null, external (hardware) decoder and
> > internal decoder. You used to be able to spec this on the command line as
> > an environment variable:****
> >
> > export IMBE=soft****
> >
> > I changed my default to be the internal decoder (see
> > `imbe_decoder_factory.cc').****
> >
> > ** **
> >
> > *From:* op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] *On
> > Behalf Of *Andy Knitt
> > *Sent:* Tuesday, 24 April 2012 12:45 PM
> > *To:* op25-dev@yahoogroups.com
> > *Subject:* [op25-dev] OP25 GRC - Almost but not quite working****
> >
> > ** **
> >
> > ****
> >
> > I have the OP25 GRC demo that Balint provided up and running.
> > Everything seems to working except I'm not getting any audio out of
> > the OP25 block. I'm getting the "four line" output from the dibit
> > output port when there is traffic on the channel, and the autotune
> > output is outputting data. However, no audio. I put a scope on the
> > audio output and it's a flat line at zero, even when the dibit output
> > is "four lines". Any tips on how to further troubleshoot?
> >
> > Thanks,
> >
> > Andy****
> >
> > ****
> >
> >
> >
>