Difference between revisions of "Using LimeSDR with Portsdown"

From BATC Wiki
Jump to navigation Jump to search
 
(70 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
===Introduction===
 
===Introduction===
  
'''Being updated for upcoming release 201811300'''
+
The Portsdown software supports the LimeSDR Mini.  Support for the LimeSDR USB is provided on a best-efforts basis, but not tested. 
  
Software version 201811300 introduces support for the Lime SDR Mini and the Lime SDR USB.  Due to the limited CPU power of the Raspberry Pi, many LimeSDR transmit modes are limited to 1MS and below.  For higher SRs, use of the Portsdown Filter-modulator board is recommended.
+
However, due to the limited CPU power of the Raspberry Pi, many LimeSDR transmit modes are limited to 1MS and below.
  
===Powering the Lime===
+
===Setting up the system===
  
The LimeSDR (both Mini and USB versions) has a greater power consumption than the RPi can comfortably power from its USB Port, so a powered USB Hub should be used to provide power to the Lime.
+
Either buy a pre-configured SD card from the BATC shop https://batc.org.uk/category/portsdown/ or download and install the standard Portsdown software on your own SD card - see this page for more details: https://wiki.batc.org.uk/Initial_setup
 +
 
 +
===Hardware Installation===
 +
If you are using a Rapsberry Pi 3, both the LimeSDR Mini and USB versions have a greater power consumption than the RPi can comfortably power from its USB 2 ports.  Therefore, it is recommended that a powered USB 2 hub be connected to the RPi, and the LimeSDR be plugged into one of the ports on the hub. 
 +
 
 +
If you are using a Raspberry Pi 4, its USB ports have enough power to supply a LimeSDR Mini or USB, so a hub is not required.  For some reason, the LimeSDR Mini sometimes works better when connected to the USB2 ports (the black ones, not the Blue ones).
 +
 
 +
The USB plug on the LimeSDR Mini is vulnerable to mechanical stress; it is recommended that the LimeSDR Mini (or LimeSDR USB) be mounted in a protective box with strain relief for a USB lead.  One possible mechanical configuration is illustrated below.  There are number of 3D printed cases which can be used to protect the unit [https://forum.batc.org.uk/viewtopic.php?t=5813&p=17948#p17919 see the thread on the members forum] for more details.
 +
 
 +
Charles, G4GUO, has found the LimeSDR Mini fits in to a Hammond 1455C802 box - see http://g4guo.blogspot.com/2018/05/my-lime-mini-has-box.html for more details but the USB connector may still need additional support.
 +
 
 +
The BATC 4-band and 8-band PTT drive and RF switching boards can be used with the Lime to provide band switching - see below for details on the GPIO port connections.  When using the 8-band switch, make sure to use the latest version with the attenuating resistors between the MMIC and the switch ICs.
  
 
===Installing the Lime Software===
 
===Installing the Lime Software===
  
The LimeSuite software version 18.10.0 is loaded as part of the normal Portsdown build and update process.  Once installed, you can use your Portsdown to update the firmware and gateware on your LimeSDR (Mini or USB) to the compatible version.
+
The LimeSuite software version 20.10.0 (Interface version v2021.10.0, Binary Interface 20.10-1) is loaded as part of the normal Portsdown build and update process.  This may not be the latest version, but is compatible with other components of the Portsdown software and the latest DATV Express version.
 +
 
 +
Once installed, you can use your Portsdown to update the firmware and gateware on your LimeSDR (Mini or USB) to the compatible version, but you must be connected to the internet whilst upgrading a LimeSDR USB.  The firmware to upgrade a LimeSDR Mini is stored on the Portsdown as part of the Portsdown build process.
  
 
===Lime Configuration Menu===
 
===Lime Configuration Menu===
  
The "Lime Config" Menu is selected from Menu 3.
+
The "Lime Config" Menu is selected from Menu 3. Selecting "LimeUtil Info" displays the current version of LimeSuite.
 +
 
 +
The "Update Lime FW" button updates the Lime SDR firmware and gateware to the appropriate version for the installed LimeSuite.  For recent Portsdown software versions, the correct version is shown below.  You should see the same screen after selecting "Lime FW Info".
 +
 
 +
[[File:Lime130.jpg|400px]]
  
Selecting "LimeUtil Info" displays the current version of LimeSuite.  The "Update Lime FW" button updates the Lime SDR firmware and gateware to the appropriate version for the installed LimeSuite.  For Portsdown software version 201811300 these versions are shown below. You should see exactly the same screen after selecting "Lime FW Info".
+
The Lime firmware/gateware version that works with the Portsdown is also compatible with DATV Express versions V1.25lp12 and later.
  
[[File:LimeSDR-Mini.jpg|400px]] [[File:LimeSDR-USB.jpg|400px]]
+
===Using a LimeSDR USB===
  
The Lime firmware/gateware version that works with the Portsdown also works with the current version of DATV Express.
+
You can also use the more expensive LimeSDR USB (as opposed to the LimeSDR Mini) with the Portsdown.  You can update the gateware and firmware to the correct version (Firmware Version 4, Gateware version 2.20), but the Lime Report will fail as it is designed for the LimeSDR Mini.  The Portsdown should operate normally with a LimeSDR USB, although this is not a configuration that is tested before the release of software updates.
 +
 
 +
===Basic Test===
 +
 
 +
You can run a basic test on your LimeSDR Mini, by pressing the "Lime Report" button.  Note that this test generates RF output and leaves the LimeSDR Mini generating a carrier on 1095 MHz at about -25 dBm.  This test rarely passes unless the LimeSDR Mini is cold and the RF ports are disconnected.  A functional test (transmitting, or receiving using BandViewer) is a better indication of LimeSDR Mini health.
  
 
==='''WARNING - High Power Output During Calibration Before Transmit'''===
 
==='''WARNING - High Power Output During Calibration Before Transmit'''===
Line 27: Line 48:
 
When the LimeSDR is put into transmit mode, it first performs a self-calibration which transmits at high power both in-band and out-of-band.  It is imperative that power amplifiers are not energised during this phase or they will be damaged and/or strong illegal transmissions will be made out-of-band.   
 
When the LimeSDR is put into transmit mode, it first performs a self-calibration which transmits at high power both in-band and out-of-band.  It is imperative that power amplifiers are not energised during this phase or they will be damaged and/or strong illegal transmissions will be made out-of-band.   
  
There are 2 delayed PTT signals available to help you avoid this situation.  The first is on the normal Portsdown PTT pin on the RPi.  The second is on GPIO 8 on the LimeSDR Mini or Lime SDR USB.  None of these signals go high until calibration is finished.
+
[https://www.youtube.com/watch?v=GzZPBaIANwE First power tests with Lime Mini SDR Portsdown at M0YDH]
 +
 
 +
There are 2 delayed PTT signals available to help you avoid this situation.  The first is on the normal Portsdown PTT pin on the RPi.  The second is on GPIO 7 on the LimeSDR Mini or Lime SDR USB.  None of these signals go high until calibration is finished.
  
 
===Transmitting===
 
===Transmitting===
  
Select Lime Mini or Lime USB from the "Output to" Menu.  The detected device should be "not greyed out".  Om Menu 1, you will see the Lime Gain button for the appropriate band (distinct Lime Gains between 0 and 100 are stored for each band).  This has yet to be calibrated, but I suggest that settings of over 90 risk distortion in the Lime final amplifier.
+
Select Lime Mini or Lime USB from the "Output to" Menu.  The detected device should be "not greyed out".  On Menu 1, you will see the Lime Gain button for the appropriate band (distinct Lime Gains between 0 and 100 are stored for each band).  A setting of 88 is a good starting point for about 5 dBm of output at 437 MHz.  More information about the LimeSDR Mini output power levels and controls can be found here [[LimeSDR Mini Output Power Levels]].
  
Selecting the modulation button will allow you to choose between DVB-S and DVB-S2 modes.  Once a DVB-S2 mode is selected, the appropriate FECs are available on the FEC button.  Note that different FECs are available (and not available) for different modulations.
+
Selecting the modulation button will allow you to choose between Carrier, DVB-S and DVB-S2 modes.  Once a DVB-S2 mode is selected, the appropriate FECs are available on the FEC button.  Note that different FECs are available (and not available) for different modulations.
  
The RPi has to work quite hard to transmit the higher modes such as 32APSK; I have noticed that it runs out of processing power while transmitting 32APSK at 2MS.  This should not be an issue; full HD pictures can be transmitted (from a C920 webcam) at 32 APSK 1MS).
+
'''The RPi has to work quite hard to generate the signals to drive the LimeSDR.  All SRs at 1MS and below seem to be reliable, but SRs of 2MS and 4MS can suffer drop-outs, particularly in MPEG-2 transmission modesFor operation above 1MS, the Portsdown Filter-Modulator board is recommended, rather than the LimeSDR.'''
  
 
===Limitations===
 
===Limitations===
  
After selecting transmit, the Lime self-calibrates with RF transmissions throughout the spectrum before transmitting on the desired frequency with the desired modulationFor this reason, switching on of the RPi PTT line is delayed for 7 seconds.  At the end of the transmission it is dropped immediately.  
+
There are 3 transmission modes used by the LimeSDR with Portsdown: SDR without up-sampling, SDR with 2 x up-sampling and carrier mode.  I have tried to level the powers across these 3 modes, but they will vary by 2 or 3 dB depending on the SR and Lime gain selected.
 +
 
 +
There is a failure mode where the LimeSDR refuses to transmit anything other than a carrier, or does not respond at allIt has not been possible to overcome these failures yet in software; the solution is to power down the LimeSDR (by disconnecting the power '''and''' USB leads), and then to reconnect them.
 +
 
 +
===GPIO RF Switching for Multiple Bands===
  
Carrier mode is not yet available for the Lime; neither is a receive capability.
+
The BATC 4-band and 8-band PTT drive and RF switching boards can be used with the LimeSDR to provide multiband RF and PTT steering.  They can remain connected to the RPi GPIO using the standard Portsdown GPIO interface board or (if you are prepared to accept the risk of damaging your LimeSDR Mini) connected to the Lime FPGA GPIO.
  
GPIO switching is not available because Myriad RF had not incorporated this capability in the Gateware while I was developing the Lime capabilityIt looks like this may now have been rectified: https://discourse.myriadrf.org/t/limesdr-mini-gpio-read-not-supported/3510.
+
The LimeSDR Mini GPIOs 0, 1 and 2 give the same signals as the RPi Band LSB, NSB and MSB.  GPIO 7 gives the PTT signal.  These can be taken from J5 on the LimeSDR Mini https://wiki.myriadrf.org/LimeSDR-Mini_v1.1_hardware_description For the LimeSDR USB, the GPIO signals are available on J18; the PTT signal is reported to be on FPGA-GPIO 5 (pin 8 in header), but this has not been investigated.
 +
The pins are described here http://wiki.myriadrf.org/LimeSDR-USB_hardware_description.  Note that these outputs are not buffered and if damaged could prevent the LimeSDR from working again.  '''Our advice is the use the RPi GPIOs.'''
  
Please report any further bugs that you find in the Development build directly to G8GKQ.  After formal release, bugs should be reported on the Forum.
+
[[File:GPIO Test.jpg|816px]]
  
===RF Switching for Multiple Bands===
+
The gain provided by the [[8-Band_RF_Output_Switch|8-way RF switch]] is useful to maintain current levels (5 - 10 mW) at the output.  To ensure the correct output levels are available, C16 (2p7) needs reducing to 1pf, and R5 (68 ohms) needs replacing with a wire link.  Alternatively R5 could be simply be replaced with a 2p2 or 1p8 capacitor and C16 left as 2p7.
  
The BATC 4-band and 8-band PTT drive and RF switching boards can continue to be used with the Lime.  They need to be connected to the RPi GPIO at present because Myriad RF have only recently incorporated Lime GPIO switching capability into their drivers and they were not available at the time that I was developing the Lime capability.
+
On the Lime USB the output is from "TX1 Low" below 2 GHz and from "TX1 High" above 2 GHzThe Lime Mini only has a single output.
  
I am really impressed that, in response to a request from me, MyriadRF have now updated their drivers: https://discourse.myriadrf.org/t/limesdr-mini-gpio-read-not-supported/3510.  I am now developing the code to make sure that the Portsdown can use these GPIOs properly, and hope to include it in the released capability in a week or 2.
+
===System Diagram===
  
[[File:GPIO Test.jpg|816px]]
+
Here is the latest system diagram.  Note that only one of the displays is required; either the 3.5 inch or 7 inch.
  
As the maximum output of the Lime is lower than that of the Portsdown Filter-Modulator board, the gain provided by the BATC 8-way RF switch is useful to maintain current levels (5 - 10 mW) at the output.  There will be some component adjustments needed to ensure the correct levels are available.  Details will be published soon.
+
[[File:20190120 Portsdown 2019 Block.jpg|960px]]
  
On the Lime USB the output is from "TX1 Low" below 2 GHz and from "TX1 High" above 2 GHz.  The Lime Mini only has a single output.
+
The digital variable attenuator is only required if you want fine (<3 dB steps) control over your PA drive levels.  The Lime Gain control on the Portsdown can be used to set the coarse output level.
  
 
===Acknowledgements===
 
===Acknowledgements===
  
 
Thanks to Evariste F5OEO, Andrew Back at Myriad RF, Charles G4GUO and Malcolm G0UHY for their help in implementing this capability.
 
Thanks to Evariste F5OEO, Andrew Back at Myriad RF, Charles G4GUO and Malcolm G0UHY for their help in implementing this capability.

Latest revision as of 09:06, 20 October 2021

Introduction

The Portsdown software supports the LimeSDR Mini. Support for the LimeSDR USB is provided on a best-efforts basis, but not tested.

However, due to the limited CPU power of the Raspberry Pi, many LimeSDR transmit modes are limited to 1MS and below.

Setting up the system

Either buy a pre-configured SD card from the BATC shop https://batc.org.uk/category/portsdown/ or download and install the standard Portsdown software on your own SD card - see this page for more details: https://wiki.batc.org.uk/Initial_setup

Hardware Installation

If you are using a Rapsberry Pi 3, both the LimeSDR Mini and USB versions have a greater power consumption than the RPi can comfortably power from its USB 2 ports. Therefore, it is recommended that a powered USB 2 hub be connected to the RPi, and the LimeSDR be plugged into one of the ports on the hub.

If you are using a Raspberry Pi 4, its USB ports have enough power to supply a LimeSDR Mini or USB, so a hub is not required. For some reason, the LimeSDR Mini sometimes works better when connected to the USB2 ports (the black ones, not the Blue ones).

The USB plug on the LimeSDR Mini is vulnerable to mechanical stress; it is recommended that the LimeSDR Mini (or LimeSDR USB) be mounted in a protective box with strain relief for a USB lead. One possible mechanical configuration is illustrated below. There are number of 3D printed cases which can be used to protect the unit see the thread on the members forum for more details.

Charles, G4GUO, has found the LimeSDR Mini fits in to a Hammond 1455C802 box - see http://g4guo.blogspot.com/2018/05/my-lime-mini-has-box.html for more details but the USB connector may still need additional support.

The BATC 4-band and 8-band PTT drive and RF switching boards can be used with the Lime to provide band switching - see below for details on the GPIO port connections. When using the 8-band switch, make sure to use the latest version with the attenuating resistors between the MMIC and the switch ICs.

Installing the Lime Software

The LimeSuite software version 20.10.0 (Interface version v2021.10.0, Binary Interface 20.10-1) is loaded as part of the normal Portsdown build and update process. This may not be the latest version, but is compatible with other components of the Portsdown software and the latest DATV Express version.

Once installed, you can use your Portsdown to update the firmware and gateware on your LimeSDR (Mini or USB) to the compatible version, but you must be connected to the internet whilst upgrading a LimeSDR USB. The firmware to upgrade a LimeSDR Mini is stored on the Portsdown as part of the Portsdown build process.

Lime Configuration Menu

The "Lime Config" Menu is selected from Menu 3. Selecting "LimeUtil Info" displays the current version of LimeSuite.

The "Update Lime FW" button updates the Lime SDR firmware and gateware to the appropriate version for the installed LimeSuite. For recent Portsdown software versions, the correct version is shown below. You should see the same screen after selecting "Lime FW Info".

Lime130.jpg

The Lime firmware/gateware version that works with the Portsdown is also compatible with DATV Express versions V1.25lp12 and later.

Using a LimeSDR USB

You can also use the more expensive LimeSDR USB (as opposed to the LimeSDR Mini) with the Portsdown. You can update the gateware and firmware to the correct version (Firmware Version 4, Gateware version 2.20), but the Lime Report will fail as it is designed for the LimeSDR Mini. The Portsdown should operate normally with a LimeSDR USB, although this is not a configuration that is tested before the release of software updates.

Basic Test

You can run a basic test on your LimeSDR Mini, by pressing the "Lime Report" button. Note that this test generates RF output and leaves the LimeSDR Mini generating a carrier on 1095 MHz at about -25 dBm. This test rarely passes unless the LimeSDR Mini is cold and the RF ports are disconnected. A functional test (transmitting, or receiving using BandViewer) is a better indication of LimeSDR Mini health.

WARNING - High Power Output During Calibration Before Transmit

When the LimeSDR is put into transmit mode, it first performs a self-calibration which transmits at high power both in-band and out-of-band. It is imperative that power amplifiers are not energised during this phase or they will be damaged and/or strong illegal transmissions will be made out-of-band.

First power tests with Lime Mini SDR Portsdown at M0YDH

There are 2 delayed PTT signals available to help you avoid this situation. The first is on the normal Portsdown PTT pin on the RPi. The second is on GPIO 7 on the LimeSDR Mini or Lime SDR USB. None of these signals go high until calibration is finished.

Transmitting

Select Lime Mini or Lime USB from the "Output to" Menu. The detected device should be "not greyed out". On Menu 1, you will see the Lime Gain button for the appropriate band (distinct Lime Gains between 0 and 100 are stored for each band). A setting of 88 is a good starting point for about 5 dBm of output at 437 MHz. More information about the LimeSDR Mini output power levels and controls can be found here LimeSDR Mini Output Power Levels.

Selecting the modulation button will allow you to choose between Carrier, DVB-S and DVB-S2 modes. Once a DVB-S2 mode is selected, the appropriate FECs are available on the FEC button. Note that different FECs are available (and not available) for different modulations.

The RPi has to work quite hard to generate the signals to drive the LimeSDR. All SRs at 1MS and below seem to be reliable, but SRs of 2MS and 4MS can suffer drop-outs, particularly in MPEG-2 transmission modes. For operation above 1MS, the Portsdown Filter-Modulator board is recommended, rather than the LimeSDR.

Limitations

There are 3 transmission modes used by the LimeSDR with Portsdown: SDR without up-sampling, SDR with 2 x up-sampling and carrier mode. I have tried to level the powers across these 3 modes, but they will vary by 2 or 3 dB depending on the SR and Lime gain selected.

There is a failure mode where the LimeSDR refuses to transmit anything other than a carrier, or does not respond at all. It has not been possible to overcome these failures yet in software; the solution is to power down the LimeSDR (by disconnecting the power and USB leads), and then to reconnect them.

GPIO RF Switching for Multiple Bands

The BATC 4-band and 8-band PTT drive and RF switching boards can be used with the LimeSDR to provide multiband RF and PTT steering. They can remain connected to the RPi GPIO using the standard Portsdown GPIO interface board or (if you are prepared to accept the risk of damaging your LimeSDR Mini) connected to the Lime FPGA GPIO.

The LimeSDR Mini GPIOs 0, 1 and 2 give the same signals as the RPi Band LSB, NSB and MSB. GPIO 7 gives the PTT signal. These can be taken from J5 on the LimeSDR Mini https://wiki.myriadrf.org/LimeSDR-Mini_v1.1_hardware_description . For the LimeSDR USB, the GPIO signals are available on J18; the PTT signal is reported to be on FPGA-GPIO 5 (pin 8 in header), but this has not been investigated.

The pins are described here http://wiki.myriadrf.org/LimeSDR-USB_hardware_description.  Note that these outputs are not buffered and if damaged could prevent the LimeSDR from working again.  Our advice is the use the RPi GPIOs.

GPIO Test.jpg

The gain provided by the 8-way RF switch is useful to maintain current levels (5 - 10 mW) at the output. To ensure the correct output levels are available, C16 (2p7) needs reducing to 1pf, and R5 (68 ohms) needs replacing with a wire link. Alternatively R5 could be simply be replaced with a 2p2 or 1p8 capacitor and C16 left as 2p7.

On the Lime USB the output is from "TX1 Low" below 2 GHz and from "TX1 High" above 2 GHz. The Lime Mini only has a single output.

System Diagram

Here is the latest system diagram. Note that only one of the displays is required; either the 3.5 inch or 7 inch.

20190120 Portsdown 2019 Block.jpg

The digital variable attenuator is only required if you want fine (<3 dB steps) control over your PA drive levels. The Lime Gain control on the Portsdown can be used to set the coarse output level.

Acknowledgements

Thanks to Evariste F5OEO, Andrew Back at Myriad RF, Charles G4GUO and Malcolm G0UHY for their help in implementing this capability.