How to get signal-strength from wireless card

Hi all.

I am writing a script to get the signal-strength (RSSI) from the wireless card, but I get different information depending on the Wireless mode.

Can someone explain why am I getting this?

On the other hand the Keyword “as-value” seems not to be working on mode “ap_bridge”

Any thoughts about this?

Running RouterOS version 6.40.8

TIA

Wireless in Mode: station

[admin@MikroTik] > /interface wireless monitor 0
                 status: connected-to-ess
                channel: 2412/20/g(20dBm)
      wireless-protocol: 802.11
                tx-rate: 36Mbps
                rx-rate: 54Mbps
                   ssid: eidpublic
                  bssid: FE:EC:DA:A1:75:C1
        signal-strength: -71dBm
    signal-strength-ch0: -71dBm
            noise-floor: -115dBm
        signal-to-noise: 44dB
                 tx-ccq: 67%
           p-throughput: 17832
         overall-tx-ccq: 67%
  authenticated-clients: 1
       current-distance: 13
                last-ip: 8.8.8.8
    802.1x-port-enabled: yes
    authentication-type: wpa2-psk
             encryption: aes-ccm
       group-encryption: aes-ccm
  management-protection: no
      current-tx-powers: 1Mbps:14(8/14),2Mbps:14(8/14),5.5Mbps:14(8/14),
                         11Mbps:14(8/14),6Mbps:14(8/14),9Mbps:14(8/14),
                         12Mbps:14(8/14),18Mbps:14(8/14),24Mbps:14(8/14),
                         36Mbps:14(8/14),48Mbps:14(8/14),54Mbps:14(8/14)
    notify-external-fdb: no

Wireless in Mode: ap_bridge

[admin@MikroTik] > /interface wireless   monitor 0                 
                 status: running-ap
                channel: 2412/20/g
      wireless-protocol: 802.11
            noise-floor: -116dBm
         overall-tx-ccq: 75%
     registered-clients: 1
  authenticated-clients: 1
       current-distance: 1
      current-tx-powers: 1Mbps:32(26/32),2Mbps:32(26/32),5.5Mbps:32(26/32),11Mbps:32(26/32),
                         6Mbps:32(26/32),9Mbps:32(26/32),12Mbps:32(26/32),18Mbps:32(26/32),
                         24Mbps:32(26/32),36Mbps:31(25/31),48Mbps:30(24/30),54Mbps:29(23/29)
    notify-external-fdb: no

Wireless in Mode: ap_bridge

[admin@MikroTik] > /interface wireless   monitor 0 once as-value 
[admin@MikroTik] >

Signal strength has its meaning for the receiving party. When device is in station mode, it only talks to single peer and signal strength of that peer is a fairly good indication of the two-way connection quality.
When device is in ap mode (any of them), it’s talking to many peers and none of them can be representative for device.
In addition to the above: AP transmits most of time (at least beacon) and all connected (and not-connected) devices can measure signal strength at any time. Stations only transmit from time to time (so AP can assess their signal strength only ocasionally) and they transmit at varying powers (depending on modulation scheme and number of Tx chains) which makes signal strength assessment even less acurate (AP transmits beacon with standard Tx parameters which are constant unless device admin changes some settings)..

Routeros will not print any returned value unless you “:put” it:

# Here "wlan1" is in station mode and "wlan2" in ap-bridge mode
/interface wireless {:put ([monitor wlan1 once as-value ]->"signal-strength")}
-50
/interface wireless {:put [monitor wlan2 once as-value ]}                      
.id=*b;authenticated-clients=2;comment=;notify-external-fdb=false;registered-clients=2;status=running-ap;wireless-protocol=802.11;wmm-enabled=true
[(code]

The goal for the script is to analyse each link RSSI between a couple WDS router nodes.
I assume that to configure WDS all the wireless routers must be in ap-bridge mode.
There is another way of doing this?