1#!/bin/bash 2 3# Reads RSSI in dB from RX1, let's call it "r". 4# Linear fit offset "o" depends on frequency (2.4GHz or 5GHz and FMCOMMS2/3). 5# RSSI(dBm) = -r + o 6# 2.4GHz(ch 6) FMCOMMS2: o = 16.74 7# 2.4GHz(ch 6) FMCOMMS3: o = 17.44 8# 5GHz (ch 44) FMCOMMS2: o = 25.41 9# 5GHz (ch 44) FMCOMMS3: o = 24.58 10 11home_dir=$(pwd) 12 13#set -x 14if test -f "/sys/bus/iio/devices/iio:device0/in_voltage0_rssi"; then 15 cd /sys/bus/iio/devices/iio:device0/ 16else if test -f "/sys/bus/iio/devices/iio:device1/in_voltage0_rssi"; then 17 cd /sys/bus/iio/devices/iio:device1/ 18 else if test -f "/sys/bus/iio/devices/iio:device2/in_voltage0_rssi"; then 19 cd /sys/bus/iio/devices/iio:device2/ 20 else if test -f "/sys/bus/iio/devices/iio:device3/in_voltage0_rssi"; then 21 cd /sys/bus/iio/devices/iio:device3/ 22 else if test -f "/sys/bus/iio/devices/iio:device4/in_voltage0_rssi"; then 23 cd /sys/bus/iio/devices/iio:device4/ 24 else 25 echo "Can not find in_voltage_rf_bandwidth!" 26 echo "Check log to make sure ad9361 driver is loaded!" 27 exit 1 28 fi 29 fi 30 fi 31 fi 32fi 33#set +x 34 35if [ $# -lt 1 ]; then 36 cat in_voltage0_rssi 37else 38 num_read=$1 39 for ((i=0;i<$num_read;i++)) 40 do 41 rssi_str=$(cat in_voltage0_rssi) 42 echo "${rssi_str//dB}" 43 done 44fi 45cd $home_dir 46 47