Support for LimeSDR board

1,309 views
Skip to first unread message

Matthias Brändli

unread,
Feb 10, 2017, 6:25:47 AM2/10/17
to CRC-mmbTools Google Group
Hi all,

those of you following me on twitter will have seen that I got my
LimeSDR yesterday :-)

Latest "next" of ODR-DabMod can now use the SoapySDR library and drive
that board. SoapySDR being a vendor-neutral library, it also supports
other boards (i.e. HackRF). Required dependencies to compile this are
described in INSTALL.

Cheers
mpb
LimeSDR.jpg

Nick Piggott

unread,
Feb 10, 2017, 12:21:51 PM2/10/17
to CRC-mmbTools Google Group
👏👏👏

--
You received this message because you are subscribed to the Google Groups "mmbtools" group.
To unsubscribe from this group and stop receiving emails from it, send an email to crc-mmbtools...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Eddy pe9ghz

unread,
Dec 26, 2017, 6:24:48 AM12/26/17
to mmbtools
hi all,

I've ordered my LimeSDR-Mini ( https://www.crowdsupply.com/lime-micro/limesdr-mini ) and are impatiently awaiting delivery (not to be expected until early january '18).
Which I would love to test it with ODR-DabMod.

Do you have any example configurations to use the LimeSDR, Mathhias ?

Merry Christmas!
Eddy

Matthias Brändli

unread,
Dec 27, 2017, 7:06:12 PM12/27/17
to crc-mm...@googlegroups.com
Hi Eddy,

The LimeSDR boards are abstracted through the SoapySDR API. If you are
able to run

SoapySDRUtil --make

successfully, you should be able to compile ODR-DabMod with the soapy
bindings (detected automatically during ./configure), and then use the
soapy output without any additional special manipulation. Have a look at
doc/example.ini

We would be curious to receive feedback about the LimeSDR mini! Are you
able to measure the output spectrum?

Cheers
mpb
> --
> You received this message because you are subscribed to the Google
> Groups "mmbtools" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to crc-mmbtools...@googlegroups.com
> <mailto:crc-mmbtools...@googlegroups.com>.

Eddy pe9ghz

unread,
Dec 28, 2017, 5:22:47 AM12/28/17
to mmbtools
Hi Matthias,
Thanks for your reply.
Thats fantastic, and nice that we don't need any additional gnuradio script to pipe the output like for the Hackrf board.

I've already compiled ODR-DabMod with the Soapy bindings:

ODR-DabMod version v1.1.0, compiled at Dec 25 2017, 21:50:36
Compiled with features: zeromq output_soapysdr fast-math SSE
And will now focus on the dabmod ini file to figure out the right options etc.

I do have an (old) spectrum analyser, but unsure if the dynamic range would be sufficient to determine if the DAB output falls within the specs. But at least I can compare it with the in the air signals.

I'll keep you all posted.
Cheers Eddy

Eddy pe9ghz

unread,
Dec 28, 2017, 3:04:56 PM12/28/17
to mmbtools
Unfortunately, we'll just have to be a little more patient before I can test the mmbtools with the LimeSDR mini:

Estimated shipping of has been pushed forward from Dec 31 to februrary 28th 
https://www.crowdsupply.com/lime-micro/limesdr-mini/updates/manufacturing-status

Matthias Brändli

unread,
Dec 28, 2017, 7:38:52 PM12/28/17
to crc-mm...@googlegroups.com
On 28/12/17 11:22, Eddy pe9ghz wrote:
> nice that we don't need any additional gnuradio script to pipe the
> output like for the Hackrf board.

FYI, you can also use SoapySDR to drive a HackRF.

If you do look at the spectrum, and have time to do a few experiments,
try out the OFDM windowing feature that was added in the ODR-DabMod
"next" branch. I'd be curious to know how the spectrum looks like in the
following scenarios

- no windowing, no FIRFilter
- windowing, no FIRFilter
- no windowing, FIRFilter
- windowing, FIRFilter

with default windowing and FIRFilter settings.

I also wonder what are the best default settings for both features, but
that needs more measurements.

mpb

888...@gmail.com

unread,
Dec 29, 2017, 2:43:46 AM12/29/17
to mmbtools
HI,

I tried to use this new features but I have error:
Modulator runtime error: File output format complexf not known

Without it I can't try nothing.

Regards

Matthias Brändli

unread,
Dec 29, 2017, 3:28:49 AM12/29/17
to crc-mm...@googlegroups.com
Hi,

