пятница, 18 октября 2024 г.

Fobos SDR та SDRangel. Як хардкорно встановлювати софт в 12 Дебіані.

 

    Доброї пори доби. Тут як завжди біля мікрофону дядько Рост. Сьогодні я разом з вами вб'ю двох (а може трьох, ще не визначився) зайців. Перший заєць - то Fobos SDR. Ви разом зі мною розширите коло програм, де FobosSDR працює. Зайвим це точно не буде, а навпаки розширить наші можливості, вміння та знання. Другий - SDRangel в Debian 12. В Ubuntu мені легше та швидше вдалося мені його встановити. Третій - чи всіма цими маніпуляціями не розвалимо систему і SDR++ залишиться в робочому стані. Таки три зайці вийшло.

    Для тих, в кого розшатані нерви, щоб не тримати інтригу, скажу. Все вийшло, все працює, нічого не впало і не розвалилося. Система залишилася в повністю робочому стані.

    Як в кожної господині свій рецепт та смак борщу, так і в мене. Свій рецепт встановлення програми. Не скажу що він оптимальний та єдиноможливий, але працюючий. Тут все намішано. І досвід автора програми, і досвід хлопців з профільного чату, які допомагали мені консультаціями. Так так, саме про вас - власників нікнеймів Ukrop та Kir a/k/a Dober. Дуже вам вдячний! І трохи мого десь там зкраєчку є.

    Процес довгий та нудний, через те що повністю все збирається з вихідних файлів.  Не все є обов'язковим для встановлення. Якщо ви вже встановили собі libfobos, тоді її не потрібно знову збирати. Так само з підтримкою sdr приймачів. Якщо їх у вас немає, можна і не збирати їхні модулі. Я не збирав модулі підтримки USRP та XTRX. 

    Рецепт розрахований для встановлення необхідних модулів, плагінів, бібліотек на повністю чисту систему. В кого вже стоїть SDR++ з підтримкою Фобоса - частину з встановлення та перевірки роботи libfobos пропускаєте.

    Наприкінці буде коротко про те, як почати sdrangel користуватися на прикладі прийому FM радіостанцій. Я не знайшов розгорнутої документації користувача, тому покажу мінімум, який я знаю. В програмі багато цікавого. На це потрібен час, тому потрошки буду викладати свій досвід роботи в ній.

    Встановлюємо необхідні для початку пакети. Решта пакетів буде встановлюватися по мірі потреби.

sudo apt -y install libhamlib-dev
sudo apt -y install git
sudo apt -y install cmake
sudo apt -y install build-essential
sudo apt -y install soapysdr-tools
sudo apt -y install libsoapysdr-dev
sudo apt -y install libfftw3-dev
sudo apt -y install libglfw3-dev
sudo apt -y install libvolk2-dev
sudo apt -y install libzstd-dev
sudo apt -y install librtaudio-dev
sudo apt -y install librtlsdr-dev
sudo apt -y install libairspyhf-dev
sudo apt -y install libhackrf-dev
sudo apt -y install libiio-dev
sudo apt -y install libad9361-dev
sudo apt -y install libfec-dev

    Якщо в системі не стоїть бібліотека підтримки FobosSDR, libfobos, її потрібно зібрати. Для цього виконайте наступні команди.

cd ~
git clone https://github.com/rigexpert/libfobos.git
cd libfobos
mkdir build
cd build
cmake ..
make
sudo make install
sudo udevadm control --reload-rules
sudo udevadm trigger
sudo cp /usr/local/lib/libfobos.so /usr/lib/

    Тепер потрібно приєднати приймач до USB порту (якщо ви його ще не приєднали) та перевантажити комп'ютер. Далі перейти в каталог ~/libfobos/build

cd ~/libfobos/build

Та перевірити, як описано  минулій частині  чи коректно працює приймач з допомогою цих команд

./fobos_devinfo

./fobos_recorder

    Так як SDRangel з FobosSDR буде працювати через прокладку SoapySDR, потрібно зібрати плагін підтримки. Інакше в програмі не буде видно приймача і ви не зможете ним керувати і отримувати з нього потік даних.

