class BirdbrainHummingbirdOutput
Public Class Methods
led(device, port, intensity)
click to toggle source
# File lib/birdbrain/birdbrain_hummingbird_output.rb, line 5 def self.led(device, port, intensity) request_status(response_body('hummingbird', 'out', 'led', port.to_s, bounds(calculate_intensity(intensity), 0, 255), device)) end
play_note(device, note, beats)
click to toggle source
# File lib/birdbrain/birdbrain_hummingbird_output.rb, line 27 def self.play_note(device, note, beats) calc_note = bounds(note, 32, 135) calc_beats = bounds(beats, 0, 16) * 1000 # 100=(60000 / TEMPO) where TEMPO=60 request_status(response_body('hummingbird', 'out', 'playnote', calc_note, calc_beats, device)) end
position_servo(device, port, angle)
click to toggle source
# File lib/birdbrain/birdbrain_hummingbird_output.rb, line 17 def self.position_servo(device, port, angle) # QUESTION: 254 max (255 is ignored) request_status(response_body('hummingbird', 'out', 'servo', port.to_s, bounds(calculate_angle(angle), 0, 254), device)) end
rotation_servo(device, port, speed)
click to toggle source
# File lib/birdbrain/birdbrain_hummingbird_output.rb, line 22 def self.rotation_servo(device, port, speed) # QUESTION: why this range...255 means stop request_status(response_body('hummingbird', 'out', 'rotation', port.to_s, bounds(calculate_speed(speed), 99, 145, 255), device)) end
tri_led(device, port, r_intensity, g_intensity, b_intensity)
click to toggle source
# File lib/birdbrain/birdbrain_hummingbird_output.rb, line 9 def self.tri_led(device, port, r_intensity, g_intensity, b_intensity) calc_r = bounds(calculate_intensity(r_intensity), 0, 255) calc_g = bounds(calculate_intensity(g_intensity), 0, 255) calc_b = bounds(calculate_intensity(b_intensity), 0, 255) request_status(response_body('hummingbird', 'out', 'triled', port.to_s, calc_r, calc_g, calc_b, device)) end