you found a small regression, introduced on 22nd December. Sorry about
that, it's fixed now.

mpb

peter allridge

unread,
Feb 21, 2018, 6:41:54 PM2/21/18
to mmbtools
You didn't happen to measure output power did you? or shoulders? just curious.

Pete

Matthias Brändli

unread,
Feb 22, 2018, 3:43:21 AM2/22/18
to crc-mm...@googlegroups.com
No I didn't measure this last time. Or maybe I did and forgot about it :-/

It could be nice to do some measurements to see what are the best
parameters. Something like
http://wiki.opendigitalradio.org/USRP_B200_Measurements

mpb

Christian Winter

unread,
Mar 8, 2018, 11:54:14 AM3/8/18
to mmbtools
Hi,

I got my LimeSDR working with ODR-Dabmod and SoapySDR support last year, but now I want to get the AD ADALM-Pluto device to run with ODR-Dabmod.

I changed the firmware of the ADALM Pluto to support the DAB/FM Frequency Range and I compiled
https://github.com/jocover/SoapyPlutoSDR

This is the Output from SoapySDRUtil

odr@ubuntu:~/config$ SoapySDRUtil --probe="driver=plutosdr"
######################################################
##     Soapy SDR -- the SDR abstraction library     ##
######################################################

Probe device driver=plutosdr

----------------------------------------------------
-- Device identification
----------------------------------------------------
  driver=Library version: 0.14 (git tag: v0.14)
  hardware=Backend version: 0.12 (git tag: v0.12  )
  ad9361-phy,model=ad9364
  ad9361-phy,xo_correction=39999980
  fw_version=v0.26
  hw_model=Analog Devices PlutoSDR Rev.B (Z7010-AD9363)
  hw_model_variant=1
  hw_serial=104400b8399100170a000b00ccfa646ce9
  local,kernel=4.9.0-10194-g40c2158
  usb,idProduct=b673
  usb,idVendor=0456
  usb,product=PlutoSDR (ADALM-PLUTO)
  usb,release=2.0
  usb,serial=104400b8399100170a000b00ccfa646ce9
  usb,vendor=Analog Devices Inc.

----------------------------------------------------
-- Peripheral summary
----------------------------------------------------
  Channels: 1 Rx, 1 Tx
  Timestamps: NO

----------------------------------------------------
-- RX Channel 0
----------------------------------------------------
  Full-duplex: YES
  Supports AGC: NO
  Stream formats: CS8, CS16, CF32
  Native format: CS16 [full-scale=2048]
  Antennas: A_BALANCED
  Corrections: DC removal
  Full gain range: [0, 89] dB
    PGA gain range: [0, 89] dB
  Full freq range: [70, 6000] MHz
    RF freq range: [70, 6000] MHz
  Sample rates: 0.065105, 1, 2, 3, 4, 6, 7, 8, 9, 10 MSps
  Filter bandwidths: 0.2, 1, 2, 3, 4, 6, 7, 8, 9, 10 MHz

----------------------------------------------------
-- TX Channel 0
----------------------------------------------------
  Full-duplex: YES
  Supports AGC: NO
  Stream formats: CS8, CS16, CF32
  Native format: CS16 [full-scale=2048]
  Antennas: A
  Corrections: DC removal
  Full gain range: [0, 89] dB
    PGA gain range: [0, 89] dB
  Full freq range: [70, 6000] MHz
    RF freq range: [70, 6000] MHz
  Sample rates: 0.065105, 1, 2, 3, 4, 6, 7, 8, 9, 10 MSps
  Filter bandwidths: 0.2, 1, 2, 3, 4, 6, 7, 8, 9, 10 MHz

and ORD-Dabmod is configured as

[soapyoutput]
device=
master_clock_rate=32768000
txgain=80
;frequency=234208000
channel=6C

When I start ODR-Dabmod it is not working and this is the output:

ODR-DabMod version v1.1.0, compiled at Mar  3 2018, 00:30:42
ODR-DabMod: INFO: RC: Waiting for connection on port 2121
Compiled with features: zeromq output_uhd output_soapysdr SSE
Input
  Type: file
  Source: /home/odr/odr_test.eti
Output
 SoapySDR
  Device:
  master_clock_rate: 32768000
  Sampling rate: 2.048 MHz
      RC: Waiting for connection on port 2121
ODR-DabMod: INFO: Starting up version v1.1.0
      Starting up version v1.1.0