cd ~
git clone https://github.com/rigexpert/SoapyFobosSDR.git
cd SoapyFobosSDR
mkdir build
cd build
cmake ..
make
sudo make install
sudo ldconfig

 

    Перевірте чи працює приймач через SoapySDR з допомогою команди. 

SoapySDRUtil --probe="driver=fobos"

     Якщо у вас так само як на цих малюнках, то мої вітання. У вас все вийшло. Ще один етап пройдено.


    Час братися за збірку SDRangel. 

    Виконайте попередньо створення та налаштування необхідних для цього каталогів.

sudo mkdir -p /opt/build
sudo chown $USER:users /opt/build
sudo mkdir -p /opt/install
sudo chown $USER:users /opt/install

Однією такою великою командою довстановіть необхідні пакети.

sudo apt-get update && sudo apt-get -y install \
git cmake g++ pkg-config autoconf automake libtool libfftw3-dev libusb-1.0-0-dev libusb-dev libhidapi-dev libopengl-dev \
qtbase5-dev qtchooser libqt5multimedia5-plugins qtmultimedia5-dev libqt5websockets5-dev \
qttools5-dev qttools5-dev-tools libqt5opengl5-dev libqt5quick5 libqt5charts5-dev \
qml-module-qtlocation  qml-module-qtpositioning qml-module-qtquick-window2 \
qml-module-qtquick-dialogs qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-layouts \
libqt5serialport5-dev qtdeclarative5-dev qtpositioning5-dev qtlocation5-dev libqt5texttospeech5-dev \
qtwebengine5-dev qtbase5-private-dev libqt5gamepad5-dev libqt5svg5-dev \
libfaad-dev libflac-dev zlib1g-dev libboost-all-dev libasound2-dev pulseaudio libopencv-dev libxml2-dev bison flex \
ffmpeg libavcodec-dev libavformat-dev libopus-dev doxygen graphviz
 

    Зберіть з вихідних файлів всі нижчеперераховані залежності. Символ решітки вказує на назву модулю. Це коментар та орієнтир, щоб ви не загубилися в цьому морі команд. Вводяться лише команди. Поступово, акуратно, методично.

#APT

sudo apt -y install libsndfile-dev
cd /opt/build
git clone https://github.com/srcejon/aptdec.git
cd aptdec
git checkout libaptdec
git submodule update --init --recursive
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/aptdec ..
make -j $(nproc) install


#CM265cc

cd /opt/build
git clone https://github.com/f4exb/cm256cc.git
cd cm256cc
git reset --hard 6f4a51802f5f302577d6d270a9fc0cb7a1ee28ef
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/cm256cc ..
make -j $(nproc) install


#LibDAB

cd /opt/build
git clone https://github.com/srcejon/dab-cmdline
cd dab-cmdline/library
git checkout msvc
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/libdab ..
make -j $(nproc) install


#MBElib

cd /opt/build
git clone https://github.com/szechyjs/mbelib.git
cd mbelib
git reset --hard 9a04ed5c78176a9965f3d43f7aa1b1f5330e771f
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/mbelib ..
make -j $(nproc) install


#SerialDV

cd /opt/build
git clone https://github.com/f4exb/serialDV.git
cd serialDV
git reset --hard "v1.1.4"
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/serialdv ..
make -j $(nproc) install


#DSDcc

cd /opt/build
git clone https://github.com/f4exb/dsdcc.git
cd dsdcc
git reset --hard "v1.9.5"
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/dsdcc -DUSE_MBELIB=ON -DLIBMBE_INCLUDE_DIR=/opt/install/mbelib/include -DLIBMBE_LIBRARY=/opt/install/mbelib/lib/libmbe.so -DLIBSERIALDV_INCLUDE_DIR=/opt/install/serialdv/include/serialdv -DLIBSERIALDV_LIBRARY=/opt/install/serialdv/lib/libserialdv.so ..
make -j $(nproc) install


#Codec2/FreeDV

