class Artoo::Drivers::Neurosky
The neurosky driver behaviors
Public Instance Methods
handle_message_events()
click to toggle source
# File lib/artoo/drivers/neurosky.rb, line 23 def handle_message_events begin while true do packets = connection.read_packet return if packets.empty? packets.each { |pkt| handle_packet(pkt) } end #rescue ::Mindset::Connection::TimeoutError, Interrupt => e #cont = false end end
handle_packet(packet)
click to toggle source
# File lib/artoo/drivers/neurosky.rb, line 37 def handle_packet(packet) case when packet[:wave] publish(event_topic_name("wave"), packet[:wave]) when packet[:signal_quality] publish(event_topic_name("signal_quality"), packet[:signal_quality]) when packet[:attention] publish(event_topic_name("attention"), packet[:attention]) when packet[:meditation] publish(event_topic_name("meditation"), packet[:meditation]) when packet[:blink] publish(event_topic_name("blink"), packet[:blink]) when packet[:delta] publish(event_topic_name("eeg"), packet) else puts packet.inspect end end
start_driver()
click to toggle source
Start driver and any required connections
Calls superclass method
# File lib/artoo/drivers/neurosky.rb, line 9 def start_driver begin every(interval) do handle_message_events end super rescue Exception => e Logger.error "Error starting Neurosky driver!" Logger.error e.message Logger.error e.backtrace.inspect end end