ODR-DabMod: INFO: OutputSoapy:Creating the device with:
      OutputSoapy:Creating the device with:
ODR-DabMod: INFO: SoapySDR master clock rate set to 0 kHz
      SoapySDR master clock rate set to 0 kHz
ODR-DabMod: INFO: OutputSoapySDR:Actual TX rate: 30720 ksps.
      OutputSoapySDR:Actual TX rate: 30720 ksps.
ODR-DabMod: INFO: OutputSoapySDR:Actual frequency: 185360 kHz.
      OutputSoapySDR:Actual frequency: 185360 kHz.
ODR-DabMod: INFO: OutputSoapySDR:Actual tx gain: 79
      OutputSoapySDR:Actual tx gain: 79
Input file format: raw
Input file length: 57729024
Input file nb frames: 9396
ODR-DabMod: INFO: Setting up timestamp decoder with 0 offset
      Setting up timestamp decoder with 0 offset
No resampler
ODR-DabMod: INFO: OutputSoapy: dropping one frame with invalid FCT
      OutputSoapy: dropping one frame with invalid FCT


Does anyone have an idea what is wrong? Changing the devicename in mod.ini to plutosdr is not working either.

Christian

Nick Piggott

unread,
Mar 8, 2018, 12:10:34 PM3/8/18
to crc-mm...@googlegroups.com
Hi Christian,

What happens after the message that OutputSoapy is dropping a frame with invalid FCT? Does odr-dabmod crash out, or does it just "hang", and you have to press CTRL+C to quit  it?

I get the dropping a frame with invalid FCT warning when using a B200, but the modulator continues just fine until I quit odr-dabmod. It could be something like the gain or the sample frequency is not set correctly for the board, rather than the library creating an error?

Nick


> For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "mmbtools" group.
To unsubscribe from this group and stop receiving emails from it, send an email to crc-mmbtools...@googlegroups.com.

Matthias Brändli

unread,
Mar 8, 2018, 12:13:03 PM3/8/18
to crc-mm...@googlegroups.com
Hi Christian

On 08/03/18 17:54, Christian Winter wrote:
> ODR-DabMod: INFO: SoapySDR master clock rate set to 0 kHz
> ODR-DabMod: INFO: OutputSoapySDR:Actual TX rate: 30720 ksps.

Something seems to be wrong with setting these parameters.

Does the Soapy device driver for the Pluto support these? What master
clock rate values does the Pluto support?

mpb

PS:
you seem to have file logging enabled to standard error, that's why you
get all log lines twice.

Christian Winter

unread,
Mar 8, 2018, 12:25:34 PM3/8/18
to mmbtools
Hi Nick and Matthias,


 odr-dabmod does not crash out, it just "hangs". after that message.

I don't know if the soapysdr driver supports this. I will have a look onto the adalm-pluto support sites.

Christian

Matthias Brändli

unread,
Mar 8, 2018, 12:32:45 PM3/8/18
to crc-mm...@googlegroups.com
Which SoapySDR Device driver are you using?

This one? https://github.com/jocover/SoapyPlutoSDR

This one doesn't implement the master_clock_rate interface, which is why
it returns 0. But the samplerate interface is there:
https://github.com/jocover/SoapyPlutoSDR/blob/master/PlutoSDR_Settings.cpp#L346

If you have doubts about this driver, but are able to drive the Pluto
through GNURadio (e.g. transmitting an unmodulated carrier), you can
create a simple flowgraph and use the ODR-DabMod ZeroMQ output,
connected to a GNURadio ZeroMQ source.

mpb
> --
> You received this message because you are subscribed to the Google
> Groups "mmbtools" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to crc-mmbtools...@googlegroups.com
> <mailto:crc-mmbtools...@googlegroups.com>.

Rashid Mustapha

unread,
Mar 8, 2018, 1:01:53 PM3/8/18
to crc-mm...@googlegroups.com
Hello,

I have a couple of ADALM Pluto units in my collection. Are you aware that apart from the frequency range hack, you can also enable the second ARM core in the Zync? 

I suspect these restrictions were 'helpful' in enabing them to meet FCC Part 15 and CE EMC regulations. This enabled them to be placed on the open market rather than restricted to B2B for research and development purposes. Obviously such modification voids the compliance. ;)

On to the matter at hand...

Is Pluto fully supported in soapy yet? The only plugin I have seen is for the receive path only.

When I tried the libiio sinks and source with a zmq source in GNURadio and managed to generate a signal. There were no underruns but I could not resolve it. Then I ran out of time. If you have trouble at that point, don't dispair.