sudo apt-get -y install libspeexdsp-dev libsamplerate0-dev
cd /opt/build
git clone https://github.com/drowe67/codec2-dev.git codec2
cd codec2
git reset --hard "v1.0.3"
mkdir build_linux; cd build_linux
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/codec2 ..
make -j $(nproc) install


#SGP4

cd /opt/build
git clone https://github.com/dnwrnr/sgp4.git
cd sgp4
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/sgp4 ..
make -j $(nproc) install


#LibSigMF

cd /opt/build
git clone https://github.com/f4exb/libsigmf.git
cd libsigmf
git checkout "new-namespaces"
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/libsigmf ..
make -j $(nproc) install


#GGMorse

cd /opt/build
git clone https://github.com/ggerganov/ggmorse.git
cd ggmorse
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/ggmorse -DGGMORSE_BUILD_TESTS=OFF -DGGMORSE_BUILD_EXAMPLES=OFF ..
make -j $(nproc) install

 

    Зберіть та встановіть модулі підтримки для своїх sdr приймачів. Можете зібрати всі, або лише ті, що вам потрібні.


#Airspy

cd /opt/build
git clone https://github.com/airspy/airspyone_host.git libairspy
cd libairspy
git reset --hard 37c768ce9997b32e7328eb48972a7fda0a1f8554
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/libairspy ..
make -j $(nproc) install


#SDRplay RSP1

cd /opt/build
git clone https://github.com/f4exb/libmirisdr-4.git
cd libmirisdr-4
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/libmirisdr ..
make -j $(nproc) install


#RTL-SDR

cd /opt/build
git clone https://github.com/osmocom/rtl-sdr.git librtlsdr
cd librtlsdr
git reset --hard 420086af84d7eaaf98ff948cd11fea2cae71734a
mkdir build; cd build
cmake -Wno-dev -DDETACH_KERNEL_DRIVER=ON -DCMAKE_INSTALL_PREFIX=/opt/install/librtlsdr ..
make -j $(nproc) install


#Pluto SDR

cd /opt/build
git clone https://github.com/analogdevicesinc/libiio.git
cd libiio
git reset --hard v0.21
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/libiio -DINSTALL_UDEV_RULE=OFF ..
make -j $(nproc) install


#BladeRF

cd /opt/build
git clone https://github.com/Nuand/bladeRF.git
cd bladeRF/host
git reset --hard "2023.02"
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/libbladeRF -DINSTALL_UDEV_RULES=OFF ..
make -j $(nproc) install


#HackRF

cd /opt/build
git clone https://github.com/greatscottgadgets/hackrf.git
cd hackrf/host
git reset --hard "v2022.09.1"
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/libhackrf -DINSTALL_UDEV_RULES=OFF ..
make -j $(nproc) install


#LimeSDR

cd /opt/build
git clone https://github.com/myriadrf/LimeSuite.git
cd LimeSuite
git reset --hard "v20.01.0"
mkdir builddir; cd builddir
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/LimeSuite ..
make -j $(nproc) install


#AirspyHF

cd /opt/build
git clone https://github.com/airspy/airspyhf
cd airspyhf
git reset --hard 1af81c0ca18944b8c9897c3c98dc0a991815b686
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/libairspyhf ..
make -j $(nproc) install


#Perseus

sudo apt -y install bsdmainutils
sudo apt -y install xxd
cd /opt/build
git clone https://github.com/f4exb/libperseus-sdr.git
cd libperseus-sdr
git checkout fixes
git reset --hard afefa23e3140ac79d845acb68cf0beeb86d09028
mkdir build; cd build
cmake -Wno-dev -DCMAKE_INSTALL_PREFIX=/opt/install/libperseus ..
make -j $(nproc)
make install


    Нижченаведені модулі потрібні для роботи Фобоса, тому їх потрібно обов'язково зібрати.     

#SoapySDR

cd /opt/build
git clone https://github.com/pothosware/SoapySDR.git
cd SoapySDR
mkdir build; cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/install/SoapySDR ..
make -j $(nproc) install


#Soapy Remote

