Hi,
I have a problem how to implement SNMP protocol in EPICS.
I want to keep MIB file somewhere in the module, not in the /usr/share/snmp directory.
If I run snmpwalk I can:
snmpwalk -v2c -M +/vagrant/modules/e3-M300_GPS/M300_GPS/M300_GPSApp/MBG-SNMP-MIB -m All -c comm 192.168.XXX.XXX MBG-SNMP-LTNG-MIB::mbgLtNgRefclockState
and I get output:
MBG-SNMP-LTNG-MIB::mbgLtNgRefclockState.1 = INTEGER: synchronized(1)
How should I define my record in Db?
I did it like that:
record(longin, "$(P)$(R)RefclockState"){
field(DESC, "Status of GPS refclock")
field(DTYP, "Snmp")
field(SCAN, "5 second")
field(INP, "@$(HOST) $(COMMUNITY) $(MIB)::mbgLtNgRefclockState Integer: 10")
}
Where:
$(HOST) = 192.168.XXX.XXX – this is of course fake address
$(COMMUNITY) = -c comm
$(MIB) = MBG-SNMP-LTNG-MIB
But I got error:
devSnmp: error parsing '192.168.XXX.XXX -c comm MBG-SNMP-LTNG-MIB::mbgLtNgRefclockState Integer: 10'
format is 'host community oidname mask maxdatalength [set_format/special]'
Error (511,511) PV: P:R:RefclockState devSnmpLi (init_record) bad parameters
Any help how I can do this?
Best regards
Tomasz Brys
European Spallation Source ERIC