From 5ee46772b1901df10d3430a96da27872e3d117c3 Mon Sep 17 00:00:00 2001 From: f4exb Date: Sat, 10 Feb 2018 11:10:11 +0100 Subject: [PATCH] Perseus: added documentation --- doc/img/Perseus_plugin.png | Bin 0 -> 18992 bytes doc/img/Perseus_plugin.xcf | Bin 0 -> 78666 bytes plugins/samplesource/perseus/readme.md | 117 +++++++++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 doc/img/Perseus_plugin.png create mode 100644 doc/img/Perseus_plugin.xcf create mode 100644 plugins/samplesource/perseus/readme.md diff --git a/doc/img/Perseus_plugin.png b/doc/img/Perseus_plugin.png new file mode 100644 index 0000000000000000000000000000000000000000..e775b12c6b6ffe48a7021c52fb72b7687131a4a4 GIT binary patch literal 18992 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 E0Kac8)Bpeg literal 0 HcmV?d00001 diff --git a/doc/img/Perseus_plugin.xcf b/doc/img/Perseus_plugin.xcf new file mode 100644 index 0000000000000000000000000000000000000000..7d309814bd67aa249fd96524cbd90dfdc977f4ac GIT binary patch literal 78666 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 WcZ{dJKP8R#5b7mn32W=oo&J9fX6QTs literal 0 HcmV?d00001 diff --git a/plugins/samplesource/perseus/readme.md b/plugins/samplesource/perseus/readme.md new file mode 100644 index 000000000..112b58df8 --- /dev/null +++ b/plugins/samplesource/perseus/readme.md @@ -0,0 +1,117 @@ +

Perseus input plugin

+ +

Introduction

+ +This input sample source plugin gets its samples from a [Perseus device](http://microtelecom.it/perseus/). + +

Build

+ +The plugin will be built only if the [perseus-sdr library](https://github.com/Microtelecom/libperseus-sdr) is installed in your system and you are building for the 24 bit Rx DSP chain with the `-DRX_SAMPLE_24BIT=ON` option. + +If you build it from source and install it in a custom location say: `/opt/install/libperseus` you will have to add `-DLIBPERSEUS_INCLUDE_DIR=/opt/install/libperseus/include -DLIBPERSEUS_LIBRARIES=/opt/install/libperseus/lib/libperseus-sdr.so` to the cmake command line. + +Note: if you use binary distributions this is included in the bundle. + +

Interface

+ +It has a limited number of controls compared to other source interfaces. This is because a lot of things are handled automatically within the Perseus: + + - gains + - DC and IQ correction + - filter selection based on frequency + +![Perseus input plugin GUI](../../../doc/img/Perseus_plugin.png) + +

1: Common stream parameters

+ +![SDR Daemon source input stream GUI](../../../doc/img/SDRdaemonSource_plugin_01.png) + +

1.1: Frequency

+ +This is the center frequency of reception in kHz. + +

1.2: Start/Stop

+ +Device start / stop button. + + - Blue triangle icon: device is ready and can be started + - Green square icon: device is running and can be stopped + - Magenta (or pink) square icon: an error occured. In the case the device was accidentally disconnected you may click on the icon, plug back in and start again. + +

1.3: Record

+ +Record baseband I/Q stream toggle button + +

1.4: Stream sample rate

+ +Baseband I/Q sample rate in kS/s. This is the device to host sample rate (3) divided by the decimation factor (4). + +

2: LO ppm correction

+ +This is the correction factor in ppm applied to the local oscillator in software. This is normally not needed the Perseus is already on spot. You can reset the ppm value anytime by pressing on button (3) + +

3: Reset LO ppm correction

+ +This resets the LO ppm correction (zero the value). + +

4: Device to hast sample rate

+ +This is the device to host sample rate in kilo samples per second (kS/s). With a recent (well: ~2011) version of the firmware it can be as low as 48 kS/s so there is no need for software decimation. + +

5: Wideband mode

+ +Switch on this button to disable the preselection filters. The corresponding LED on the Perseus front panel will be lit accordingly. + +

6: Decimation factor

+ +The I/Q stream from the Perseus to host is downsampled by a power of two before being sent to the passband. This is normally not needed for most use cases as the Perseus can go as low as 48 kS/s which is the lower limit for audio channel plugins (AM, FM, SSB, Digital voice). So it can be left to `1` most of the time. A software decimation by 2 or 4 is still provided for easier anaysis of very narrowband or slow varying signals. Note that there is no dynamic gain with this decimation as the precision is already limited to 24 significant bits either for integer or floating point (float) processing. + +

7: Transverter mode open dialog

+ +This button opens a dialog to set the transverter mode frequency translation options: + +![SDR Daemon source input stream trasverter dialog](../../../doc/img/RTLSDR_plugin_xvrt.png) + +Note that if you mouse over the button a tooltip appears that displays the translating frequency and if translation is enabled or disabled. When the frequency translation is enabled the button is lit. + +

7a.1: Translating frequency

+ +You can set the translating frequency in Hz with this dial. Use the wheels to adjust the sample rate. Left click on a digit sets the cursor position at this digit. Right click on a digit sets all digits on the right to zero. This effectively floors value at the digit position. Wheels are moved with the mousewheel while pointing at the wheel or by selecting the wheel with the left mouse click and using the keyboard arroews. Pressing shift simultanoeusly moves digit by 5 and pressing control moves it by 2. + +The frequency set in the device is the frequency on the main dial (1) minus this frequency. Thus it is positive for down converters and negative for up converters. + +For example with the DX Patrol that has a mixer at 120 MHz for HF operation you would set the value to -120,000,000 Hz so that if the main dial frequency is set at 7,130 kHz the RTLSDR of the DX Patrol will be set to 127.130 MHz. + +If you use a down converter to receive the 6 cm band narrowband center frequency of 5670 MHz at 432 MHz you would set the translating frequency to 5760 - 432 = 5328 MHz thus dial +5,328,000,000 Hz. + +For bands even higher in the frequency spectrum the GHz digits are not really significant so you can have them set at 1 GHz. Thus to receive the 10368 MHz frequency at 432 MHz you would set the translating frequency to 1368 - 432 = 936 MHz. Note that in this case the frequency of the LO used in the mixer of the transverter is set at 9936 MHz. + +The Hz precision allows a fine tuning of the transverter LO offset + +

7a.2: Translating frequency enable/disable

+ +Use this toggle button to activate or deactivate the frequency translation + +

7a.3: Confirmation buttons

+ +Use these buttons to confirm ("OK") or dismiss ("Cancel") your changes. + +

8: Attenuators control

+ +Use this combo box to cotrol the attenuators inside the Perseus: + + - 0 dB: no attenuation + - 10 dB: 10 dB attenuator engaged + - 20 dB: 20 dB attenuator engaged + - 30 dB: 10 and 20 dB attenuators engaged + +The LEDs on the Perseus front panel corresponding to each attenuator are lit accordingly. + +

9: ADC dither

+ +Use this button to turn on or off the Perseus ADC dithering + +

10: ADC preamplifier

+ +Use this button to turn on or off the Perseus ADC preamplifier + \ No newline at end of file