From 8e7fd64701dd6760a647197abd54077560cbe74e Mon Sep 17 00:00:00 2001 From: Aart van Halteren Date: Wed, 17 Jul 2013 12:44:26 +0200 Subject: [PATCH] put serial_port in blocking read --- smartmeter.rb | 2 ++ test-serial.rb | 3 +++ 2 files changed, 5 insertions(+) diff --git a/smartmeter.rb b/smartmeter.rb index 326d5f7..666bc83 100644 --- a/smartmeter.rb +++ b/smartmeter.rb @@ -17,6 +17,8 @@ def open_device begin # Open connection to serial port io_device = SerialPort.new("/dev/ttyUSB1", 9600, 7, 1, SerialPort::EVEN) + # Make reading blocking + io_device.read_timeout = 0 rescue p "Serialport Error - reverting to 'example_blurp.txt'" io_device = File.open("example_blurp.txt") diff --git a/test-serial.rb b/test-serial.rb index b8c6160..d7f0a91 100644 --- a/test-serial.rb +++ b/test-serial.rb @@ -24,6 +24,9 @@ if __FILE__ == $0 sp = SerialPort.new(port_str, baud_rate, data_bits, stop_bits, parity) +# Make reading blocking +sp.read_timeout = 0 + #just read forever while true do printf("%c", sp.getc)