ืืื ืืคืงืืื bladeRF-cli ืฉื ืืชื ืืืคืขืื ืืกืคืง ืืืืจืื ืืืื ืื ืฉื OnWorks ืืืืฆืขืืช ืืืช ืืชืื ืืช ืืขืืืื ืืืงืืื ืืช ืืืจืืืืช ืฉืื ื, ืืืื Ubuntu Online, Fedora Online, ืืืืืืืจ ืืงืืื ืฉื Windows ืื ืืืืืืืจ ืืงืืื ืฉื MAC OS
ืชึธืึฐื ึดืืช:
ืฉืึตื
bladeRF-cli - ืืืฉืง ืฉืืจืช ืคืงืืื ืืืื ืขืืจ ืืืืืงื
ืชึทืงืฆึดืืจ
bladeRF-cli
ืชืืืืจ
ืื ืืื ื bladeRF-cli ืืื ืืฉืืจืืช ืืฉืืฉ ืืืืื ืฉื ืงืืฆื ืงืืฉืื, ืืืขืื ืช ืืจืื ืกืืืืืช ืฉื FPGA ืืืืฆืข
ืืฉืืืืช ืืืจืืช ืืืขืจืืช ืืจืืื ืืืืืืจืช ืืชืืื ื nuand bladeRF.
ืืืืืข ื ืืกืฃ ืขื ืืฉืื ืื ืื ืืื ืฉื ืงืืืฆื ืงืืฉืื ืืืจืื ืกืืืืืช FPGA, ืืืงืฉื
ืึฐืึทืงึตืจ http://nuand.com/.
ืืืฉืง ืฉืืจืช ืืคืงืืื bladeRF ืืืื ืขืืจ ืืืืืงื (1.3.1-0.2016.01~rc1-3)
ืืคืฉืจืืืืช
-d, --ืืชืงื
ืืฉืชืืฉ ืืืชืงื bladeRF ืฉืฆืืื.
-f, ---Flash-firmware
ืืชืื ืืช ืงืืืฅ ืืงืืฉืื ืฉืกืืคืง FX3 ืืืืื.
-l, --load-fpga
ืืขื ืืช ืืจื ืืกืืืืืช ืฉื FPGA ืฉืกืืคืง.
-L, --flash-fpga
ืืชืื ืืช ืชืืื ืช ื-FPGA ืฉืกืืคืงื ืืื ืืืืื ืืืขืื ื ืืืืืืืืช. ืืืฉืชืืฉ -L X ืื --flash-fpga X
ืืื ืืืฉืืืช ืืขืื ื ืืืืืืืืช ืฉื FPGA.
-p, --ืึผึฐืึดืืงึธื
ืืคืฉ ืืืฉืืจืื, ืืืคืก ืชืืฆืืืช ืืื ืฆื. ืืฆื ืืืืจื ืฉืืื ื ืืคืก ืืืื
ืืืืืจ ืื ืืื ืืืฉืืจืื ืืืื ืื.
-e, --exec
ืืฆืข ืืช ืคืงืืืช ืืืฆื ืืืื ืืจืืงืืืื ืฉืฆืืื ื. ืืจืืืืช -e ืืืืื ืขืฉืืืื ืืืืืช
ื ึธืงืึผื. ืืคืงืืืืช ืืืืฆืขื ืืกืืจ ืฉืฆืืื.
-s, --ืชึทืกืจึดืื
ืืคืขื ืืช ืืกืงืจืืคื ืฉืกืืคืง.
-i, --ืืื ืืจืืงืืืื
ืืืื ืก ืืืฆื ืืื ืืจืืงืืืื.
--lib-ืืจืกื
ืืืคืก ืืจืกืช libbladeRF ืืฆื.
-v, --ืึถืึถื
ืืืืจ ืืช ืจืืช ืืืืืืืืืช ืฉื libbladeRF. ืืจืืืช, ืืืคืืจืืืช ืืืืืืืืืช ืืืืจืช, ืื:
ืงืจืืื, ืฉืืืื, ืืืืจื,
ืืืืข, ื ืืคืื ืืืืื, ืืืืืื
--ืึดืจึฐืกึธื
ืืืคืก ืืจืกืช CLI ืืฆื.
-h, - ืขืืจื
ืืฆื ืืช ืืงืกื ืืขืืจื ืืื.
--ืขืืจื-ืืื ืืจืืงืืืืืช
ืืืคืก ืืืืข ืขืืจื ืขืืืจ ืื ืืคืงืืืืช ืืืื ืืจืืงืืืืืืช.
ืืขืจืืช:
ืื ืืื ื -d ืืคืฉืจืืช ืืืงืืช ืืืจืืืช ืืคืจื ืืชืงื. ืขืืื ืืชืืขืื bladerf_open()
ืืืืืข ื ืืกืฃ ืขื ืืคืืจืื ืฉื ืืืจืืืช ืื.
ืื -d ืืคืจืืืจ ืืื ื ืืกืืคืง, ืืืืฉืืจ ืืืืื ืืจืืฉืื ืืฉืืฉ ืขืืืจ
ืืคืงืืื ืฉืกืืคืงื, ืื ืชืืคืชื ืืคื ื ืื ืืกื ืืืฆื ืืื ืืจืืงืืืื.
ืืคืงืืืืช ืืืืฆืขืืช ืืกืืจ ืืื:
ืืคืฉืจืืืืช ืฉืืจืช ืืคืงืืื, -e , ืคืงืืืืช ืกืงืจืืคื, ืคืงืืืืช ืืฆื ืืื ืืจืืงืืืื.
ืืขืช ืืคืขืืช 'rx/tx start' ืืกืงืจืืคื ืื ืืจื -e, ืืื ืฉืืคืงืืืืช ืืืื ืื ืืืืืจืืช ืืืชืจ
ืืืืจืื 'rx/tx wait [timeout]' ืืื ืืืืืื ืฉืืชืืื ืืช ืื ืชื ืกื ืืฆืืช
ืืคื ื ืืฉืืืช ืืงืืืื/ืืฉืืืืจ.
ืืื ืืจืืงืืืื ืคืงืืืืช
bladeRF-cli ืชืืื ืืืฆื ืืื ืืจืืงืืืื ืื ืืชื ืืชืกืจืื. ืึธืจืึผืฅ bladeRF-cli --ืืื ืืจืืงืืืื ื
ืืืืื ืก ืืืฆื ืื. ืืงืื"ืืขืืืจ" ืขืืืจ ืจืฉืืื ืฉื ืื ืืคืงืืืืช, ืื "ืืขืืืจ " ืืขืื
ืืืืข ืขื .
ืึฐืึทืจึตื
ืฉืืืืฉ: ืืืื [ืืคืฉืจืืืืช]
ืืฆืข ืืช ืคืขืืืช ืืืื ืืงืื ืืืฉืืจ ืฉืฆืืื.
ืคืขืืืืช ืืืื ืืช:
ยท ืืืื ืืืืืืื ืฉื ืืืคืกื DC ืคื ืืื ืฉื LMS
ยท ืืืื lms [ืืฆื]
ยท ืืืื lms ืืืื ืื [ืขืจื]
ยท ืืืื lms txlpf [ ]
ยท ืืืื lms rxlpf [ ]
ยท ืืืื lms rxvga2 [ ]
ืืฆืข ืืช ืืืืื ืืืืืืืื ืฉืฆืืื, ืื ืืช ืืืื ืื ืืฃ ืืื ืืื ืื ืืกืืคืง. ืืชื
ืขืจืืื ืืกืืคืงืื, ืืื ืืฉืืฉืื ืืืงืื ืืชืืฆืืืช ืฉื ืืืืื ืืืืืืืื
ืชืืืื. ืืฉืชืืฉ ื-lms show ืืื ืืงืจืื ืืืืืคืืก ืืช ืขืจืื ืืืืื ืื ืืืืืื ืฉื LMS.
ืขืืืจ rxvga2, I1 ื-Q1 ืื ืจืืืื ืฉืื 1 I ื-Q ืืืชืืื, ื-I2 ื-Q2 ืื
ืจืืืื ืฉืื 2 I ื-Q.
ยท ืืืื ืคืจืืืจื ืชืืงืื RX ื-TX I/Q DC
ยท ืืืื dc [ ]
ยท ืืืื dc
ืืืื ืืช ืคืจืืืจื ืชืืงืื ืืืืกื DC ืขืืืจ ืืชืืจ ืืืืืืจ ืื ืืืืืื
ืืืืจืืช. ืื ืืกืืคืงืื ืขืจืื I/Q, ืื ืืืืฉืืื ืืฉืืจืืช. cal rxtx ืืื
ืงืืฆืืจ ืฉื cal rx ืืืืจืื cal tx.
ยท ืืืื ืคืจืืืจืื ืืชืืงืื ืืืืื RX ื-TX I/Q
ยท ืืืื iq
ืืืืจ ืืช ืืคืจืืืจืื ืฉื ืฉืืคืืจ IQ ืื ืืืืื ืคืืื ืฉืฆืืื.
ยท ืฆืืจ ืืืืืืช ืคืจืืืจืื ืืชืืงืื RX ืื TX I/Q DC
ยท ืืืื ืฉืืืื dc [ [f_inc]]
ืฆืืจ ืืืชืื ืืืืช ืคืจืืืจืื ืืชืืงืื I/Q ืืกืคืจืืืช ืืขืืืื ืื ืืืืืช,
ืืงืืืฅ ืืฉื _ืึถืจึถื ืึธืฉืึธืจ_ .tbl. f_min ื-f_max ืื ืชืืจืื ืืื ืืืืืื ืืืงืกืืืืืื ื
ืืืืื ืืืืื. f_inc ืืื ืชืืกืคืช ืืชืืจ.
ืืืจืืจืช ืืืื, ืืืืืืช ื ืืฆืจืืช ืขื ืคื ื ืื ืืืื ืืชืืจืื, ืืฉืืืื ืฉื 2 ืืื-ืืจืฅ.
ืืจืืจ
ืฉืืืืฉ: ืืจืืจ
ืื ืงื ืืช ืืืกื.
ืื
ืฉืืืืฉ: echo [arg 1] [arg 2] ... [arg n]
ืื ืื ืืืขืื ืืฉืืจื ืืืฉื.
ืืืืืง
ืฉืืืืฉ: ืืืง
ืืืง ืืืืงื ืฉืฆืืื ืืืกื ืคืืืฉ SPI.
ยท - ืืืง ืืืกื ืืืืง
ยท - ืืกืคืจ ืืืืงื ืืืืืงื ืืืืืงื
flash_backup
ืฉืืืืฉ: flash_backup ( | )
ืืื ื ืชืื ื ืคืืืฉ ืืงืืืฅ ืฉืฆืืื. ืคืงืืื ืื ืืืงืืช ืฉื ืืื ืื ืืจืืข
ืืืขืื ืื. ืืคืขืืช ืฉื ื ืืืืขืื ืื ืืืืืฆืช ืืืจื ืืื ืืฉืืืืฉ ืื ืืคืืชืื.
ืคืจืืืจืื:
ยท - ืกืื ืืืืืื.
ืื ืืืืจ ืืช ืขืจืื ืืืชืืืช ืืืืืจื ืืืชืืืืื ืขื ืกืื ืืกืื ืฉื ืืืจ.
ืืคืฉืจืืืืช ืชืงืคืืช ืื:
ืชืืืืจ ืืคืฉืจืืช
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโ
cal ื ืชืื ื ืืืื
fw ืงืืฉืื
fpga40 ืืื ื ืชืื ืื ืืืจื ืกืืืืืช ืขืืืจ 40 kLE FPGA
fpga115 ืืื ื ืชืื ืื ืืืจื ืกืืืืืช ืขืืืจ 115 kLE FPGA
ยท - ืืชืืืช ืื ืชืื ืื ืืืืืื. ืืฉ ืืืืืง ืืืืฉืจ ืืืืง.
ยท - ืืืจื ืืืืืจ ืืืืืื. ืืฉ ืืืืืง ืืืืฉืจ ืืืืง.
ืืขืจื: ืืืฉืจ ืืกืืคืงืื ืืชืืืช ืืืืจื, ืกืื ืืชืืื ื ืืืื ืืจืืจืช ืืืืื ืืืืืื.
ืืืืืืืช:
ยท flash_backup cal.bin cal
ืืืื ืืช ืืืืจ ื ืชืื ื ืืืืื.
ยท flash_backup cal_raw.bin 0x30000 0x10000
ืืืื ืืช ืืืืจ ืืืืื ืืชืืื ืช ื ืชืื ืื ืืืืืืื.
flash_image
ืฉืืืืฉ: flash_image [ืืคืฉืจืืืืช ืคืื]
ืืืคืก ืืื ื ืชืื ืื ืฉื ืชืืื ืช ืคืืืฉ ืื ืฆืืจ ืชืืื ืช ืคืืืฉ ืืืฉื. ืืืฉืจ ืืกืืคืงืื ืขื ืืฉื
ืฉื ืงืืืฅ ืชืืื ืช ืคืืืฉ ืืืจืืืื ื ืืืืื, ืคืงืืื ืื ืชืืคืืก ืืช ืชืืื ืืืื ื ืชืื ืื
ืฉื ืืชืืื ื.
ื ืืชื ืืืฉืชืืฉ ืืืคืฉืจืืืืช ืืืืืช ืืืฆืืจืช ืชืืื ืช ืคืืืฉ ืืืฉื.
ยท ื ืชืื ืื=
ืงืืืฅ ืืืืื ื ืชืื ืื ืืืืกืื ืืชืืื ื.
ยท ืืชืืืช=
ืืชืืืช ืคืืืฉ. ืืจืืจืช ืืืืื ืชืืืื ืืคืจืืืจ ืืกืื.
ยท ืกืื=
ืกืื ืชืืื ืช ืืืืง. ืืจืืจืช ืืืืื ื-raw.
ืืคืฉืจืืืืช ืชืงืคืืช ืื:
ืชืืืืจ ืืคืฉืจืืช
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโ
cal ื ืชืื ื ืืืื
fw ืงืืฉืื
fpga40 ืืื ื ืชืื ืื ืืืจื ืกืืืืืช ืขืืืจ 40 kLE FPGA
fpga115 ืืื ื ืชืื ืื ืืืจื ืกืืืืืช ืขืืืจ 115 kLE FPGA
ื ืชืื ืื ืืืืืืื. ืืคืจืืืจืื ืฉื ืืืชืืืช ืืืืืจื ืืืืืื ืืืืืช
ืืกืืคืง ืื ืกืื ืื ื ืืืจ.
ยท ืกืืจืชื=
# ืกืืจืชื ืืืืกืื ืืชืืื ื. ืืจืืจืช ืืืืื ืืื ืืคืกืื.
flash_init_cal
ืฉืืืืฉ: flash_init_cal [ ]
ืฆืืจ ืืืชืื ืืืืจ ื ืชืื ื ืืืื ืืืฉ ืืืืฉืืจ ืฉื ืคืชื ืืขืช, ืื ื- a
ืงืึนืึถืฅ. ืืงืคื ืืืืืช ื ืชืื ื ืืืื ืืคื ื ืืคืขืืช ืคืงืืื ืื. (ืจืื ืืช
ืคืงืืืช flash_backup.)
ยท
40 ืื 115, ืชืืื ืืืื ืืืืฉืืจ.
ยท
ืขืจื ืืืชืื VCTCXO/DAC (0x0-0xffff)
ยท
ืงืืืฅ ืืืชืืืช ื ืชืื ื ืืืื. ืืืฉืจ ืืจืืืื ื ืื ืืกืืคืง, ืื ืืืื ื ืชืื ืื
ื ืืชื ืืคืืืฉ ืฉื ืืืืฉืืจ.
flash_restore
ืฉืืืืฉ: flash_restore [ ]
ืฉืืืจ ื ืชืื ื ืคืืืฉ ืืงืืืฅ, ืืืคืฆืืื ืื ืืขืงืืฃ ืขืจืืื ืืืื ื ืชืื ืื ืฉื ืืชืืื ื.
ยท
ืืจืืจืช ืืืืื ืฉื ืืืชืืืช ืฉืฆืืื ื ืืงืืืฅ ืชืืื ืช ืืคืืืฉ ืฉืกืืคืง.
ยท
ืืจืืจืช ืืืืื ืฉื ืืืจื ืื ืชืื ืื ืืงืืืฅ ืืชืืื ื ืฉืกืืคืง.
fw_log
ืฉืืืืฉ: fw_log [ืฉื ืงืืืฅ]
ืงืจื ืืช ืืชืืื ืฉื ืืืื ืืงืืฉืื ืฉื ืืืืฉืืจ ืืืชืื ืืืชื ืืงืืืฅ ืฉืฆืืื. ืื ืื
ืฉื ืืงืืืฅ ืืฆืืื, ืชืืื ืืืืื ื ืืชื ื-stdout.
ืืขืืืจ
ืฉืืืืฉ: ืขืืจื [ ]
ืืกืคืง ืขืืจื ืืืจืืืช, ืืื ืื, ืืื ืคืงืืื.
ืืืืข
ืฉืืืืฉ: ืืืืข
ืืืคืืก ืืช ืืืืืข ืืื ืขื ืืืฉืืจ ืฉื ืคืชื:
ยท ืืกืคืจ ืกืืืืจื
ยท ืขืจื ืืืื VCTCXO DAC
ยท ืืืื FPGA
ยท ืืื ื-FPGA ื ืืขื ืื ืื
ยท ืืืืืืืก USB, ืืชืืืช ืืืืืจืืช
ยท Backend (ืืฆืืื ืืืืื ืงืื ืืืฉืง ืืืฉืืจ ื ืขืฉื ืฉืืืืฉ.)
ยท ืืกืคืจ ืืืคืข
ืืงืคืืฅ_ืืืชืืื
ืฉืืืืฉ: jump_to_boot
ื ืงื ืืืืช ืืชืืื ืฉื FW ื-Flash ืืงืคืืฅ ืืืืขื ืืืชืืื ืฉื FX3.
ืืืืฉืืจ ืืืฉืื ืืืชืื ืืชืื ืืืขื ืืืชืืื FX3 ืืืืจื ืืืืืจื ืืคืขืื ืขื ืฉืืื ืืืฉ
ืืงืืฉืื ื ืืชืืช ืืืืฉืืจ.
ืึดืืขืึนื
ืฉืืืืฉ: ืขืืืก
ืืขื ืืจื ืกืืืืืช FPGA ืื ืชืื ืช ืืช ืืืืง SPI ืฉื ื-FX3.
xb
ืฉืืืืฉ: xb [ืคืจืืืจืื]
ืืคืขื ืื ืืืืจ ืืื ืืจืืื.
ืขืจืืื ืืืงืืื ืขืืืจ board_model:
ยท ืฉืชืืื
ืืื ืืจืืื XB-100 GPIO
ยท ืฉืชืืื
ืืื ืืจืืืช ืืืืจ XB-200 LF/MF/HF/VHF
ืคืงืืืืช ืืฉื ื ื ืคืืฆืืช:
ยท ืืคืฉืจ
ืืคืฉืจ ืืช ืืื ืืืจืืื XB-100 ืื XB-200.
ืคืงืืืืช ืืฉื ื XB-200:
ยท ืืกื ื [rx|tx] [50|144|222|ืืืชืื ืืืฉืืช|auto_1db|auto_3db]
ืืืืจ ืืืกื ื RX ืื TX ืฉืฆืืื ืืืื XB-200. ืืืื ืชืืืืจืื ืฉื
ืื ืืืช ืืืคืฉืจืืืืช ืืกืื ืื.
ยท ืฉืชืืื
ืืืจ ืืืกื ื 50-54 ืืื-ืืจืฅ (ืคืก 6 ืืืจ).
ยท ืฉืชืืื
ืืืจ ืืืกื ื 144-148 ืืื-ืืจืฅ (ืคืก 2 ืืืจ).
ยท ืฉืชืืื
ืืืจ ืืืกื ื 222-225 ืืื-ืืจืฅ (ืคืก 1.25 ืืืจ). ืืืืคื ืืฆืืืืชื,
ืืคืฉืจืืช ืืกืื ืื ืืื ืืื ืืืขืฉื ืืขื ืจืืื ืืืชืจ, ืืืกื
206 ืืื-ืืจืฅ - 235 ืืื-ืืจืฅ.
ยท ืืืืชืื ืืืฉืืช
ืืืืจ ืืช ื ืชืื ืืกืื ืื ืืืืชืื ืืืฉืืช. ืืืฉืชืืฉ ืฆืจืื ืืืืจ ืืกื ื
ืืืืจื ืืืืืจื FILT ื-FILT-ANT ืืืชืืืืื ืืขืช ืืฉืืืืฉ
ืืคืฉืจืืช ืื. ืืืืืคืื ื ืืชื ืืืงืคืืฅ ืืช ื-FILT ื-FILT-ANT
ืืืืืจืื ืืื ืืืฉืื "ืืื ืืกื ื" ืืงืืื. (ืขื ืืืช, ืืื
_ืืืื_ ืืืืืฉ ืืืฉืืืืจืื.)
ยท auto_1db
ืืืืจ ืืืืืืืืช ืืืืช ืืืืคืฉืจืืืืช ืืขืื ืืืชืืกืก ืขื ืชืืืจืืช
ืื ืงืืืืช 1dB ืฉื ืืืกื ื ืื. ืื ืชืื ืืืืชืื ืืืฉืืช ืืฉืืฉ ืืืงืจืื
ืฉืืื ื ืืฉืืืืื ืืืกื ื ืื ืืืืืืืื.
ยท auto_3db
ืืืืจ ืืืืืืืืช ืืืืช ืืืืคืฉืจืืืืช ืืขืื ืืืชืืกืก ืขื ืชืืืจืืช
ืื ืงืืืืช 3dB ืฉื ืืืกื ื ืื. ืื ืชืื ืืืืชืื ืืืฉืืช ืืฉืืฉ ืืืงืจืื
ืฉืืื ื ืืฉืืืืื ืืืกื ื ืื ืืืืืืืื.
ืืืืืืืช:
ยท ืืคืขื xb 200
ืืคืขืื ืืืืืืจ ืืช ืืื ืืืจืืื ืฉื ืืืืืจ XB-200.
ยท ืืกื ื xb 200 rx 144
ืืืืจ ืืช ืืกื ื ืืงืืื ืฉื 144-148 ืืื-ืืจืฅ ืืืื ืืืจืืื ืฉื ืืืืืจ XB-200.
mimo
ืฉืืืืฉ: mimo [ืืืกืืจ | ืขึถืึถื]
ืฉื ื ืืช ืคืขืืืช ื-MIMO ืฉื ืืืืฉืืจ.
ืืคืชืื
ืฉืืืืฉ: ืคืชื [ืืืื ืืืฉืืจ]
ืคืชื ืืช ืืืชืงื ืฉืฆืืื ืืฉืืืืฉ ืขื ืคืงืืืืช ืขืืงืืืช. ืื ืืืฉืืจ ืฉื ืคืชื ืืขืืจ
ืืืื ืกืืืจ.
ืืฆืืจื ืืืืืืช ืฉื ืืืจืืืช ืืืื ืืืืฉืืจ ืืื:
:[ืืืฉืืจ= : ] [ืืืคืข= ] [ืกืืจืชื= ]
ืขืืื ืืชืืขืื bladerf_open() ื-libbladeRF ืขืืืจ ืืคืจื ืืืืฉืืจ ืืืื
ืคืืจืื.
ืืฆืฆื
ืฉืืืืฉ: ืืฆืฆื [ืืกืคืจ_ืืชืืืืช]
ืคืงืืืช ืืืฆืฆื ืืืืื ืืงืจืื ืื ืืื ืืืืืฉืืจืื ืืชืืืืื ืขื ื-FPGA ืืืืื ืืช
ืืงืื ืืฉืืจ LMS6002D, VCTCXO trim DAC ืื ืฉืื ืืืืื ืืฉืขืื Si5338.
ืื ืืกืืคืงืช num_addresses, ืืืชืืืช ืืืืืจืช ื-1 ืืืฆืฆื ื ืืกืคืช ืืื
ืืืฆืข ืขืืืจ ืื ืื ืืจืื ืืชืืืืช.
ืืืืื ืืชืืืืช ืืืงืืื:
ืืืื ืืชืืืช ืืืฉืืจ
โโโโโโโโโโโโโโโโโโโโโโโ
dac 0 ืขื 255
lms 0 ืขื 127
si 0 ืขื 255
ืืืืื:
ยท ืืฆืืฆื ืกื...
ืืชืงืืข
ืฉืืืืฉ: ืืชืงืืข
ืืคืงืืื poke ืืืืื ืืืชืื ืื ืืื ืืืืืฉืืจืื ืืชืืืืื ืขื ื-FPGA ืืืืื ืืช
ืืงืื ืืฉืืจ LMS6002D, VCTCXO trim DAC ืื ืฉืื ืืืืื ืืฉืขืื Si5338.
ืืืืื ืืชืืืืช ืืืงืืื:
ืืืื ืืชืืืช ืืืฉืืจ
โโโโโโโโโโโโโโโโโโโโโโโ
dac 0 ืขื 255
lms 0 ืขื 127
si 0 ืขื 255
ืืืืื:
ยท ืืชืงืืข ืืืก...
ืืืคืกื
ืฉืืืืฉ: ืืืคืก [ืคืจืืืจ]
ืืคืงืืืช ืืืืคืกื ื ืืจืฉ ืคืจืืืจ ืืื ืืืืคืืก. ืคืจืืืจืื ืืืื ืื ืืคืืจืืื ืืืื. ืื
ืื ืฆืืื ืคืจืืืจ, ืื ืืคืจืืืจืื ืืืืคืกืื.
ืชืืืืจ ืคืจืืืจ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโ
ืจืืื ืคืก ืืืืจืืช ืจืืื ืคืก
ืชืืจ ืืืืจืืช ืชืืจ
ืืฆื gpio FX3 <-> FPGA GPIO
Loopback ืืืืจืืช Loopback
lnagain ืืืืจืช ืจืืื ืฉื RX LNA, ื-dB
rx_mux FPGA RX FIFO ืืืืจืช mux
rxvga1 ืืืืจืช ืจืืื ืฉื RXVGA1, ื-dB
rxvga2 ืืืืจืช ืจืืื ืฉื RXVGA2, ื-dB
txvga1 ืืืืจืช ืจืืื ืฉื TXVGA1, ื-dB
txvga2 ืืืืจืช ืจืืื ืฉื TXVGA2, ื-dB
ืืืืื ืืฆื ืืืืื ืืืฆืื ื ืื ืคื ืืื
samplerate ืืืืจืืช ืืืืื
trimdac VCTCXO ืืืชืื ืืืืจืืช DAC
vctcxo_tamer ืืฆื ืืืืืฃ VCTCXO ื ืืืื.
ืขืจืื GPIO ืฉื ืืื ืืจืืื ืฉื xb_gpio
xb_gpio_dir ืืืืื GPIO ืฉื ืืื ืืจืืื (1=ืคืื, 0=ืงืื)
ืืืืงื
ืฉืืืืฉ: ืืืืงื [ืงืคืื ืืช]
ืืคืฉ ืืืฉืืจ bladeRF ืืืืืจ ืืืืคืืก ืจืฉืืื ืฉื ืชืืฆืืืช.
ืืืื ืืฆืืื ืงืคืื ืืช, ืืืขืืจ ืืืฉืืจืื ืืืื ืื ืื ื ืืฉื ืืฉืืืื.
ืืืฉืจ ืชืกืืคืง ืืช ืืืืขืื ืืืืืืจ ืืืืคืฆืืื ืื, ืคืงืืื ืื ืชืืคื ืืืฆื ืฉืื ืื
ืืชืงื ืื ื ืืฆืืื ืืฉืืืื, ืื ืฉืืืจื ืืกืงืจืืคืืื ืื ืืจืฉืืืืช ืฉื ืคืงืืืืช ืืืกืืคืงืืช ืืืืฆืขืืช ื--e
ืืจืืืื ื ืฉืืจืช ืืคืงืืื ืืืกืชืืื ืืืืคื ืืืืื.
ืืืคืกืืง
ืฉืืืืฉ: ืฆื
ืฆื ืื-CLI.
ืืฉืืืจ
ืฉืืืืฉ: ืืฉืืืจ [ ]
ืืขื ืงืืฉืื ืขื ืืืฉืืจ ืืคืืขื ืืืฆื ืืืขื ืืชืืื, ืื ืจืฉืื ืืช ืื ืืืืฉืืจืื ืฉื ืืฆืืื ืืขืช
ืืฆื ืืืขื ืืชืืื.
ืืื ืืจืืืื ืืื, ืคืงืืื ืื ืืคืจืืช ืืช ืืคืืง ื-USB ืืืืชืืืช ืขืืืจ ืืชืงื ืื ืืืืกืกื FX3
ืคืืขื ืืืฆื ืืืขื ืืชืืื.
ืืืฉืจ ืืกืืคืงืื ืืคืืง, ืืชืืืช ืื ืชืื ืืงืืืฅ ืงืืฉืื, ืืืชืงื ืฉืฆืืื ืืืื
ื ืืขื ืขื ืืืชืื ืืืคืขืื ืืช ืืงืืฉืื ืฉืกืืคืงื.
ืืจืื ืืืงืจืื, ืืืืจ ืืขืื ืช ืงืืฉืื ืืืฆืืื ื-RAM ืฉื ืืืืฉืืจ, ืืืฉืชืืฉืื ืฆืจืืืื
ืคืชื ืืช ืืืืฉืืจ ืขื ืืคืงืืื "ืคืชื", ืืืชืื ืืช ืืงืืฉืื ืืื ืืืืื ืืืืฆืขืืช
"ืืขื fx3 "
ืึธืจืึผืฅ
ืฉืืืืฉ: ืจืืฆื
ืืคืขื ืืช ืืกืงืจืืคื ืฉืกืืคืง.
rx
ืฉืืืืฉ: rx
ืงืื ืืืืืืช IQ ืืืชืื ืืืชื ืืงืืืฅ ืฉืฆืืื. ืืงืืื ืืืืงืจืช ื
ืืืืืจ ืขื ืืื ืืื ืืืืคืฉืจืืืืช ืืืืืช:
ืชืืืืจ ืืคืงืืื
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโ
ืืชืื ืืชืื ืืงืื ืืืืืืืช
ืขืฆืืจ ืืคืกืง ืืงืื ืืืืืืืช
ืืืชื ืืืชื ืืกืืื ืฉืืืืจ ืืืืืื, ืื ืขื ื
ืืฉื ืืืื ืฉืฆืืื ืืืืฃ
config ืืืืจ ืงืืืื ืืืืืื. ืื ืืื ืคืจืืืจืื
ืืชื ืื, ืืคืจืืืจืื ืื ืืืืืื ืืืืคืกืื.
ืืคืขืืช rx ืืื ืคืงืืืืช ื ืืกืคืืช ืืื ืงืืฆืืจ ืชืงืื ืขืืืจ rx config.
ืืคืงืืื wait ืืืงืืช ืคืจืืืจ ืคืกืง ืืื ืืืคืฆืืื ืื. ืคืจืืืจ ืื ืืืืืจ ืืืจืืจืช ืืืื ืืืืืืืช ืฉื
ืืืคืืืช ืฉื ืืืช (ms). ื ืืชื ืืฆืืื ืืช ืืืืืช ืืืื ืืงืฆืื ืืืืฆืขืืช ืืกืืืืืช ms ืื s. ืื ืื
ืืคืจืืืจ ืืื ื ืืกืืคืง, ืืคืงืืื ืชืืื ืขื ืืกืืื ืืงืืื ืื Ctrl-C
ื ืืืฅ.
ืคืจืืืจื ืชืฆืืจื ืืืืฉืื ืืช ืืฆืืจื param=value, ืื ืืชื ืืฆืืื ืืืชื ื- ืื
ืงืจืืืืช ืชืฆืืจืช rx ืืจืืืืช. ืืืื ืจืฉืืื ืฉื ืคืจืืืจืื ืืืื ืื.
ืชืืืืจ ืคืจืืืจ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโ
n ืืกืคืจ ืืืืืืช ืืงืื. 0 = ืืื ืค.
ืฉื ืงืืืฅ ืืืชืื ืืืืืืช ืฉืืชืงืืื
ืคืืจืื ืคืืจืื ืงืืืฅ ืคืื. ืืื ืืืืืื:
csv: CSV ืฉื ืืืืืืืช SC16 Q11
ืกื: ืืืืืืช DAC ืืืืืืืช ืฉื SC16 Q11
samples ืืกืคืจ ืืืืืืืช ืืื ืืืืจ ืืฉืืืืฉ ื-
ืืจื ืืกืื ืืจืื ื. ืืืื ืืืืืช ืืชืืืง ื-1024 ื
>= 1024.
ืืืืจืื ืืกืคืจ ืืืืจื ืืืื ืืฉืืืืฉ ืื-ืกืื ืืจืื ื
ืืจื. ืืขืจื ืืืื ืืืื ืืื 4.
xfers ืืกืคืจ ืืขืืจืืช ืื ืืื ืืช ืืื ืืืคืฉืจ ืืช
ืืจื ืืกืื ืืจืื ื ืืฉืืืืฉ. ืื ืฆืจืื ืืืืืช ืคืืืช
ืืืฉืจ ืืคืจืืืจ buffers.
ืคืกืง ืืื ืฉื ืืจื ื ืชืื ืื. ืืื ืกืืืืช, ืืจืืจืช ืืืืื
ืืืืืื ืืื MS. ืขืจื ืืจืืจืช ืืืืื ืืื 1000 ืฉื ืืืช (ืฉื ืืืช).
ืกืืืืืช ืืืงืืืช ืื ms ื-s.
ืืืืื:
ยท rx config file=/tmp/data.bin format=bin n=10K
ืงืื (10240 = 10 * 1024) ืืืืืืืช, ืืชืื ืืืชื ืื /tmp/data.bin ื-DAC ืืืื ืืจื
ืคืืจืื.
ืืขืจืืช:
ยท ืืคืจืืืจืื n, samples, buffers ื-xfers ืชืืืืื ืืกืืืืช K, M ื-G, ืืฉืจ
ืื ืืคืืืืช ืฉื 1024.
ยท ืขืฆืืจืช rx ืืืืจืื ืืชืืื rx ืชืืจืื ืืงืืฆืืฅ ืฉื ืงืืืฅ ืืืืืืืืช. ืื
ืื ืื ืจืฆืื, ืืงืคื ืืืคืขืื ืืช rx config ืืื ืืืืืืจ ืงืืืฅ ืืืจ ืืคื ื ืืคืขืื ืืืืฉ ืฉื
ืืจื rx.
ยท ืขืืืจ ืงืฆืื ืืืืื ืืืืืื ืืืชืจ, ืืืืืฅ ืืืฉืชืืฉ ืืคืืจืื ืืคืื ืืืื ืืจื, ืื-
ืงืืืฅ ืืคืื ืืืืชื ื-RAM (ืืืฉื / Tmp, / dev / shm), ืื ืืืงืื ืืืคืฉืจ. ืืืืืืื ืืืชืจ
ืืืื ืืงืฆืื ืืืืื ืืืืืื ืืืชืจ, ืฉืงืื ืืืฉืชืืฉ ื-SSD ืืืงืื ื-HDD.
tx
ืฉืืืืฉ: tx
ืงืจื ืืืืืืืช IQ ืืืงืืืฅ ืฉืฆืืื ืืฉืื ืืืชื. ืืืืืืืื ืืืืงืจืช ื
ืืืืืจ ืขื ืืื ืืื ืืืืคืฉืจืืืืช ืืืืืช:
ืชืืืืจ ืืคืงืืื
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโ
ืืชืื ืืชืื ืืฉืืจ ืืืืืืืช
ืขืฆืืจ ืืคืกืง ืืฉืืจ ืืืืืืช
ืืืชื ืืืชื ืืกืืื ืฉืืืืจ ืืืืืื, ืื ืขื ื
ืืฉื ืืืื ืฉืฆืืื ืืืืฃ
config ืืืืจ ืฉืืืืจ ืืืืืื. ืื ืืื ืคืจืืืจืื
ืืชื ืื, ืืคืจืืืจืื ืื ืืืืืื ืืืืคืกืื.
ืืคืขืืช tx ืืื ืคืงืืืืช ื ืืกืคืืช ืืื ืงืืฆืืจ ืืืงื ืขืืืจ tx config.
ืืคืงืืื wait ืืืงืืช ืคืจืืืจ ืคืกืง ืืื ืืืคืฆืืื ืื. ืคืจืืืจ ืื ืืืืืจ ืืืจืืจืช ืืืื ืืืืืืืช ืฉื
ืืืคืืืช ืฉื ืืืช (ms). ื ืืชื ืืฆืืื ืืช ืืืืืช ืืืื ืืงืฆืื ืืืืฆืขืืช ืืกืืืืืช ms ืื s. ืื ืื
ืคืจืืืจ ืื ืืกืืคืง, ืืคืงืืื ืชืืื ืขื ืืฉืืืช ืืฉืืืืจ ืื
Ctrl-C ื ืืืฅ.
ืคืจืืืจื ืชืฆืืจื ืืืืฉืื ืืช ืืฆืืจื param=value, ืื ืืชื ืืฆืืื ืืืชื ื- ืื
ืงืจืืืืช ืชืฆืืจืช TX ืืจืืืืช. ืืืื ืจืฉืืื ืฉื ืคืจืืืจืื ืืืื ืื.
ืชืืืืจ ืคืจืืืจ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโ
ืฉื ืงืืืฅ ืืงืจืืืช ืืืืืืืช
ืคืืจืื ืคืืจืื ืงืืืฅ ืงืื. ืืื ืืืืืื:
csv: CSV ืฉื ืืืืืืืช SC16 Q11 ([-2048, 2047])
bin: ืืืืืืช DAC Raw SC16 Q11 ([-2048, 2047])
ืืืืจ ืืกืคืจ ืืคืขืืื ืฉืชืืื ืืงืืืฅ ืฆืจืื ืืืืืช
ืืืขืืจ. 0 ืืจืื ืขื ืืืจื ืขื ืืืคืกืงื.
delay ืืกืคืจ ืืืืงืจื-ืฉื ืืืช ืฉืืฉ ืืืฉืืืช ืืื ืืื
ืฉืืืืจ ืืืืจ ืฉื ืชืืื ืืงืืืฅ. 0 ืื ืืจืื ืขื ืขืืืื.
samples ืืกืคืจ ืืืืืืืช ืืื ืืืืจ ืืฉืืืืฉ ื-
ืืจื ืืกืื ืืจืื ื. ืืืื ืืืืืช ืืชืืืง ื-1024 ื
>= 1024.
ืืืืจืื ืืกืคืจ ืืืืจื ืืืื ืืฉืืืืฉ ืื-ืกืื ืืจืื ื
ืืจื. ืืขืจื ืืืื ืืืื ืืื 4.
xfers ืืกืคืจ ืืขืืจืืช ืื ืืื ืืช ืืื ืืืคืฉืจ ืืช
ืืจื ืืกืื ืืจืื ื ืืฉืืืืฉ. ืื ืฆืจืื ืืืืืช < ื
ืคืจืืืจ buffers.
ืคืกืง ืืื ืฉื ืืจื ื ืชืื ืื. ืืื ืกืืืืช, ืืจืืจืช ืืืืื
ืืืืืื ืืื MS. ืขืจื ืืจืืจืช ืืืืื ืืื 1000 ืฉื ืืืช (ืฉื ืืืช).
ืกืืืืืช ืืืงืืืช ืื 'ms' ื-'s'.
ืืืืื:
ยท tx config file=data.bin format=bin repeat=2 delay=250000
ืืขืืจืช ืืชืืื ืฉื data.bin ืคืขืืืื, ืขื ืืฉืืื ืฉื ~250ms ืืื
ืฉืืืืจืื.
ืืขืจืืช:
ยท ืืคืจืืืจืื n, samples, buffers ื-xfers ืชืืืืื ืืกืืืืช K, M ื-G, ืืฉืจ
ืื ืืคืืืืช ืฉื 1024.
ยท ืืงืฆืื ืืืืื ืืืืืื ืืืชืจ, ืืืืืฅ ืฉืงืืืฅ ืืงืื ืืืืืกื ื-RAM (ืืืฉื / Tmp,
/ dev / shm) ืื ื-SSD, ืืื ื-HDD.
ยท ืืขืช ืืชื ื ืชืื ื CSV, ืคืงืืื ืื ืชืืืจ ืืืชื ืชืืืื ืืคืืจืื ืืื ืืจื, ืืืืืกื
ืืงืืืฅ ืืกืคืจืืืช ืืขืืืื ืื ืืืืืช. ืืืืื ืชืืืื ืื, ืขืจืืื ืืืืฅ ืืืืื
ืืืื ืืืืืง.
ยท ืืขืช ืฉืืืืฉ ืืคืืจืื ืืื ืืจื, ืืืฉืชืืฉ ืืืจืื ืืืืื ืฉืื ืชืื ืื ืฉืกืืคืงื
ืืขืจืืื ื ืืฆืืื ืืืืื ืืืืชืจ. ืชื ืื ืืืงืื ืื ืืงื ืขื ืืฆืืจื ืืื
ืชืืื ืืช ืืืืฆืืข ืืืืงืืช ืืืื ืืืชืงืฉืจืืืืช ืจืืืฉืืช ืืืื.
ืกื
ืฉืืืืฉ: ืกื
ืืคืงืืื set ืืืงืืช ืคืจืืืจ ืืืกืคืจ ืฉืจืืจืืชื ืฉื ืืจืืืื ืืื ืขืืืจ ืืืชื ืคืจื
ืคึผึธืจึธืึถืึถืจ. ืืคืจืืืจ ืืื ืืื ื:
ืชืืืืจ ืคืจืืืจ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโ
ืจืืื ืคืก ืืืืจืืช ืจืืื ืคืก
ืชืืจ ืืืืจืืช ืชืืจ
ืืฆื gpio FX3 <-> FPGA GPIO
Loopback ืืืืจืืช Loopback. ืืคืขื 'ืืืืจ ืืืืื ืืืจื' ืืืฆืื ืจืฉืืื.
lnagain ืืืืจืช ืจืืื ืฉื RX LNA, ื-dB. ืขืจืืื: 0, 3, 6
rxvga1 ืืืืจืช ืจืืื ืฉื RXVGA1, ื-dB. ืืืื: [5, 30]
ืืฆื ืงืื rx_mux FPGA RX FIFO mux. ืืืคืฉืจืืืืช ืื:
BASEBAND_LMS, 12BIT_COUNTER, 32BIT_COUNTER,
DIGITAL_LOOPBACK
rxvga1 ืืืืจืช ืจืืื ืฉื RXVGA1, ื-dB. ืืืื: [5, 30]
rxvga2 ืืืืจืช ืจืืื ืฉื RXVGA2, ื-dB. ืืืื: [0, 30]
txvga1 ืืืืจืช ืจืืื ืฉื TXVGA1, ื-dB. ืืืื: [-35, -4]
txvga2 ืืืืจืช ืจืืื ืฉื TXVGA2, ื-dB. ืืืื: [0, 25]
ืืืืื ืืฆื ืืืืื ืืืฆืื ื ืื ืคื ืืื
samplerate ืืืืจืืช ืงืฆื ืืืืื
ืืืืจืืช trimdac VCTCXO ืืืชืื DAC
vctcxo_tamer ืืฆื ืืืืฃ VCTCXO. ืืคืฉืจืืืืช: ืืืฉืืช, 1PPS, 10MHz
ืขืจืื GPIO ืฉื ืืื ืืจืืื ืฉื xb_gpio
xb_gpio_dir ืืืืื GPIO ืฉื ืืื ืืจืืื (1=ืคืื, 0=ืงืื)
ืืจืกื
ืฉืืืืฉ: ืืจืกื
ืืืคืืก ืืืืข ืขื ืืจืกื ืขืืืจ ืชืืื ืช ืืืจื ืืืืืฉืืจ ืื ืืืื.
ืืืืืืืช
$ bladeRF-cli -l hostedx40.rbf
ืืืขื ืชืืื ืช FPGA ืืฉื hostedx40.rbf ืขื ื-FPGA ืฉื bladeRF.
ืืขืจืืช: ืชืืื ืช FPGA ืฉื ืืขื ืช ืขื --load-fpga ืชืืื ืืขืช ืืืืื.
$ bladeRF-cli -f firmware.img
ืืืืื firmware.img ืขื ืืงืืฉืื ืฉื bladeRF.
$ bladeRF-cli -L hostedx40.rbf
ืืืืง ืืช ืชืืื ืช ื-FPGA ืืฉื hostedx40.rbf ืขื ืืื bladeRF, ืืืื ืฉืืื ืชืืื
ื ืืขื ืืืืืืืืช ืขื ืืคืขืื.
ืืฉืชืืฉ ื-bladeRF-cli ืืืื ืืจื ื ืืืืฆืขืืช ืฉืืจืืชื onworks.net