rmodbus/rmodbus

Uninitialized constant Timeout

Closed this issue · 0 comments

Hello,
it is impossible to use rmodbus as modbus master over the serial line:

#<NameError: uninitialized constant Timeout>
uninitialized constant Timeout
[
"C:/Ruby200/lib/ruby/gems/2.0.0/gems/rmodbus-1.3.2/lib/rmodbus/slave.rb:231:in query'", "C:/Ruby200/lib/ruby/gems/2.0.0/gems/rmodbus-1.3.2/lib/rmodbus/slave.rb:162:in read_holding_registers'",
"C:/Ruby200/lib/ruby/gems/2.0.0/gems/rmodbus-1.3.2/lib/rmodbus/proxy.rb:15:in []'", "C:/modbus_poller_R5/modbus_poller.rb:170:in block in read_voltage'",
"C:/Ruby200/lib/ruby/gems/2.0.0/gems/rmodbus-1.3.2/lib/rmodbus/client.rb:55:in with_slave'", "C:/modbus_poller_R5/modbus_poller.rb:169:in read_voltage'",
"C:/modbus_poller_R5/modbus_poller.rb:177:in read_data'", "C:/modbus_poller_R5/modbus_poller.rb:199:in block in read_all'",
"C:/modbus_poller_R5/modbus_poller.rb:198:in each'", "C:/modbus_poller_R5/modbus_poller.rb:198:in read_all'",
"C:/modbus_poller_R5/modbus_poller.rb:222:in block in <main>'", "C:/modbus_poller_R5/modbus_poller.rb:220:in loop'",
"C:/modbus_poller_R5/modbus_poller.rb:220:in `

'"
]

Bug is fixed by inserting one line of code at the beginning of slave.rb:
require 'timeout'

I will provide PR for that.