Cisco 4G rssi sensor issue

I have two 4g routers, one gets graphed correctly in LibreNMS, one doesn’t.

Doesn’t work, keeps hitting sensor 18, but snmpwalk hits sensor 19. SNMP sensor keeps getting deleted and added.

C897VAG-LTE-GA-K9

 /usr/bin/snmpwalk  -v2c -c community 192.0.25.254 1.3.6.1.4.1.9.9.661.1.3.4.1.1 
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.1.19 = INTEGER: -64
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.2.19 = INTEGER: 0
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.3.19 = INTEGER: 12
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.4.19 = Gauge32: 1300
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.5.19 = Gauge32: 0



#### Load disco module wireless ####
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"ap-count"] 0.82ms] 
clients: SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"clients"] 0.66ms] 

SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"quality"] 0.63ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"capacity"] 0.53ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"utilization"] 0.49ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"rate"] 0.48ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"ccq"] 0.51ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"snr"] 0.54ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"ssr"] 0.52ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"mse"] 0.54ms] 
rssi: SNMP[/usr/bin/snmpbulkwalk -v2c -c COMMUNITY -OQUs -m CISCO-WAN-3G-MIB -M /opt/librenms/mibs:/opt/librenms/mibs/cisco udp:HOSTNAME:161 c3gCurrentGsmRssi]

SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"rssi"] 0.72ms] 
-SQL[SELECT `devices`.*, `lat`, `lng` FROM `devices` LEFT JOIN locations ON `devices`.`location`=`locations`.`location` WHERE `device_id` = ? [449] 0.88ms] 
SQL[SELECT * FROM devices_attribs WHERE `device_id` = ? [449] 0.38ms] 
SQL[SELECT * FROM `vrf_lite_cisco` WHERE `device_id` = ? [449] 0.67ms] 
SQL[INSERT IGNORE INTO `eventlog` (`host`,`device_id`,`reference`,`type`,`datetime`,`severity`,`message`,`username`)  VALUES (:host,:device_id,:reference,:type,NOW(),:severity,:message,:username) {"host":449,"device_id":449,"reference":18,"type":"wireless_sensors","severity":3,"message":"Wireless Sensor Deleted: rssi ios 19 RSSI: Chain 19","username":""} 3.11ms] 
SQL[DELETE FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"rssi"] 3.06ms] 

SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"power"] 0.59ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"noise-floor"] 0.53ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"errors"] 0.58ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"error-ratio"] 0.55ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"error-rate"] 0.55ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"frequency"] 0.54ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [449,"distance"] 0.71ms] 

>> Runtime for discovery module 'wireless': 6.0440 seconds with 147224 bytes
>> SNMP: [1/6.02s] MySQL: [23/0.02s] RRD: [0/0.00s]
#### Unload disco module wireless ####

Does work, Cisco 1921 (CISCO1921/K9):

/usr/bin/snmpwalk -v2c -c community 192.0.26.254 1.3.6.1.4.1.9.9.661.1.3.4.1.1 
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.1.19 = INTEGER: -81
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.2.19 = INTEGER: 0
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.3.19 = INTEGER: 12
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.4.19 = Gauge32: 1300
SNMPv2-SMI::enterprises.9.9.661.1.3.4.1.1.5.19 = Gauge32: 0


Modules status: Global+ OS+ Device  
#### Load disco module wireless ####
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"ap-count"] 1.18ms] 
clients: SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"clients"] 0.86ms] 

SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"quality"] 0.86ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"capacity"] 0.97ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"utilization"] 1.08ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"rate"] 0.88ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"ccq"] 0.86ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"snr"] 0.76ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"ssr"] 0.83ms] 
SQL[SELECT * FROM `wireless_sensors` WHERE `device_id`=? AND `sensor_class`=? [308,"mse"] 0.78ms] 
rssi: SNMP[/usr/bin/snmpbulkwalk -v2c -c COMMUNITY -OQUs -m CISCO-WAN-3G-MIB -M /opt/librenms/mibs:/opt/librenms/mibs/cisco udp:HOSTNAME:161 c3gCurrentGsmRssi]
c3gCurrentGsmRssi.18 = -75

SQL[SELECT `devices`.*, `lat`, `lng` FROM `devices` LEFT JOIN locations ON `devices`.`location`=`locations`.`location` WHERE `device_id` = ? [308] 1.7ms] 
SQL[SELECT * FROM devices_attribs WHERE `device_id` = ? [308] 0.66ms] 
SQL[SELECT * FROM `vrf_lite_cisco` WHERE `device_id` = ? [308] 0.65ms] 
SNMP[/usr/bin/snmpget -v2c -c COMMUNITY -OUQnt -M /opt/librenms/mibs:/opt/librenms/mibs/cisco udp:HOSTNAME:161 .1.3.6.1.4.1.9.9.661.1.3.4.1.1.1.18]
.*.*.6*.* = -75

Discovered LibreNMS\Device\WirelessSensor Array
(
    [sensor_class] => rssi
    [device_id] => 308
    [sensor_oids] => Array
        (
            [0] => .1.3.6.1.4.1.9.9.661.1.3.4.1.1.1.18
        )

    [sensor_index] => 18
    [sensor_type] => ios
    [sensor_descr] => RSSI: Chain 18
    [sensor_divisor] => 1
    [sensor_multiplier] => 1
    [sensor_aggregator] => sum
    [sensor_limit] => 
    [sensor_limit_warn] => 
    [sensor_limit_low] => 
    [sensor_limit_low_warn] => 
    [sensor_current] => 
    [entPhysicalIndex] => 
    [entPhysicalIndex_measured] => 
    [access_point_id] => 
)

I did check the ‘LibreNMS/OS/Ios.php’ file, but wasn’t able to figure out how to manually correct that index.

I’m unsure if this is the solution, but after setting the SNMP max repeaters to 5 or lower, LibreNMS do picks up a signal.