Class: Lorraine::SerialConnection

Inherits:
Connection show all
Defined in:
lib/lorraine/serial_connection.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Connection

#animate_to_image, #display_image, #display_pixels

Constructor Details

#initializeSerialConnection

Returns a new instance of SerialConnection.



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/lorraine/serial_connection.rb', line 9

def initialize
  super
  
  #simplest ruby program to read from arduino serial, 
  #using the SerialPort gem
  #(http://rubygems.org/gems/serialport)


  #params for serial port
  # port_str = port  # may be different for you
  baud_rate = 115200
  # data_bits = 8
  # stop_bits = 1
  # parity = SerialPort::NONE

  self.port = SerialPort.new Lorraine::SerialConnection.first_available_port, baud_rate#, data_bits, stop_bits, parity
  
end

Instance Attribute Details

#portObject

Returns the value of attribute port.



7
8
9
# File 'lib/lorraine/serial_connection.rb', line 7

def port
  @port
end

Class Method Details

.first_available_portObject



28
29
30
31
32
# File 'lib/lorraine/serial_connection.rb', line 28

def self.first_available_port
  p = Dir.glob("/dev/tty.usb*").first
  raise "No available ports." unless p
  p
end

Instance Method Details

#read_lineObject



43
44
45
46
47
# File 'lib/lorraine/serial_connection.rb', line 43

def read_line
  m = self.port.gets
  puts "Lorraine::SerialConnection Message: #{m}"
  m
end

#sever!Object



49
50
51
52
# File 'lib/lorraine/serial_connection.rb', line 49

def sever!
  super
  self.port.close
end

#write_binary_string(binary_string) ⇒ Object



34
35
36
# File 'lib/lorraine/serial_connection.rb', line 34

def write_binary_string(binary_string)
  self.port.write binary_string
end

#write_message(msg) ⇒ Object



38
39
40
41
# File 'lib/lorraine/serial_connection.rb', line 38

def write_message(msg)
  puts "Writing serial message: #{msg}"
  write_binary_string msg.to_binary
end