sudo apt-get -y install libavahi-client-dev
cd /opt/build
git clone https://github.com/pothosware/SoapyRemote.git
cd SoapyRemote
git reset --hard "soapy-remote-0.5.1"
mkdir build; cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/install/SoapySDR -DSOAPY_SDR_INCLUDE_DIR=/opt/install/SoapySDR/include -DSOAPY_SDR_LIBRARY=/opt/install/SoapySDR/lib/libSoapySDR.so ..
make -j $(nproc) install


    Зберіть SDRangel.

cd /opt/build
git clone https://github.com/f4exb/sdrangel.git
cd sdrangel
mkdir build; cd build
cmake -Wno-dev -DDEBUG_OUTPUT=ON -DRX_SAMPLE_24BIT=ON \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DMIRISDR_DIR=/opt/install/libmirisdr \
-DAIRSPY_DIR=/opt/install/libairspy \
-DAIRSPYHF_DIR=/opt/install/libairspyhf \
-DBLADERF_DIR=/opt/install/libbladeRF \
-DHACKRF_DIR=/opt/install/libhackrf \
-DRTLSDR_DIR=/opt/install/librtlsdr \
-DLIMESUITE_DIR=/opt/install/LimeSuite \
-DIIO_DIR=/opt/install/libiio \
-DPERSEUS_DIR=/opt/install/libperseus \
-DXTRX_DIR=/opt/install/xtrx-images \
-DSOAPYSDR_DIR=/opt/install/SoapySDR \
-DUHD_DIR=/opt/install/uhd \
-DAPT_DIR=/opt/install/aptdec \
-DCM256CC_DIR=/opt/install/cm256cc \
-DDSDCC_DIR=/opt/install/dsdcc \
-DSERIALDV_DIR=/opt/install/serialdv \
-DMBE_DIR=/opt/install/mbelib \
-DCODEC2_DIR=/opt/install/codec2 \
-DSGP4_DIR=/opt/install/sgp4 \
-DLIBSIGMF_DIR=/opt/install/libsigmf \
-DDAB_DIR=/opt/install/libdab \
-DGGMORSE_DIR=/opt/install/ggmorse \
-DCMAKE_INSTALL_PREFIX=/opt/install/sdrangel ..
make -j $(nproc) install

    У SDRangel по замовчуванню не ввімкнена підтримка SoapySDR. Щоб її увімкнути потрібно ангела запускати з ключем --soapy

    Запустіть її в консолі командою

 /opt/install/sdrangel/bin/sdrangel --soapy

    Перевірте журнал запуску. Він відображається в терміналі. Прокрутіть його догори. При вдалому завантаженні плагіна в ньому мають бути відповідні строки.

 


     А тим часом на робочому столі з'явиться вікно програми.

    Перше, що потрібно зробити, це додати радіо в програму. В головному меню є кніпочка, що називається Add Rx device.

 
   
    В наступному вікні потрібно натиснути на перевернутий трикутник. 

    І у випадному списку вибрати SoapySDR [2:0] fobos: Fobos SDR. Цифри в квадратних дужках у вас можуть відрізнятися. Це не критично.


        Вікно прийме наступний вигляд. Натисніть ОК.


      З'явиться панель керування приймачем та панель відображення спектру.

    
    Коротко про кнопки.
 

  Спробуйте повзунками вибрати рівень підсилення при якому приймач здатний прийняти ФМ станції. Приклад на малюнку.

         Одразу звуку не буде тому що необхідно приєднати модулятор. Робиться це наступним чином. Я стрілкою вказав яку кнопку для цього потрібно нажати. Вона називається Add channels.


    Тут як по аналогії вибору приймача. Тиснете на перевернутий трикутник.


    Далі вибираєте WFM Demodulator.

    Він відкриється у новому вікні.

    Якщо ви вірно налаштувалися на частоту станції - почуєте в динаміках чи навушниках (в залежності що у вас підключено), що станція в даний момент передає.

    Коротенько про кнопки, що присутні на панелі модулятора.

    Програма насичена демодуляторами та різними кнопочками. Пробуйте та експериментуйте.

    До зустрічі.

    73 ! de UT2YR


пятница, 11 октября 2024 г.

