class Mushy::SenseHatEnvironmentalSensors
Public Class Methods
default_measurements()
click to toggle source
# File lib/mushy/fluxs/sense_hat_environmental_sensors.rb, line 34 def self.default_measurements [:humidity, :temperature, :pressure] end
details()
click to toggle source
# File lib/mushy/fluxs/sense_hat_environmental_sensors.rb, line 5 def self.details { name: 'SenseHatEnvironmentalSensors', description: 'Pull values from the Sense HAT environmental sensors.', config: Mushy::SimplePythonProgram.default_config, }.tap do |c| measurements .sort_by { |x| default_measurements.include?(x) ? 0 : 1 } .each do |measurement| c[:config][measurement] = { description: "Pull #{measurement}.", type: 'boolean', shrink: true, value: default_measurements.include?(measurement) ? 'true' : '', } end end end
measurements()
click to toggle source
# File lib/mushy/fluxs/sense_hat_environmental_sensors.rb, line 24 def self.measurements [ :humidity, :temperature, :temperature_from_humidity, :temperature_from_pressure, :pressure, ] end
Public Instance Methods
python_program(event, config)
click to toggle source
# File lib/mushy/fluxs/sense_hat_environmental_sensors.rb, line 38 def python_program event, config values = self.class.measurements .select { |x| config[x] == 'true' } .reduce({}) { |t, i| t[i] = "get_#{i}"; t} .map { |m| "\"#{m[0]}\": sense.#{m[1]}()" } .join(',') <<PYTHON from sense_hat import SenseHat import json sense = SenseHat() value = json.dumps({#{values}}) print(value) PYTHON end