Este repositório contém instaladores de plataforma cruzada para uma coleção de pacotes de rádio de software de código aberto agrupados com o gerenciador de pacotes conda, incluindo
e suporte para os seguintes dispositivos SDR e bibliotecas de dispositivos:
Dispositivo | Biblioteca |
---|---|
ADALMO-PLUTÃO | libio (configuração) |
Espião Aéreo R2/Mini/HF+ | airspy/airspyhf (configuração) |
BladeRF | bladeRF (configuração) |
Ettus USRPs | UHD (configuração) |
HackRF | HackRF (configuração) |
LimaSDR | Suíte Lime (configuração) |
Dispositivos Mirics MSi001 + MSi2500 SDR | libmirisdr (configuração) |
Pitaya Vermelha | SoapyRedPitaya |
RFSpace/NetSDR/CloudSDR | SoapyNetSDR |
RTL-SDR | rtl-sdr (configuração) |
Placa de som/dispositivos de áudio | Áudio com sabão |
A lista completa de pacotes pode ser encontrada aqui. Você pode sugerir software adicional para incluir registrando um problema. Se você construiu software adicional a partir do código-fonte sobre o radioconda, documente seus resultados em um problema para ajudar outras pessoas (e me ajude a empacotá-lo!).
Uma vez instalado, você terá uma distribuição/ambiente conda totalmente funcional, o que significa que você pode usar os comandos conda
ou mamba
para instalar pacotes adicionais (se disponíveis através do conda-forge) ou atualizar para as versões mais recentes. Pense no radioconda como uma alternativa ao Anaconda ou Miniforge, mas especializado em rádio de software.
NOTA: Radioconda é construído a partir de pacotes mantidos pelo projeto conda-forge. Se você tiver dúvidas ou problemas específicos da instalação conda de um pacote específico, informe-os no repositório de matéria-prima correspondente.
Os instaladores Radioconda estão disponíveis aqui: https://github.com/ryanvolz/radioconda/releases.
SO | Arquitetura | Tipo de instalador | Download |
---|---|---|---|
Linux | x86_64 (amd64) | Linha de comando | radioconda-Linux-x86_64.sh |
Linux | aarch64 (arm64) | Linha de comando | radioconda-Linux-aarch64.sh |
Linux | ppc64le (POWER8/9) | Linha de comando | radioconda-Linux-ppc64le.sh |
macOS | x86_64 (Intel) | Linha de comando | radioconda-MacOSX-x86_64.sh |
macOS | x86_64 (Intel) | Gráfico | radioconda-MacOSX-x86_64.pkg |
macOS | arm64 (silício de maçã) 1 | Linha de comando | radioconda-MacOSX-arm64.sh |
macOS | arm64 (silício de maçã) 1 | Gráfico | radioconda-MacOSX-arm64.pkg |
Windows | x86_64 (amd64) | Gráfico | radioconda-Windows-x86_64.exe |
Para uma instalação por linha de comando, baixe o instalador e execute:
bash radioconda-*-Linux-x86_64.sh # or similar for other installers for unix platforms
Para uma instalação gráfica, baixe o instalador e clique duas vezes nele.
Se você já possui o conda/mamba, você pode pular o instalador e criar um novo ambiente com todos os pacotes radioconda executando:
conda create -n radioconda -c conda-forge -c ryanvolz --only-deps radioconda
Veja abaixo as etapas adicionais de instalação para dispositivos de rádio de software específicos.
Para uso não interativo, observe as opções executando o seguinte:
bash radioconda-*-Linux-x86_64.sh -h # or similar for other installers for unix platforms
ou se você estiver no Windows, execute:
start /wait "" build/radioconda--Windows-x86_64.exe /InstallationType=JustMe /RegisterPython=0 /S /D=%UserProfile%radioconda
Você usará o radioconda principalmente por meio da linha de comando, embora no Windows alguns aplicativos instalem atalhos para o menu Iniciar.
Inicie o "radioconda Prompt" no menu Iniciar (você pode encontrá-lo no diretório "radioconda"). A partir desta linha de comando, você pode executar mamba
para instalar/atualizar pacotes ou executar qualquer um dos aplicativos instalados com o radioconda. Alguns aplicativos também podem ser iniciados por meio de atalhos adicionados ao menu Iniciar.
Inicie seu terminal favorito. Dependendo das opções que você escolheu durante a instalação, você pode ou não ter o ambiente "base" do radioconda ativado automaticamente (você verá "(base)" no prompt da linha de comando). Para ativar o ambiente "base" do radioconda, execute:
conda activate base
Se isso falhar porque o comando conda
não foi encontrado, você poderá ativar o ambiente manualmente executando
sh /bin/activate
A partir de um ambiente ativado, você poderá executar mamba
para instalar/atualizar pacotes ou executar qualquer um dos aplicativos instalados com o radioconda.
Para instalar um pacote específico:
mamba install
Depois de instalar o radioconda, você pode manter-se atualizado para todos os pacotes com:
mamba upgrade --all
Para instalar a versão mais recente em particular, execute
(no Windows):
mamba install --file https://github.com/ryanvolz/radioconda/releases/latest/download/radioconda-win-64.lock
(no Linux/macOS):
mamba install --file https://github.com/ryanvolz/radioconda/releases/latest/download/radioconda-$(conda info | sed -n -e 's/^.*platform : //p').lock
Para instalar uma versão específica, substitua o número da versão desejada e execute
(no Windows):
mamba install --file https://github.com/ryanvolz/radioconda/releases/download/20NN.NN.NN/radioconda-win-64.lock
(no Linux/macOS):
mamba install --file https://github.com/ryanvolz/radioconda/releases/download/20NN.NN.NN/radioconda-$(conda info | sed -n -e 's/^.*platform : //p').lock
Se você está começando com um ambiente novo ou se sente confortável em lidar com conflitos de pacotes, você pode instalar a versão mais recente usando o metapacote radioconda
do canal ryanvolz
:
mamba install -c conda-forge -c ryanvolz --only-deps radioconda
(É necessário especificar primeiro o canal conda-forge
, mesmo que seja o seu canal padrão, para que o canal ryanvolz
não tenha prioridade.)
Para instalar uma versão específica, substitua o número da versão desejada e execute
mamba install -c conda-forge -c ryanvolz --only-deps radioconda=20NN.NN.NN
Para usar dispositivos de rádio de software específicos, pode ser necessário instalar drivers ou firmware adicionais. Encontre seu dispositivo abaixo e siga as instruções. (Ajude a adicionar esta seção registrando um problema se as instruções não funcionarem ou se você tiver instruções adicionais para adicionar!)
Instale o driver WinUSB com Zadig, selecionando o dispositivo denominado "Bulk-In, Interface (Interface 0)".
Coloque na lista negra os módulos DVB-T que, de outra forma, reivindicariam o dispositivo:
sudo ln -s $CONDA_PREFIX/etc/modprobe.d/rtl-sdr-blacklist.conf /etc/modprobe.d/radioconda-rtl-sdr-blacklist.conf
sudo modprobe -r $(cat $CONDA_PREFIX/etc/modprobe.d/rtl-sdr-blacklist.conf | sed -n -e 's/^blacklist //p')
Instale uma regra do udev criando um link para a instalação do radioconda:
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/rtl-sdr.rules /etc/udev/rules.d/radioconda-rtl-sdr.rules
sudo udevadm control --reload
sudo udevadm trigger
Instale os drivers USB mais recentes baixando e instalando este arquivo.
Instale uma regra do udev criando um link para a instalação do radioconda:
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/90-libiio.rules /etc/udev/rules.d/90-radioconda-libiio.rules
sudo udevadm control --reload
sudo udevadm trigger
Depois de poder se comunicar com o hardware (seguindo as instruções abaixo), você pode querer executar as etapas pós-instalação detalhadas no wiki dos usuários do Plutão.
O driver WinUSB do seu dispositivo provavelmente será instalado automaticamente e, nesse caso, não há configuração adicional. Se por algum motivo o driver não estiver instalado e o dispositivo não for reconhecido, instale o driver WinUSB com Zadig, selecionando seu dispositivo Airspy.
Instale uma regra do udev criando um link para a instalação do radioconda:
# run the next line only for the Airspy R2 or Mini
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/52-airspy.rules /etc/udev/rules.d/52-radioconda-airspy.rules
# run the next line only for the Airspy HF+
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/52-airspyhf.rules /etc/udev/rules.d/52-radioconda-airspyhf.rules
sudo udevadm control --reload
sudo udevadm trigger
Em seguida, certifique-se de que sua conta de usuário pertence ao grupo plugdev para poder acessar seu dispositivo:
sudo usermod -a -G plugdev
Talvez seja necessário reiniciar para que essa alteração tenha efeito.
Instale o driver WinUSB com Zadig, selecionando seu dispositivo HackRF.
Instale uma regra do udev criando um link para a instalação do radioconda:
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/53-hackrf.rules /etc/udev/rules.d/53-radioconda-hackrf.rules
sudo udevadm control --reload
sudo udevadm trigger
Em seguida, certifique-se de que sua conta de usuário pertence ao grupo plugdev para poder acessar seu dispositivo:
sudo usermod -a -G plugdev
Talvez seja necessário reiniciar para que essa alteração tenha efeito.
Instale o driver WinUSB com Zadig, selecionando seu dispositivo BladeRF.
Instale uma regra do udev criando um link para a instalação do radioconda:
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/88-nuand-bladerf1.rules /etc/udev/rules.d/88-radioconda-nuand-bladerf1.rules
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/88-nuand-bladerf2.rules /etc/udev/rules.d/88-radioconda-nuand-bladerf2.rules
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/88-nuand-bootloader.rules /etc/udev/rules.d/88-radioconda-nuand-bootloader.rules
sudo udevadm control --reload
sudo udevadm trigger
Em seguida, certifique-se de que sua conta de usuário pertence ao grupo plugdev para poder acessar seu dispositivo:
sudo usermod -a -G plugdev
Talvez seja necessário reiniciar para que essa alteração tenha efeito.
O pacote conda-forge usa libusb para se comunicar via USB com seu dispositivo LimeSDR, em vez da biblioteca CyUSB padrão que não é de código aberto. Se você usou seu LimeSDR com outro pacote de software, você terá que trocar os drivers USB para um compatível com WinUSB/libusb.
Instale o driver WinUSB com Zadig, selecionando seu dispositivo Lime.
Instale uma regra do udev criando um link para a instalação do radioconda:
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/64-limesuite.rules /etc/udev/rules.d/64-radioconda-limesuite.rules
sudo udevadm control --reload
sudo udevadm trigger
Baixe os arquivos de firmware ativando o prompt conda e executando
uhd_images_downloader
Você provavelmente precisará instalar um driver USB para o dispositivo. Siga as instruções do site Ettus, ou instale o driver WinUSB com Zadig (seu dispositivo terá um ID USB que começa com 2500 ou 3923).
Instale uma regra do udev criando um link para a instalação do radioconda:
sudo ln -s $CONDA_PREFIX/lib/uhd/utils/uhd-usrp.rules /etc/udev/rules.d/radioconda-uhd-usrp.rules
sudo udevadm control --reload
sudo udevadm trigger
Instale o driver WinUSB com Zadig, selecionando seu dispositivo MiriSDR.
Instale uma regra do udev criando um link para a instalação do radioconda:
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/mirisdr.rules /etc/udev/rules.d/radioconda-mirisdr.rules
sudo udevadm control --reload
sudo udevadm trigger
Muitos dispositivos USB usam libusb e precisam de um driver WinUSB instalado no Windows. Siga este procedimento para instalar o driver para o seu dispositivo:
Baixe e execute o Zadig
Selecione seu dispositivo
Certifique-se de que o driver de destino (meio da interface) leia “WinUSB”
Clique em “Instalar driver” ou “Substituir driver”
Cada pacote do instalador é construído a partir de um diretório de especificação em installer_specs usando o construtor conda. Um instalador pode ser criado manualmente usando o script build_installer.py. Os diretórios de especificação definem as versões exatas dos pacotes incluídos para que constructor
produza um resultado previsível que possa ser rastreado pelo git para cada versão. Por sua vez, os diretórios de especificação são criados/atualizados pela nova renderização do arquivo de especificação do ambiente radioconda usando o script rerender.py.
Portanto, o procedimento para criar um novo pacote instalador é:
radioconda.yaml
, se desejar.rerender.py
.build_installer.py
.Para lançar uma nova versão do radioconda e criar pacotes de instalação usando o CI do GitHub:
NOTA: usar um pré-lançamento é importante para garantir que os links "mais recentes" funcionem.
As compilações de silício da Apple são experimentais e não foram testadas como as outras plataformas. ↩ ↩ 2