The Big Book of SDR# Studio 2024 тепер вже українською.

 

    Вчора закінчив переклад на українську Великої Книги SDR# Studio Паоло Романі. На даний момент її перекладено чотирма мовами. Англійська, Італійська (доступні вже для скачування з оф. сайту airspy.com) Французька та Українська найближчим часом також можна буде скачати з оф. сайту. 

    Процес викладання документації на сайті цього разу не дуже швидкий, бо Юсеф зайнятий випуском нового приймача Airspy Ranger (анонс приймача є в книзі) і йому, напевне не до нас.

    Але чого чекати, як я вже можу з вами всіма поділитися перекладом.  Книга потовстішала приблизно десь на 70 сторінок. В ній описана остання версія 1920 з усіма плюшками та наворотами. В цій редакції я намагався максимально літературно перекласти наданий Паоло текст.

    Раджу всім спробувати плагін Co Channel Canceller. Він є як для AM так і для WFM модуляцій. Повірте, дуже цікаві відчуття.

    Насолоджуйтесь читанням !

До зустрічі.

73 ! de UT2YR

среда, 21 августа 2024 г.

Fobos SDR. Життя в лінукс. SDR++ та Debian 12 Bookworm.

 

    Що ж. Настав час запустити цього звіра в лінуксі. Може виникнути питання: "А чому SDR++ а не Gqrx ?" Відповідаю: "Він мені ніколи не подобався. Був змушений користуватися, тому що під лінукс і під мак особливо нічого тоді не було." Тут є певний елемент ностальгії. SDR++ дуже схожий за інтерфейсом на SDR#, що буде легше сприйматися більшістю користувачів, адже якраз ця більшість й користується шарпом.

    Це весілля буде працювати на базі Дебіана 12 Bookworm. В мене є певна частина консерватизму. Окрім того замітив таку тенденцію, що дебіан працює навіть на калькуляторах 15 річної давності. Відверто кажучи останні версії Убунту мене не вражають як решта похідних дистрибутивів Дебіана. Тому ТІКО ДЕБІАН ! Слаки і шапки мені не зайшли, тому про них не буду нічого казати.

    Все буде як завжди. Коротко і лаконічно. Під кінець читання може хтось і засне    ; - )

    А тепер погнали.

    Запустіть всіма улюблений термінал і приготуйтеся встановити всі необхідні для збирання софта бібліотеки. Без цього наш потяг нікуди не поїде. Тут справа смаку, але мені подобається повністю контролювати весь процес, тому я не встановлюю пакети скопом, а по черзі, розтягуючи при цьому задоволення.

    Не забувайте тиснути Y, коли будуть питати чи з пакетом встановлювати всі залежності, або покладіть ключик -y в команді, щоб це не робити, а просто дивитися як строчки біжать в терміналі. Так так. На біжучі строчки в терміналі можна дивитися вічно, як на вогонь.

sudo apt install git
sudo apt install libusb-1.0-0-dev
sudo apt install cmake
sudo apt install libfftw3-dev
sudo apt install libglfw3-dev
sudo apt install libvolk2-dev
sudo apt install libzstd-dev
sudo apt install librtaudio-dev
sudo apt install librtlsdr-dev
sudo apt install libairspyhf-dev
sudo apt install libhackrf-dev
sudo apt install libiio-dev
sudo apt install libad9361-dev
sudo apt install libfec-dev 

   Віднесіться до цього процесу уважно, тому що, пропустивши щось і десь, наприкінці Вам  нічого не вдасться.

     Маю надію що у всіх вийшло. І все коректно встановилося. Тому погнали далі.

    Наступне це треба зібрати дрова для радіо, щоб воно розуміло лінукса а лінукс розумів його. Все як ми любимо. Дрова уявляють собою бібліотеку під назвою libfobos. Зараз трішки з'явиться картинок. Вони будуть для перевірки чи у вас все так як в мене. 

    Скачайте з Гітхаба вихідний текст.

git clone https://github.com/rigexpert/libfobos.git


   
Перейдіть в каталог з проєктом, створіть в ньому каталог build і перейдіть в нього. В цьому каталозі і буде зібрана ця бібліотека. Нижченаведені команди дадуть Вам все це зробити.

cd libfobos
mkdir build
cd build

    А зараз буде гаряче. Починається збирання і перевірка того що зібралося на предмет працездатності. Виконайте

cmake ..

    Увага! Між cmake і .. має бути один пробіл. Зверніть будь ласка на це увагу. Результат виконання має бути такий.

    Далі виконайте 

make

    Результат має бути ось такий

    Не має бути ніяких помилок при збиранні. Якщо вони є - передивіться всі свої попередні дії. Щось раніше Ви зробили не так.

   Залишилося вже зовсім мало. Встановіть зібрану бібліотеку в систему і попросіть лінукс, але ніжно, щоб він подружився з приймачем.

sudo make install

sudo udevadm control --reload-rules
sudo udevadm trigger


    Далі потрібно приєднати приймач в один з портів USB 3.0 і перевантажити комп'ютер. Порт має бути саме USB 3.0, що безпосередньо приєднаний до путнього хаба на материнці. Інакше приймач працювати не буде. Вся справа в тому що приймач приймає смугу шириною в 25 МГц (це у випадку приймання довгих, середніх та коротких хвиль), а у випадку УКХ всі 50 МГц.

    Після перевантаження, знову запустіть термінал і виконайте команду.

cd libfobos/build

    Так, Ви знову в каталозі build. Це необхідно зараз, адже тут присутні дві фічі, що допоможуть Вам переконатися, що все вірно працює. Виконайте 

./fobos_devinfo

    І отримайте від зайчика подарунок. В терміналі має відобразитися інформація про приймач.

 А тепер тестаніть його, як він передає потік. Виконайте

./fobos_recorder

    Якщо побігли плюсики і взагалі твориться якась дичина, яка зображена нижче, то у Вас все вийшло.

 

    Попередній підсумок. Бібліотеки встановили. Приймач завели. Залишилося зібрати прогу та налаштувати її.

  ====== Початок нєжданчіка номер 1 ==========

   Може виникнути ось така цікава ситуація. Ви виконали  команду ./fobos_devinfo   а тут "нєжданчік". Система приймач побачила, але не може відкрити порт.

    Візьміть собі за правило спочатку перевіряти чи приймач приєднано до USB, а потім вмикати комп'ютер, інакше будете змушені його перевантажувати.

======== Кінець нєжданчіка номер 1  ==========

    Перейдіть в домашній каталог користувача. Виконайте

cd ../..


    
Якщо Ви це не зробите, то наступний проєкт скопіюється в попередній і там така мішанина буде, що Вам у страшних снах не снилося ніколи. Тому завжди переходьте у свій домашній каталог, щоб кожен проєкт мав свій окремий каталог, свою хатку.

    Скачайте з Гітхаба вихідний текст.

 git clone https://github.com/rigexpert/SDRPlusPlus.git


    Перейдіть в каталог з проєктом, створіть в ньому каталог build і перейдіть в нього. В цьому каталозі і буде зібрана ця програма. Нижченаведені команди дадуть Вам все це зробити.

cd SDRPlusPlus
mkdir build
cd build

    Почніть збірку коду.

cmake ..

    Для перевірки викладаю два скріни процесу.


 

    Слідкуйте уважно, щоб були відсутні помилки. В мене було так, що модуль libfobos на цьому етапі видавав помилки. В такому випадку потрібно перевірити чи вірно виконані всі попередні кроки і перезапустіть збірку програми.

    Якшо все гаразд, виконайте команду 

make -j4

    Знову надаю скріни для перевірки. Зверніть увагу на четвертий скрін. На текст, що знаходиться в червоному прямокутнику.

 

 


    Далі 