Also, don't expect much signal!

I cannot think of any reason why Pluto shouldn't work. I will dig out one of mine and see if I can finish what I started.

Is anyone clever interested in writing an adaptive filter and least-mean-square estimator for Pluto it could potentially turn it into a low-cost echo cancelling on-channel repeater or translator module. 

Best regards,

Rash



> For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "mmbtools" group.
To unsubscribe from this group and stop receiving emails from it, send an email to crc-mmbtools+unsubscribe@googlegroups.com.

Christian Winter

unread,
Mar 14, 2018, 1:57:15 PM3/14/18
to mmbtools
Hi Rash!

I tried this plugin https://github.com/jocover/SoapyPlutoSDR but it was not working. Have you managed to get the Adalm Pluto running with odr-dabmod?

Christian

Rashid Mustapha

unread,
Mar 14, 2018, 5:26:46 PM3/14/18
to crc-mm...@googlegroups.com
Hi,

As far as I can tell, only the rx will work with that, so it cannot be used with odr-dabmod. I've not had any spare time to play further, but the GNU Radio route looks the easiest at the moment.

Best regards,

Rash.


Eddy pe9ghz

unread,
Apr 27, 2018, 6:28:38 AM4/27/18
to mmbtools
Hi all,

I finally received my LimeSDR mini this Thursday.. (april 25th) after a very long wait...
Last night after some initial tests with HDSDR+Extio in Windows, I've begun to experiment using it for DAB+ transmission.
On my Linux laptop (Ubuntu 16.04 LTS) I installed all the latest packages for LimeSDR and SoapySDR from the miriadrf repo.

Also pulled the latest ODR-DabMod from the repository and compiled it again with SoapySDR support.

Then tried to build a working configuration file for ODR-DabMod. (The other components, like ODR-AudioEnc PadEnc and DabMux are running on a different linux box, that I already prepared months ago waiting for the arrival of my LimeSDR mini).

I'm now listening to my (1mW ;-) Dab broadcast using Welle.IO and an RTL-SDR.com dongle on another (win10) Lappy.
I do observe a big center carrier, which isn't present on other on-air DAB muxes that I can receive, so I guess some things needs to be changed in my config.




After severa

On Friday, February 10, 2017 at 12:25:47 PM UTC+1, Matthias Brändli wrote:

Matthias Brändli

unread,
May 1, 2018, 9:13:12 AM5/1/18
to crc-mm...@googlegroups.com
Hi Eddy

> I finally received my LimeSDR mini this Thursday.. (april 25th) after a
> very long wait...

My order is still pending, but should be shipped soon.


> I'm now listening to my (1mW ;-) Dab broadcast using Welle.IO and an
> RTL-SDR.com dongle on another (win10) Lappy.

Excellent, congrats on proving it works, and thanks for letting us know!


> I do observe a big center carrier, which isn't present on other on-air
> DAB muxes that I can receive, so I guess some things needs to be changed
> in my config.

The LimeSDR might need calibration to get rid of the DC offset. Sadly, I
found the official documentation not very clear on how to proceed (For
the first LimeSDR, not the mini)

If you find good procedures that have to be done for reliable TX signal
quality, please share on the mailing-list, or even better, create a wiki
page on wiki.opendigitalradio.org !

Cheers
mpb

Eddy pe9ghz

unread,
May 9, 2018, 4:54:52 PM5/9/18
to mmbtools
Hi Matthias,

the "big spike in the center" I can only see it on the spectrum display of Welle.IO. So It might be an artefact of the RTL-SDR dongle.

I've looked at the spectrum on my (very old) Ailtech spectrum analyser and it actually looks quite good  (without any additional filtering after the LimeSDR Tx output), with no center spike.
Will try and take a picture of the display when I'm again experimenting with it.

The unsaturated (P1dB  -10dB) Output power is approx 13dBm, with a txgain setting of about 72 and a digitalgain setting of 1.0 in odr-dabmod (using soapy)
I was surprised (nearly damaged my HP478 thermistor mount, I only used a 6dB pad) to see the unmodulated carrier (at the very start of odr-dabmod) reaching over 20dBm out of the LimeSDR mini in the DAB band..

Few more observations wit the LimeSDR-Mini:
Every time when odr-dabmod is started, there's an Error message emitted (by the Soapy driver) in Red font:

