bladeRF-cli - komut satırı arayüzü ve test yardımcı programı
bladeRF-cli <options>
bladeRF-cli yardımcı programı, bellenim dosyalarını flaşlamak, FPGA bit akışlarını yüklemek ve nuand bladeRF yazılım tanımlı radyo sisteminde diğer görevleri gerçekleştirmek için kullanılır.
Sabit yazılım dosyalarını ve FPGA bit akışlarını edinme veya oluşturma hakkında daha fazla bilgi için lütfen http://nuand.com/ adresini ziyaret edin.
bladeRF komut satırı arabirimi ve test yardımcı programı (1.8.0-git)
Belirtilen bladeRF cihazını kullanın.
Sağlanan FX3 üretici yazılımı dosyasını flaşa yazın.
Sağlanan FPGA bit akışını yükleyin.
Sağlanan FPGA görüntüsünü otomatik yükleme için flaşa yazın. FPGA otomatik yüklemesini devre dışı bırakmak için -L X veya --flash-fpga X kullanın.
Aygıtları araştırın, sonuçları yazdırın ve ardından çıkın. Kullanılabilir cihaz yoksa sıfır olmayan bir dönüş durumu döndürülür.
Belirtilen etkileşimli mod komutunu yürütün. Birden çok -e işareti belirtilebilir. Komutlar verilen sırayla yürütülecektir.
Sağlanan komut dosyasını çalıştırın.
Etkileşimli moda girin.
libbladeRF sürümünü yazdırın ve çıkın.
libbladeRF ayrıntı düzeyini ayarlayın. Artan ayrıntı düzeyinde listelenen düzeyler şunlardır:
bilgi, hata ayıklama, ayrıntılı
CLI sürümünü yazdırın ve çıkın.
Bu yardım metnini göster.
Tüm etkileşimli komutlar için yardım bilgilerini yazdırın.
-d seçeneği, bir aygıt tanımlayıcı dizesi alır. Bu dizenin biçimi hakkında daha fazla bilgi için bladerf_open() belgelerine bakın.
-d parametresi sağlanmazsa, sağlanan komut için uygun olan ilk cihaz kullanılacak veya etkileşimli moda girmeden önce açılacaktır.
Komutlar aşağıdaki sırayla yürütülür:
Komut satırı seçenekleri, -e
, kod komutları, etkileşimli mod komutları. Bir betikten veya -e yoluyla 'rx/tx start' komutunu çalıştırırken, programın alım/iletim tamamlanmadan çıkmayı denemeyeceğinden emin olmak için bu komutları daha sonra 'rx/tx wait [timeout]' takip ettiğinden emin olun.
bladeRF-cli, komut dosyası yazılabilir bir etkileşimli modu destekler. Bu moda girmek için bladeRF-cli --interactive'i çalıştırın. Tüm komutların listesi için "help" veya
kullanım:
calibrate <operation> [options]Belirtilen alıcı-verici kalibrasyon işlemini gerçekleştirin.
Mevcut işlemler:
LMS dahili DC ofset otomatik kalibrasyonları
calibrate lms [show]calibrate lms tuning [value]calibrate lms txlpf [<I filter> <Q filter>]calibrate lms rxlpf [<I filter> <Q filter>]calibrate lms rxvga2 [<DC ref> <I1> <Q1> <I2> <Q2>]Belirtilen otomatik kalibrasyonu veya hiçbiri sağlanmıyorsa hepsini gerçekleştirin. Değerler sağlandığında, otomatik kalibrasyon prosedürünün sonuçları yerine bunlar kullanılır. Geçerli LMS kalibrasyon değerlerini okumak ve yazdırmak için lms show kullanın.
rxvga2 için, I1 ve Q1 sırasıyla Aşama 1 I ve Q bileşenleridir ve I2 ve Q2 Aşama 2 I ve Q bileşenleridir.
RX and TX I/Q DC offset correction parameter calibration
calibrate dc <rx|tx> [<I> <Q>]
calibrate dc <rxtx>
Calibrate the DC offset correction parameters for the current frequency and gain settings. If a I/Q values are provided, they are applied directly. cal rxtx is shorthand for cal rx followed by cal tx.
RX and TX I/Q balance correction parameter calibration
calibrate iq <rx|tx> <gain|phase> <value>
Set the specified IQ gain or phase balance parameters.
Generate RX or TX I/Q DC correction parameter tables
calibrate table dc <rx|tx> [<f_min> <f_max> [f_inc]]
Generate and write an I/Q correction parameter table to the current working directory, in a file named <serial>_dc_<rx|tx>.tbl. f_min and f_max are min and max frequencies to include in the table. f_inc is the frequency increment.
By default, tables are generated over the entire frequency range, in 10 MHz steps.
Generate RX or TX I/Q DC correction parameter tables for AGC Look Up Table
calibrate table agc <rx|tx> [<f_min> <f_max> [f_inc]]
Similar usage as calibrate table dc except the call will set gains to the AGC's base gain value before running calibrate table dc.
kullanım:
clearEkranı temizler.
kullanım:
echo [arg 1] [arg 2] ... [arg n]Her bağımsız değişkeni yeni bir satırda yankılayın.
kullanım:
erase <offset> <count>Belirtilen silme bloklarını sil SPI flash.
<offset>Blok ofsetini sil
<count>Silinecek silme bloğu sayısı
kullanım:
flash_backup <file> (<type> | <address> <length>)Flash verilerini belirtilen dosyaya yedekleyin. Bu komut iki veya dört argüman alır. İki bağımsız değişken çağrısı genellikle geliştirme dışı kullanım için önerilir.
parametreler:
<type>yedekleme türü.
Bu, seçilen türe göre uygun adres ve uzunluk değerlerini seçer.
Geçerli seçenekler şunlardır:
Option Description
────────────────────────────────────────────────────────────────────
cal Calibration data
fw Firmware
fpga40 Metadata and bitstream for 40 kLE FPGA
fpga115 Metadata and bitstream for 115 kLE FPGA
fpgaA4 Metadata and bitstream for 49 kLE (A4) FPGA
fpgaA5 Metadata and bitstream for 77 kLE (A5) FPGA
fpgaA9 Metadata and bitstream for 301 kLE (A9) FPGA<address>Yedeklenecek verilerin adresi. Silme bloğu hizalı olmalıdır.
<len>Yedeklenecek bölgenin uzunluğu. Silme bloğu hizalı olmalıdır.
Not: Bir adres ve uzunluk sağlandığında, görüntü türü varsayılan olarak raw olur.
Örnekler:
Kalibrasyon veri bölgesini yedekler:
flash_backup cal.bin calKalibrasyon bölgesini ham veri görüntüsü olarak yedekler:
flash_backup cal_raw.bin 0x30000 0x10000kullanım:
flash_image <image> [output options]Flash görüntünün meta verilerini yazdırın veya yeni bir flash görüntü oluşturun. Tek argüman olarak bir flash görüntü dosyasının adı verildiğinde, bu komut görüntünün meta veri içeriğini yazdıracaktır.
Yeni bir flaş görüntüsü oluşturmak için aşağıdaki seçenekler kullanılabilir.
data=<file>Görüntüde saklanacak verileri içeren dosya.
address=<addr>Flaş adresi. Varsayılan, type parametresine bağlıdır.
type=<type>Flash görüntü türü. Varsayılanlar ham şeklindedir.
Geçerli seçenekler şunlardır:
Option Description
────────────────────────────────────────────────────────────────────
cal Calibration data
fw Firmware
fpga40 Metadata and bitstream for 40 kLE FPGA
fpga115 Metadata and bitstream for 115 kLE FPGA
fpgaA4 Metadata and bitstream for 49 kLE (A4) FPGA
fpgaA5 Metadata and bitstream for 77 kLE (A5) FPGA
fpgaA9 Metadata and bitstream for 301 kLE (A9) FPGA
raw Raw data. The address and length parameters must be
provided if this type is selected.serial=<serial>Görüntüde saklamak için Seri #. Varsayılanlar sıfırdır.
kullanım:
flash_init_cal <fpga_size> <vctcxo_trim> [<output_file>]Yeni bir kalibrasyon veri bölgesi oluşturun ve o anda açık olan cihaza veya bir dosyaya yazın. Bu komutu çalıştırmadan önce kalibrasyon verilerini yedeklediğinizden emin olun. (flash_backup komutuna bakın.)
<fpga_size>Cihaz modeline bağlı olarak 40 veya 115.
<vctcxo_trim>VCTCXO/DAC kırpma değeri (0x0-0xffff)
<output_file>Kalibrasyon verilerinin yazılacağı dosya. Bu argüman sağlandığında, cihazın flaşına hiçbir veri yazılmaz.
kullanım:
flash_restore <file> [<address> <length>]İsteğe bağlı olarak görüntü meta verilerindeki değerleri geçersiz kılarak bir dosyadan flash verilerini geri yükleyin.
<address>Sağlanan flash görüntü dosyasında belirtilen adrese varsayılandır.
<length>Sağlanan görüntü dosyasındaki verilerin uzunluğu varsayılandır.
kullanım:
fw_log [filename]Cihazın üretici yazılımı günlüğünün içeriğini okuyun ve belirtilen dosyaya yazın. Herhangi bir dosya adı belirtilmezse, günlük içeriği stdout'a yazılır.
kullanım:
help [<command>]Herhangi bir komutta bunun gibi genişletilmiş yardım sağlar.
kullanım:
infoAçık bir aygıt hakkında aşağıdaki bilgileri yazdırır:
Seri numarası
VCTCXO DAC kalibrasyon değeri
FPGA boyutu
FPGA'nın yüklenip yüklenmediği
USB veri yolu, adres ve hız
Arka uç (Hangi cihaz arayüz kodunun kullanıldığını belirtir.)
Örnek numarası
kullanım:
jump_to_bootBir FW imza kelimesini flaştan silin ve FX3 önyükleyiciye atlayın.
Cihaz, yeni üretici yazılımı cihaza yazılana kadar güç döngüleri boyunca FX3 önyükleyiciye önyüklemeye devam edecektir.
kullanım:
load <fpga|fx3> <filename>Bir FPGA bit akışı yükleyin veya FX3'ün SPI flaşını programlayın.
kullanım:
xb <board_model> <subcommand> [parameters]Bir genişletme kartını etkinleştirin veya yapılandırın.
board_model için geçerli değerler:
100XB-100 GPIO genişletme kartı
200XB-200 LF/MF/HF/VHF dönüştürücü genişletme kartı
300XB-300 amplifikatör kartı
Ortak alt komutlar:
enableXB-100, XB-200 veya XB-300 genişletme kartını etkinleştirin.
XB-200 alt komutları:
filter [rx|tx] [50|144|222|custom|auto_1db|auto_3db]XB-200 kartında belirtilen RX veya TX filtresini seçer. Aşağıda, filtre seçeneklerinin her birinin açıklamaları bulunmaktadır:
50-54 MHz (6 metre bant) filtresini seçin.
144-148 MHz (2 metre bant) filtresini seçin.
222-225 MHz (1,25 metre bant) filtresini seçin. gerçekçi olarak, bu filtre seçeneği aslında biraz daha geniştir ve 206 MHz - 235 MHz.
Özel filtre yolunu seçer. Kullanıcı, bu seçeneği kullanırken ilgili FILT ve FILT-ANT bağlantıları boyunca bir filtre bağlamalıdır. Alternatif olarak, alım için "filtre yok" elde etmek için FILT ve FILT-ANT bağlantıları atlanabilir. (Ancak bu İletimler için _son derece_ önerilmez.)
Frekansa ve filtrelerin 1dB noktalarına göre yukarıdaki seçeneklerden birini otomatik olarak seçer. Özel yol, yerleşik filtrelerle ilişkili olmayan durumlar için kullanılır.
Frekansa ve filtrelerin 3dB noktalarına göre yukarıdaki seçeneklerden birini otomatik olarak seçer. Özel yol, yerleşik filtrelerle ilişkili olmayan durumlar için kullanılır.
XB-300 alt komutları:
<pa|lna|aux> [on|off]Güç amplifikatörünü (PA), düşük gürültülü amplifikatörü (lna) veya yardımcı LNA'yı (aux) etkinleştirin veya devre dışı bırakın. [on|off] belirtilmemişse, belirtilen aygıtın yazdırılması durumunda geçerli durum.
Not: XB-300'deki yardımcı yol, varsayılan olarak bileşenlerle doldurulmaz; aux kontrolünün RX sinyali üzerinde hiçbir etkisi olmayacaktır. Bu seçenek, kullanıcıların panolarını özel donanımla değiştirmeleri için kullanılabilir.
<pwr>Mevcut Güç Algılama (PDET) voltajını okuyun ve çıkış gücünü hesaplayın.
trx <rx|tx>Varsayılan XB-300 donanım yapılandırması, ayrı RX ve TX yolları içerir. Ancak, TRX için yalnızca tek bir anten kullanmak isteyen kullanıcılar bunu XB-300'deki direnç yerleştirme seçeneklerinde değişiklik yaparak yapabilir ve bu komutu RX ile TX işlemi arasında geçiş yapmak için kullanabilir. (Şematikte R8, R10 ve R23'e bakın.)
Örnekler:
XB-200 dönüştürücü genişletme kartını etkinleştirir ve yapılandırır:
xb 200 enableXB-200 dönüştürücü genişletme kartında 144-148 MHz alma filtresini seçer:
xb 200 filter rx 144XB-300 ile etkileşim için GPIO kullanımını etkinleştirir ve yapılandırır. PA ve LNA varsayılan olarak devre dışı bırakılır:
xb 300 enableXB-300'de RX LNA'yı etkinleştirir. LED D1 (yeşil), LNA etkinleştirildiğinde yanar ve devre dışı bırakıldığında söner:
xb 300 lna onXB-300'de TX PA'yı devre dışı bırakır. PA etkinleştirildiğinde LED D2 (mavi) yanar ve devre dışı bırakıldığında söner:
xb 300 pa offkullanım:
mimo [master | slave]Cihaz MIMO işlemini değiştirin.
ÖNEMLİ: Bu komut kullanımdan kaldırılmıştır ve yerini "print/set smb_mode" almıştır. Kullanım metni için şunu çalıştırın: "set smb_mode"
kullanım:
open [device identifiers]Ardışık komutlarla kullanmak için belirtilen cihazı açın. Önceden açılmış herhangi bir cihaz kapatılacaktır.
Aygıt tanımlayıcı dizesinin genel biçimi şöyledir:
<backend>:[device=<bus>:<addr>] [instance=<n>] [serial=<serial>]Eksiksiz aygıt tanımlayıcı biçimi için libbladeRF'deki bladerf_open() belgelerine bakın.
kullanım:
peek <rfic|pll|dac|lms|si> <address> [num_addresses]Peek komutu, FPGA'dan sarkan herhangi bir cihazı okuyabilir. Bu şunları içerir:
bladeRF 1: LMS6002D alıcı-verici, VCTCXO trim DAC, Si5338 saat üreteci
bladeRF 2: AD9361 alıcı-verici, VCTCXO trim DAC, ADF4002 frekans sentezleyici
num_addresses sağlanırsa, adres 1 artırılır ve bu kadar çok adres için başka bir göz atma işlemi gerçekleştirilir.
Geçerli Adres Aralıkları:
Device Address Range
───────────────────────────
rfic 0 to 0x3F7 (1015)
pll 0 to 3
dac 0 to 255
lms 0 to 127
si 0 to 255Örnek:
peek si ...kullanım:
poke <rfic|pll|dac|lms|si> <address> <data>Poke komutu, FPGA'dan sarkan herhangi bir cihazı yazabilir. Bu şunları içerir:
bladeRF 1: LMS6002D alıcı-verici, VCTCXO trim DAC, Si5338 saat üreteci
bladeRF 2: AD9361 alıcı-verici, VCTCXO trim DAC, ADF4002 frekans sentezleyici
Geçerli Adres Aralıkları:
Device Address Range
───────────────────────────
rfic 0 to 0x3F7 (1015)
pll 0 to 3
dac 0 to 255
lms 0 to 127
si 0 to 255Örnek:
poke lms ...kullanım:
print [parameter]print komutu, yazdırılacak bir parametre alır. Mevcut parametreler aşağıda listelenmiştir. Hiçbir parametre belirtilmezse, tüm parametreler yazdırılır.
Ortak parametreler:
Parameter Description
────────────────────────────────────────────────────────────────────────
bandwidth Bandwidth settings
frequency Frequency settings
agc Automatic gain control
loopback Loopback settings
rx_mux FPGA RX FIFO input mux setting
gain Gain settings
samplerate Samplerate settings
trimdac VCTCXO Trim DAC settings
tuning_mode Tuning mode settings
hardware Low-level hardware statusYalnızca BladeRF1 parametreleri:
Parameter Description
────────────────────────────────────────────────────────────────────────
gpio FX3 <-> FPGA GPIO state
lnagain RX LNA gain, in dB (deprecated)
rxvga1 RXVGA1 gain, in dB (deprecated)
rxvga2 RXVGA2 gain, in dB (deprecated)
txvga1 TXVGA1 gain, in dB (deprecated)
txvga2 TXVGA2 gain, in dB (deprecated)
sampling External or internal sampling mode
smb_mode SMB clock port mode of operation
vctcxo_tamer Current VCTCXO tamer mode
xb_gpio Expansion board GPIO values
xb_gpio_dir Expansion board GPIO direction (1=output, 0=input)Yalnızca BladeRF2 parametreleri:
Parameter Description
────────────────────────────────────────────────────────────────────────
clock_sel System clock selection
clock_out Clock output selection
rssi Received signal strength indication
clock_ref ADF4002 chip status
refin_freq ADF4002 reference clock frequency
biastee Current bias-tee status
filter RFIC FIR filter selectionkullanım:
probe [strict]Ekli bladeRF cihazını arayın ve sonuçların bir listesini yazdırın.
strict belirtilmeden, kullanılabilir herhangi bir cihazın bulunmaması bir hata olarak kabul edilmez.
İsteğe bağlı strict bağımsız değişkeni sağlandığında, bu komut hiçbir aygıtın bulunmadığı durumu bir hata olarak ele alarak -e komut satırı bağımsız değişkeni aracılığıyla sağlanan komut dizilerinin veya komut listelerinin anında sonlandırılmasına neden olur.
kullanım:
quitCLI'den çıkın.
kullanım:
recover [<bus> <address> <firmware file>]Firmware'i bootloader modunda çalışan bir cihaza yükleyin veya şu anda bootloader modunda olan tüm cihazları listeleyin.
Bağımsız değişken içermeyen bu komut, önyükleyici modunda çalışan FX3 tabanlı aygıtlar için USB veri yolunu ve adresini listeler.
Bir üretici yazılımı dosyasına giden bir veri yolu, adres ve yol sağlandığında, belirtilen cihaz sağlanan üretici yazılımı ile yüklenecek ve onu yürütmeye başlayacaktır.
Çoğu durumda, aygıt yazılımını aygıtın RAM'ine başarılı bir şekilde yükledikten sonra, kullanıcılar "open" komutuyla aygıtı açmalı ve "load fx3
kullanım:
run <script>Sağlanan betiği çalıştırın.
kullanım:
rx <start | stop | wait | config [param=val [param=val [...]]>IQ örneklerini alın ve belirtilen dosyaya yazın. Alım aşağıdakilerden biri tarafından kontrol edilir ve yapılandırılır:
Command Description
────────────────────────────────────────────────────────────────────────
start Start receiving samples
stop Stop receiving samples
wait Wait for sample transmission to complete, or until a
specified amount of time elapses
config Configure sample reception. If no parameters are
provided, the current parameters are printed.rx öğesini herhangi bir ek komut olmadan çalıştırmak, rx config için geçerli bir kısayoldur.
wait komutu isteğe bağlı bir timeout parametresi alır. Bu parametre varsayılan olarak milisaniye birimlerine (ms) sahiptir. Zaman aşımı birimi ms veya s sonekleri kullanılarak belirtilebilir. Bu parametre sağlanmazsa, komut alım tamamlanana veya Ctrl-C tuşuna basılana kadar bekleyecektir.
Konfigürasyon parametreleri param=value şeklini alır ve bir veya daha fazla rx config çağrılarında belirtilebilir. Aşağıda mevcut parametrelerin bir listesi bulunmaktadır.
Parameter Description
────────────────────────────────────────────────────────────────────────
n Number of samples to receive. 0 = inf.
file Filename to write received samples to
format Output file format. One of the following:
csv: CSV of SC16 Q11 samples
bin: Raw SC16 Q11 DAC samples
samples Number of samples per buffer to use in the
asynchronous stream. Must be divisible by 1024 and
>= 1024.
buffers Number of sample buffers to use in the asynchronous
stream. The min value is 4.
xfers Number of simultaneous transfers to allow the
asynchronous stream to use. This should be less than
the buffers parameter.
timeout Data stream timeout. With no suffix, the default
unit is ms. The default value is 1000 ms (1 s).
Valid suffixes are ms and s.
channel Comma-delimited list of physical RF channels to useÖrnek:
(10240=10 * 1024) örnekleri alın ve bunları ikili DAC formatında /tmp/data.bin dosyasına yazın.
rx config file=/tmp/data.bin format=bin n=10KRX1 ve RX2'den 32768 örnek alın ve bunların çıktısını dört sütunlu (RX1 I, RX1 Q, RX2 I, RX2 Q) mimo.csv adlı bir dosyaya gönderin.
rx config file=mimo.csv format=csv n=32768 channel=1,2notlar:
n, samples, buffers ve xfers parametreleri, 1024'ün katları olan K, M ve G soneklerini destekler.
Bir rx stop ve ardından bir rx start, örnek dosyasının kesilmesine neden olur. Bu istenmiyorsa, rx akışını yeniden başlatmadan önce başka bir dosya ayarlamak için rx config'i çalıştırdığınızdan emin olun.
Daha yüksek örnekleme hızları için, boşluk izin veriyorsa, binary çıktı biçiminin kullanılması ve çıktı dosyasının RAM'e yazılması (ör. /tmp, /dev/shm) önerilir. Daha yüksek örnekleme hızlarında daha büyük yakalamalar için HDD yerine SSD kullanmayı düşünün.
CSV biçimi, channel parametresiyle yapılandırılan ilk kanal için I,Q çiftine karşılık gelen ilk iki sütun ile kanal başına iki sütun üretir; ikinci kanalın I,Q'suna karşılık gelen sonraki iki sütun vb.
kullanım:
trigger [<trigger> <tx | rx> [<off slave master fire>]]Parametresiz kullanılırsa, bu komut tüm tetikleyicilerin durumunu yazdırır. ve ve sağlandığında, belirtilen tetikleyici yazdırılır.
Aşağıdakiler için mevcut seçenekler aşağıdadır:
Trigger Description
────────────────────────────────────────────────────────────────────────
J71-4 Trigger signal is on mini_exp1 (bladeRF x40/x115, J71,
pin 4).
J51-1 Trigger signal is on mini_exp1 (bladeRF xA4/xA5/xA9,
J51, pin 1).
Miniexp-1 Trigger signal is on mini_exp1, hardware-independentYukarıdaki üç seçeneğin de tüm cihazlarda aynı mantıksal bağlantı noktasıyla eşleştiğine dikkat edin (mini_exp[1]). Ters uyumluluk ve netlik için birden fazla seçenek sağlanmıştır.
Tetikleyici, aşağıdakilerden biri olabilecek son bağımsız değişken sağlanarak kontrol edilir ve yapılandırılır:
Command Description
────────────────────────────────────────────────────────────────────────
off Clears fire request and disables trigger functionality.
slave Configures trigger as slave, clears fire request, and
arms the device.
master Configures trigger as master, clears fire request, and
arms the device.
fire Sets fire request. Only applicable to the master.Bir tetikleme zinciri, tek veya birden çok bladeRF biriminden oluşur ve TX ve RX modülleri içerebilir. Birden çok bladeRF birimi kullanılıyorsa, bunların tarafından belirtilen sinyal ve ortak bir topraklama yoluyla bağlanması gerekir.
Doğru senkronizasyonu sağlamak için aşağıdaki komut dizisi kullanılmalıdır. Başlangıçta tüm tetikleyicilerin kapalı olduğu varsayılır.
Configure designated trigger master
IMPORTANT: Never configure two devices as trigger masters on a single chain. Contention on the same signal could damage the devices.
Diğer tüm cihazları tetik köleleri olarak yapılandırın
Configure and start transmit or receive streams.
The operation will stall until the triggers fire. As such, sufficiently large timeouts should be used to allow the trigger signal to be emitted by the master and received by the slaves prior to libbladeRF returning BLADERF_ERR_TIMEOUT.
Set fire-request on master trigger
All devices will synchronously start transmitting or receiving data.
İletimi tamamlayın ve görevleri her zamanki gibi alın
Re-configure the master and slaves to clear fire requests and re-arm.
Steps 1 through 5 may be repeated as neccessary.
Tüm kölelerde tetiklemeyi devre dışı bırak
Master'da tetiklemeyi devre dışı bırak
notlar:
Vericileri ve alıcıları tek bir zincirde senkronize etmek, TX ve RX arasında 11 örneğin kaymasına neden olur; bu numuneler atılmalıdır. Bunun nedeni, TX ve RX'in farklı işlem boru hattı uzunluklarıdır. Gelecekte FPGA kodu güncellenirse bu değer değişebilir.
kullanım:
tx <start | stop | wait | config [parameters]>Belirtilen dosyadan IQ örneklerini okuyun ve iletin. İletim aşağıdakilerden biri tarafından kontrol edilir ve yapılandırılır:
Command Description
────────────────────────────────────────────────────────────────────────
start Start transmitting samples
stop Stop transmitting samples
wait Wait for sample transmission to complete, or until a
specified amount of time elapses
config Configure sample transmission. If no parameters are
provided, the current parameters are printed.tx öğesini herhangi bir ek komut olmadan çalıştırmak, tx config için geçerli bir kısayoldur.
wait komutu isteğe bağlı bir timeout parametresi alır. Bu parametre varsayılan olarak milisaniye birimlerine (ms) sahiptir. Zaman aşımı birimi ms veya s sonekleri kullanılarak belirtilebilir. Bu parametre sağlanmazsa komut, aktarım tamamlanana veya Ctrl-C tuşuna basılana kadar bekleyecektir.
Yapılandırma parametreleri param=value biçimini alır ve bir veya birden çok tx config çağrısında belirtilebilir. Aşağıda mevcut parametrelerin bir listesi bulunmaktadır.
Parameter Description
────────────────────────────────────────────────────────────────────────
file Filename to read samples from
format Input file format. One of the following:
csv: CSV of SC16 Q11 samples ([-2048, 2047])
bin: Raw SC16 Q11 DAC samples ([-2048, 2047])
repeat The number of times the file contents should be
transmitted. 0 implies repeat until stopped.
delay The number of microseconds to delay between
retransmitting file contents. 0 implies no delay.
samples Number of samples per buffer to use in the
asynchronous stream. Must be divisible by 1024 and
>= 1024.
buffers Number of sample buffers to use in the asynchronous
stream. The min value is 4.
xfers Number of simultaneous transfers to allow the
asynchronous stream to use. This should be < the
buffers parameter.
timeout Data stream timeout. With no suffix, the default
unit is ms. The default value is 1000 ms (1 s).
Valid suffixes are 'ms' and 's'.
channel Comma-delimited list of physical RF channels to useÖrnek:
data.bin içeriğini, aktarımlar arasında ~250ms gecikmeyle iki kez iletme:
tx config file=data.bin format=bin repeat=2 delay=250000mimo.csv içeriğinin, dosyadaki ilk kanal TX1 kanalına ve ikinci kanal TX2 kanalına eşlenmiş olarak tekrar tekrar iletilmesi:
tx config file=mimo.csv format=csv repeat=0 channel=1,2notlar:
n, samples, buffers ve xfers parametreleri K soneklerini destekler, 1024'ün katları olan M ve G.
Daha yüksek örnekleme hızları için girdi dosyasının bir HDD yerine RAM'de (ör. /tmp, /dev/shm) veya bir SSD'de saklanması önerilir.
CSV biçimi, channel parametresiyle yapılandırılan ilk kanal için I,Q çiftine karşılık gelen ilk iki sütun ile kanal başına iki sütun bekler; ikinci kanalın I,Q'suna karşılık gelen sonraki iki sütun vb. Örneğin, yukarıdaki mimo.csv örneğinde, -128,128,-256,256, TX1'de (-128,128) ve TX2'de (-256,256) iletir.
CSV verilerini sağlarken, bu komut önce onu geçerli çalışma dizinindeki bir dosyada saklanan bir ikili biçime dönüştürür. Bu işlem sırasında, aralık dışı değerler sıkıştırılacaktır.
İkili format kullanırken, sağlanan veri değerlerinin izin verilen aralık içinde olmasını sağlamak kullanıcının sorumluluğundadır. Bu ön koşul, bu programın zamana duyarlı geri aramalarda aralık kontrolleri gerçekleştirme ihtiyacını azaltır.
kullanım:
set <parameter> <arguments>set komutu, bir parametre ve söz konusu parametre için isteğe bağlı sayıda bağımsız değişken alır. Genel olarak set , o parametre için daha fazla yardım görüntüler.
Ortak parametreler:
Parameter Description
────────────────────────────────────────────────────────────────────────
bandwidth Bandwidth settings
frequency Frequency settings
agc Automatic gain control
loopback Loopback settings
rx_mux FPGA RX FIFO input mux mode
gain Gain settings
samplerate Samplerate settings
trimdac VCTCXO Trim DAC settings
tuning_mode Tuning mode settingsYalnızca BladeRF1 parametreleri:
Parameter Description
────────────────────────────────────────────────────────────────────────
gpio FX3 <-> FPGA GPIO state
lnagain RX LNA gain, in dB. Values: 0, 3, 6 (deprecated)
rxvga1 RXVGA1 gain, in dB. Range: [5, 30] (deprecated)
rxvga2 RXVGA2 gain, in dB. Range: [0, 30] (deprecated)
txvga1 TXVGA1 gain, in dB. Range: [-35, -4] (deprecated)
txvga2 TXVGA2 gain, in dB. Range: [0, 25] (deprecated)
sampling External or internal sampling mode
smb_mode SMB clock port mode of operation
vctcxo_tamer VCTCXO tamer mode. Options: Disabled, 1PPS, 10MHz
xb_gpio Expansion board GPIO values
xb_gpio_dir Expansion board GPIO direction (1=output, 0=input)Yalnızca BladeRF2 parametreleri:
Parameter Description
────────────────────────────────────────────────────────────────────────
clock_sel System clock selection
clock_out Clock output selection
rssi Received signal strength indication
clock_ref Enables (1) or disables (0) the ADF4002 chip
refin_freq ADF4002 reference clock frequency
biastee Enables or disables the bias tee on a given channel
filter RFIC FIR filter selectionkullanım:
versionAna bilgisayar yazılımı ve geçerli aygıt için sürüm bilgilerini yazdırır.
BladeRF'nin FPGA'sına barındırılanx40.rbf adlı bir FPGA görüntüsü yükler:
bladeRF-cli -l hostedx40.rbf
Not: --load-fpga ile yüklenen FPGA görüntüsü, güç kapatıldığında kaybolacaktır.
Firmware.img'yi bladeRF'nin sabit yazılımına yükler:
bladeRF-cli -f firmware.img
Barındırılanx40.rbf adlı FPGA görüntüsünü, açılışta otomatik olarak yükleneceği bladeRF'ye flaşlar:
bladeRF-cli -L hostedx40.rbf
Bu yardımcı program, bladeRF Projesine katkıda bulunanlar tarafından yazılmıştır. Daha fazla bilgi için KATILIMCILAR dosyasına bakın.
Hatalar, https://github.com/nuand/bladerf adresindeki sorun izleyici aracılığıyla bildirilebilir.
Telif Hakkı © 2013-2015 Nuand LLC.
Bu program ücretsiz bir yazılımdır; Özgür Yazılım Vakfı tarafından yayınlanan şekliyle GNU Genel Kamu Lisansı koşulları altında yeniden dağıtabilir ve/veya değiştirebilirsiniz; Lisansın 2. versiyonu veya (sizin tercihinize bağlı olarak) herhangi bir sonraki versiyonu.
Bu program faydalı olması ümidiyle dağıtılmaktadır, ancak HİÇBİR GARANTİ OLMAKSIZIN; SATILABİLİRLİK veya BELİRLİ BİR AMACA UYGUNLUK zımni garantisi bile olmadan. Daha fazla ayrıntı için GNU Genel Kamu Lisansına bakın.
Bu programla birlikte GNU Genel Kamu Lisansının bir kopyasını almış olmanız gerekir; değilse, Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 ABD adresine yazın.
More documentation is available at http://nuand.com/ and https://github.com/nuand/bladerf.