sudo make install

    На скріні виконання цієї команди зверніть будь ласка увагу на присутність фрази Built target fobos_source і чи ніяких поряд повідомлень про помилки немає. Має бути ось так. Червоним виділив все що стосується фобоса.


    Якщо у Вас все саме так як в мене - ВІТАЮ ! Все буде чудово працювати.

    Останній штрих. Запустити програму та налаштувати її. Якщо у Вас в якості робочого середовища Cinnamon то шукайте SDR++ в пункті Інші.

    Або хочете, можете запустити її  /usr/bin/sdrpp прямо з терміналу. Це по бажанню.

   Коли її запустите, Вам потрібно буде в менеджері модулів додати модуль fobos_source. 

    Для цього за допомогою коліщатка миші прокрутіть меню до появи менеджера модулів.


 

    Натисніть кнопку з перевернутим трикутником і в списку виберіть fobos_source.

Далі в полі, що знаходиться ліворуч від назви модуля.

впишіть Fobos

і натисніть + з правого боку біля назви модуля 

Далі в меню Source вибираєте Fobos SDR.

В полі Rate частоту семплювання. Зазвичай 50.000000MHz

В полі Input вибираєте антенний вхід. HF1, HF2 - входи від 100 кГц до 25 МГц. RF - вхід від 25 МГц  до 6 ГГц.

А далі - Старт 

   

============= Початок нєжданчіка № 2 ===========

     Іноді при цих двіжухах може статися епік фейл. Фейл у тому, що неможливо вибрати в менеджері модулів fobos_source. Його там просто може не бути.  Все чемно та вірно зкомпілював, а тут така халепа.

     Фото журналу роботи програми.

 


    Все робив як раніше і все виходило, а тут ніяк. Не знаєш з якого боку братися, але в цьому мені допомогли розібратися розробники з RigExpert.  Зараз ви разом зі мною виконаєте ці дії і у вас все вийде. Я гарантую, що буде працювати. Лише все знову виконати акуратно. Перевірено мною неодноразово.

    Спочатку теоретично що потрібно зробити, далі розповім як це зробити легко і швидко.

Теорія.

    В файлі core.cpp що знаходиться по шляху ~/SDRPlusPlus/core/src/ потрібно вписати дві строчки, після коментаря  // Module instancess

    Ось ці строчки, а так має виглядати шматок коду.

// Module instancess

defConfig["moduleInstances"]["Fobos SDR Source"]["module"] = "fobos_source";
defConfig["moduleInstances"]["Fobos SDR Source"]["enabled"] = true;

    Для розуміння як це має бути, демонструю скрін шматка цього файлу. Тут вже все додано.

 

    Потім потрібно перекомпілювати і перевстановити SDR++

Практика.

    Я спростив всім момент редагування файлу. За цим посиланням  качаєте архів. В ньому знаходиться вже виправлений файл.  Вам буде достатньо цей архів розпакувати у відповідний каталог. Таким чином "правильний" файл замінить "неправильний".

    Після скачування, архів попаде в каталог завантажень. Там його й знайдемо і будемо робити наступні маніпуляції.

 

    Правою кнопкою миші вибираємо "Відкрити за допомогою менеджера архівів".


     В середині архіву і є цей файл. Виділяємо його та у верхньому лівому кутку вікна тиснемо гудзик "Розпакувати".


     Вибираєте місце куди його розпакувати. Це ~/SDRPlusPlus/core/src/

     Програма запитає чи замінити цей файл. Вибираєте "Замінити".

 

        Тепер стандартно 

 
    cd SDRPlusPlus/build

    cmake ..
    make -j4
    sudo make install

        Перекопіюйте бібліотеку libfobos в каталог /usr/lib/  Це позитивно вплине на роботу програми.

    sudo cp /usr/local/lib/libfobos.so /usr/lib/
 

        Перевірте чи все гаразд. Запустіть в терміналі

    sdrpp

    Прокрутіть повідомлення догори. Все працює.

========== Кінець нєжданчіка №2 =======

    Щодо використання ресурсів комп'ютера. Надаю скріншот команди htop. Міні-пк Dell Wyse 5070 з Intel Celeron J4105, 8 Гігабайт ОЗП та 128 ssd m2

    Хоча ця картинка і присутня як аватарка статті, я її повторю внизу. На це можна дивитися вічно.


    Втомив я Вас сьогодні своїми балачками, тому на сьогодні досить. Йдіть і слухайте радіо під лінуксом.

73 ! de UT2YR