[ERROR[ Tx Calibration: MCU Error 5 (Looback signal weak: not connected/insufficient gain?)

The only situation that this error doesn't occur is with a very high txgain setting (around 80) in the odr-dabmod configuration file, but then of course the output is dirty (spectral regrowth), unsuitable for actual transmission.

Measured output power (@184MHz)

txgain  output(dbm)

82      18,6
73      15,0
67      10,4
61       5,4
57       2,0
54      -0,5

peter allridge

unread,
May 9, 2018, 6:44:58 PM5/9/18
to mmbtools
Hi all, 
Can any of you understand what ive done wrong here I cant get the limesdr mini to transmit im probably missing something simple here in the modulator.ini file but here is the error log?

pi@raspberrypi:~/dab/ODR-DabMod $ odr-dabmod modulator.ini
ODR-DabMod version v2.0.0, compiled at May  9 2018, 20:37:24

Compiled with features: zeromq output_soapysdr
      RC: Waiting for connection on port 2121
      Configuration parsed. Starting up version v2.0.0
Input
  Type: zeromq
  Source: tcp://localhost:9100
Output
 SoapySDR
  Device: limesdr mini
  master_clock_rate: 32768000
  Sampling rate: 2.0480 MHz
      Soapy:Creating the device with: limesdr mini
[INFO] Make connection: 'LimeSDR Mini [USB 2.0] 1D3AC6EFD12DC3'
[INFO] Reference clock 40.00 MHz
[INFO] Device name: LimeSDR-Mini
[INFO] Reference: 4e+07 MHz
[INFO] LMS7002M calibration values caching Disable
      SoapySDR master clock rate set to 32767.9995 kHz
      SoapySDR:Actual TX rate: 2048.0000 ksps.
      SoapySDR:Actual frequency: 204640.000 kHz.
      SoapySDR:Actual tx gain: 40.00
      SoapySDR:Actual tx antenna: BAND1

      Setting up timestamp decoder with 0 offset
      Input ZeroMQ: Receiving from tcp://localhost:9100
WARN  ZeroMQ buffer low: 4 elements !
WARN  SDR output: Feedback server failed, restarting...
[ERROR] Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
[INFO] Rx calibration finished
WARN  ZeroMQ buffer overfull !
ERROR Exception during receive: 'ZMQ input full'
      ZeroMQ input worker terminated
[WARNING] popping from TX, samples popped 456/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
[WARNING] popping from TX, samples popped 0/1020
^CERROR Modulator failure.
      1300 DAB frames encoded
      31.2 seconds encoded
      Process time:
                    DabModulator:   50151580 us (91.48 %)
                OutputSDR(Soapy):    4670632 us (8.52 %)
                           total:   54822212 us (100.00 %)
      Process time:
                   PrbsGenerator:     313075 us (0.63 %)
                       FicSource:      11103 us (0.02 %)
                   PrbsGenerator:      24204 us (0.05 %)
                     ConvEncoder:      37718 us (0.08 %)
               PuncturingEncoder:      41079 us (0.08 %)
                SubchannelSource:       4531 us (0.01 %)
                   PrbsGenerator:      33148 us (0.07 %)
                     ConvEncoder:      97799 us (0.20 %)
               PuncturingEncoder:     106532 us (0.21 %)
                 TimeInterleaver:     203324 us (0.41 %)
                SubchannelSource:       4075 us (0.01 %)
                   PrbsGenerator:      31537 us (0.06 %)
                     ConvEncoder:      97099 us (0.19 %)
               PuncturingEncoder:     106164 us (0.21 %)
                 TimeInterleaver:     190016 us (0.38 %)
                SubchannelSource:       3418 us (0.01 %)
                   PrbsGenerator:      23561 us (0.05 %)
                     ConvEncoder:      51004 us (0.10 %)
               PuncturingEncoder:      55843 us (0.11 %)
                 TimeInterleaver:      96198 us (0.19 %)
                SubchannelSource:       3419 us (0.01 %)
                   PrbsGenerator:      22809 us (0.05 %)
                     ConvEncoder:      50249 us (0.10 %)
               PuncturingEncoder:      54502 us (0.11 %)
                 TimeInterleaver:      94831 us (0.19 %)
                SubchannelSource:       3779 us (0.01 %)
                   PrbsGenerator:      22597 us (0.05 %)
                     ConvEncoder:      50695 us (0.10 %)
               PuncturingEncoder:      54462 us (0.11 %)
                 TimeInterleaver:      94241 us (0.19 %)
                SubchannelSource:       3362 us (0.01 %)
                   PrbsGenerator:      21375 us (0.04 %)
                     ConvEncoder:      50353 us (0.10 %)
               PuncturingEncoder:      54931 us (0.11 %)
                 TimeInterleaver:      93657 us (0.19 %)
                SubchannelSource:       3479 us (0.01 %)
                   PrbsGenerator:      22842 us (0.05 %)
                     ConvEncoder:      51055 us (0.10 %)
               PuncturingEncoder:      55229 us (0.11 %)
                 TimeInterleaver:      93980 us (0.19 %)
                SubchannelSource:       3267 us (0.01 %)
                   PrbsGenerator:      21469 us (0.04 %)
                     ConvEncoder:      50435 us (0.10 %)
               PuncturingEncoder:      54744 us (0.11 %)
                 TimeInterleaver:      92839 us (0.19 %)
                FrameMultiplexer:      27114 us (0.05 %)
                BlockPartitioner:      16159 us (0.03 %)
                QpskSymbolMapper:     316024 us (0.63 %)
            FrequencyInterleaver:     601659 us (1.20 %)
                  PhaseReference:       7085 us (0.01 %)
           DifferentialModulator:     940125 us (1.88 %)
                      NullSymbol:       2983 us (0.01 %)
                  PhaseReference:       3899 us (0.01 %)
          TII(c:1 p:11 vrnt:new):       3308 us (0.01 %)
               SignalMultiplexer:     318940 us (0.64 %)
                   OfdmGenerator:   13421405 us (26.82 %)
                     GainControl:     103097 us (0.21 %)
           GuardIntervalInserter:     889774 us (1.78 %)
                       FIRFilter:   30229582 us (60.40 %)
                    OutputMemory:     513785 us (1.03 %)
                           total:   50050968 us (100.00 %)
      Terminating
 maybe this just does not like being ran on a rpi3 b+? im unsure myself now.

peter allridge

unread,
May 9, 2018, 7:01:55 PM5/9/18
to mmbtools
Hi again ive included the config file

Pete

On Friday, 10 February 2017 11:25:47 UTC, Matthias Brändli wrote:
modulator.txt

Dennis Wynes

unread,
May 10, 2018, 4:01:28 AM5/10/18
to mmbtools
Do you have/need a simul:// output in the multiplexer?

peter allridge

unread,
May 10, 2018, 5:27:55 AM5/10/18
to mmbtools
Hi dennis simul:// is on in the multiplexer yes

Eddy pe9ghz

unread,
May 10, 2018, 5:51:08 AM5/10/18
to mmbtools

As promised, LimeSDR-mini output spectrum as seen on my analyser. Pout=10dBm (never mind the Ref level in the image, the calibration is way off seems my analyser front end is missing some gain).


cheers Eddy

Eddy pe9ghz

unread,
May 10, 2018, 5:54:15 AM5/10/18
to mmbtools
Hi Peter,

I've seen this "[WARNING] popping from TX, samples popped 0/1020" in my setup, when there is a network connection problem between the modulator and the mux.

Otherwise it's been running flawlessly for hours.

hth Eddy


On Thursday, May 10, 2018 at 12:44:58 AM UTC+2, peter allridge wrote:
Hi all, 
Can any of you understand what ive done wrong here I cant get the limesdr mini to transmit im probably missing something simple here in the modulator.ini file but here is the error log?

p...@raspberrypi:~/dab/ODR-DabMod $ odr-dabmod modulator.ini

peter allridge

unread,
May 10, 2018, 6:06:08 AM5/10/18
to mmbtools
Hi Eddy, interesting to say but the mux/mod is on the pi3 b+ together so I would of thought network isn't an issue altho having said that it might just not like being on the same machine as the MOD at the same time i'll adjust the MUX running now and send that to the lime stuff see if that helps? I know the hack rf im running atm does not like being on a pi at all far too much cpu used but this lime seems to run at about 40% then trips up with no rf output at all.. I hope this limesdr mini isn't broke..

Pete

Eddy pe9ghz

unread,
May 10, 2018, 6:22:10 AM5/10/18
to mmbtools
Hi Peter,

I haven't tried running the modulator on a PI3+ I must admit. I did run the mux + an instance of audioenc (encoding an internet stream thu vlc) on it, but found it wasn't stable. (the audioenc/vlc processes eating to much of the available CPU cycles).
I've run the modulator + limesdr mini on a "regular" but older Intel Pentium Pro based Laptop and desktop under Ubuntu 16.04 LTS and found the cpu usage below 50% of 1 core. Anything higher and the DAB stream started to show intermittent dropouts. 

Perhaps running it all together on one single PI3+ is too much to ask for ?

cheers Eddy

peter allridge

unread,
May 10, 2018, 6:32:31 AM5/10/18
to mmbtools
Hi Eddy,
Now im running 8 streams on a pi3 b model only and cpu is sitting around 50% and is running audioenc with dls and pad data for each with no issues the limesdr is running on a newer pi3 b+ model a little faster but it does not look like it is using too much cpu at all not compared to the hackrf one which totally used 100% and instantly trips out this seems to run but no output. I have a 2.8ghz amd dual core to use ill fire the mpx off that and see what happens if no luck i'll have to try it all on the pc.

Pete

Eddy pe9ghz

unread,
May 10, 2018, 12:57:37 PM5/10/18
to mmbtools
Hi Peter

A long shot.. Is your Mux and Mod running on the same host ? If not, then your  source=tcp://localhost:9100 must be altered to the actual IP address of the host running the Mux.

Eddy  

peter allridge

unread,
May 10, 2018, 4:30:35 PM5/10/18
to mmbtools
Hi, its not that pal ive installed onto pc and its working but the power output is less than the hack rf is? how have you managed to get so much output ive tried all settings and it will not go over -20DBM which is useless for driving any amplifier.. anyone know why?

Pete

peter allridge

unread,
May 10, 2018, 5:42:20 PM5/10/18
to mmbtools
I can't get a good enough signal in the same room where the hack rf runs perfectly and when I do get enough signal I get errors skipping losing lock and alsorts? Either I've got a duff limesdr mini or they are rubbish, This hack rf's power out is weak -24DBM but I can get that anywhere round the house if I connect the aerial to it not the same for this limesdr I'm afraid.

Any help please?

Pete

Eddy pe9ghz

unread,
May 11, 2018, 6:28:58 AM5/11/18
to mmbtools

At first I had also very llittle output power. Until I started fiddling with the options in the ini file.

The key is, I believe, to select the proper "TX Antenna" output to the TX because The LMS chip has more than one output, but there is only one TX SMA connector on the LimeSDR mini.

I'll paste my config, I can reach at least +10dBm output before spectral regrowth starts to occur. I'm looking for an amplifier to crank this power up to several watts. What could I use ?

[input]
transport=zeromq
source=tcp://somewhere:9100
max_frames_queued=1000

[modulator]
gainmode=max
mode=1
digital_gain=1.0
ofdmwindowing=10

[cfr]
enable=0
clip=70.0
error_clip=0.1

[firfilter]
enabled=0

[poly]
enabled=0
polycoeffile=polyCoefs

[output]
output=soapysdr

[soapyoutput]
device=lime
master_clock_rate=40000000
txgain=68
channel=6B
lo_offset=0
tx_antenna=BAND2

peter allridge

unread,
May 11, 2018, 6:41:54 AM5/11/18
to mmbtools
Hi Eddy,

I'm going to use a Mitsubishi module I bought the RA30H2127M it's rated 30w out but will run into linear operation I believe and it's what a few trials have used for testing in the eu? There are other model numbers slightly different frequency ranges but with 5mw in that should give around 2w out enough to drive a final module for some good output.

Thanks for posting your config I haven't adjusted the clock rate and it seems my usb3 ports are not working as usb3 and can't see why it is an old mobo the so I can't do much more now as I suspect usb2 just isn't fast enough. Time to save up as they say..

Thanks all I'll get back to you when I get a working usb3 PC..

Pete

Dennis Wynes

unread,
May 11, 2018, 9:54:26 AM5/11/18
to mmbtools

Eddy pe9ghz

unread,
May 12, 2018, 7:44:12 AM5/12/18
to mmbtools
Hi Peter,

Thanks for the tip on the Mitsubishi module. Guess that will be my next step. Currently making "a little bit" of power using 2x Minicircuits ZFL-2500VH amplifier blocks combined in parallel, generating about +17dBm (50mW) clean output. But thats a lot of effort for just 6dB more power than the LimeSDR-Mini alone can deliver.

Re USB3 and the master clock rate: I don't run my LimeSDR-mini on USB3 ports, I've got 2 old systems (Dell Optiplex desktop with Pentium 4 cpu @3,2GHz and a Dell Lattitude laptop with Intel Core 2 Duo cpu @2,26GHz) both of which seem to deal with the speed, as long as its the only thing they need to do. So I only run the odr-dabmod process on them. The Mux and audoenc running on a different (even lower spec) computer.

Ed

Eddy pe9ghz

unread,
May 12, 2018, 7:47:06 AM5/12/18
to mmbtools
Very nice! But it needs a driver stage to yield the required input power of 1-1,5Watts.
Any suggestions on this?

peter allridge

unread,
May 12, 2018, 8:21:56 AM5/12/18
to mmbtools
Hi Eddy, I fired the module up yesterday with -18dbm input and got +12dbm out myself that's a gain of 30db there and I only had bias set to 4v so not tuned up properly at all at 12v in,
as for this pc for dabmod yeah far far too slow so im getting a new 1 next week might aswell seeing as its needed for the final setup.

Pete

Francesco Berti

unread,
May 12, 2018, 8:32:09 AM5/12/18
to mmbtools
How are shoulders? Do you have 40dB from crest?

peter allridge

unread,
May 12, 2018, 8:41:05 AM5/12/18
to mmbtools
Hi, I didn't tune it or take any measurements im afraid it was just a quick test to see if the module worked and it does I cant do anything else now until I have a pc to run the limesdr properly now..
also I don't have an analyser wish I did so im stuck to using a sdr device for visuals only. not ideal I know.

Pete


On Saturday, 12 May 2018 13:32:09 UTC+1, Francesco Berti wrote:

Francesco Berti

unread,
May 12, 2018, 9:05:30 AM5/12/18
to mmbtools
It's very important look at the level of shoulders, it can give a fast idea of the MER of the digital signal. If we have in output +15dbm but the MER is 20db we have a worst signal, is better to have +5dBm but a MER OF 30 db.

peter allridge

unread,
May 12, 2018, 9:14:28 AM5/12/18
to mmbtools
Shoulders looked ok in welle.io see attached pic I quickly snapped?
received_10213121154677624.jpeg

Francesco Berti

unread,
May 12, 2018, 9:51:08 AM5/12/18
to mmbtools
From this pic I can't apprezzate the shoulder level, We need the value of the difference from crest and right and left noise, is necessary a spectrum analizer.

Matthias Brändli

unread,
May 12, 2018, 11:02:28 AM5/12/18
to crc-mm...@googlegroups.com
Don't trust this. You'll never have enough dynamic nor a wide enough
bandwidth to properly judge the quality of your signal!

We're talking 40dB difference, on the pic you're seeing 18dB dynamic!
Totally meaningless!

mpb
> --
> You received this message because you are subscribed to the Google
> Groups "mmbtools" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to crc-mmbtools...@googlegroups.com
> <mailto:crc-mmbtools...@googlegroups.com>.
> For more options, visit https://groups.google.com/d/optout.

peter allridge

unread,
May 21, 2018, 9:51:51 AM5/21/18
to mmbtools
Hi, yes I know its nowhere near accurate but it does help as a visual refrence so I can have a test signal and get use to all the settings and so on.. and yes I do desperately need a spectrum analyser im still looking around for one at a good price.

Pete

Rashid Mustapha

unread,
Nov 13, 2018, 3:56:08 PM11/13/18
to crc-mm...@googlegroups.com
Hello Christian,

The Association Digitale Numerique of Marseilles kindly hosted us at an ODR workshop this past weekend. We were in a remote 'Gite' so I passed some time to look into ADALM Pluto support, and am happy to report it works with GNU Radio. No soapy support though - something is broken and we gave up as Pluto because only suitable as a testing tool rather than production use.

I have produced some documentation which is currently on my Github, but I haven't merged it because it isn't in the correct LaTEX mark-up (and so MPB would rightly be upset if I did!) I have rather naughtily sent a pull request so you should be able to find it by looking in mmbtools-doc. ;-)

The best signal quality produces -16dBm with 50dB shoulders. This is more than enough for experimentation with receivers.

Best regards,

Rash.

On Wed, 14 Mar 2018 at 17:57, Christian Winter <winter.c...@gmail.com> wrote:
Hi Rash!

I tried this plugin https://github.com/jocover/SoapyPlutoSDR but it was not working. Have you managed to get the Adalm Pluto running with odr-dabmod?

Christian


--
You received this message because you are subscribed to the Google Groups "mmbtools" group.
To unsubscribe from this group and stop receiving emails from it, send an email to crc-mmbtools...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages