Sha256: 6fd3a4644ac6b546c367151672792fa8eafe29e60f76c46f026a90f767e145dd

Contents?: true

Size: 911 Bytes

Versions: 4

Compression:

Stored size: 911 Bytes

Contents

#
# Example using HTU31D sensor over I2C, for temperature and humidity.
#
require 'bundler/setup'
require 'denko'

board = Denko::Board.new(Denko::Connection::Serial.new)
bus = Denko::I2C::Bus.new(board: board, pin: :SDA)
htu31d = Denko::Sensor::HTU31D.new(bus: bus)

# Get and set heater state.
htu31d.heater_on
puts "Heater on: #{htu31d.heater_on?}"
htu31d.heater_off
puts "Heater off: #{htu31d.heater_off?}"

# Back to default settings, including heater off, unlike HTU21D.
htu31d.reset
puts "Resetting HTU31D... Heater off: #{htu31d.heater_off?}"
puts

# Resolution goes from 0..3 separately for temperature and humidity. See datasheet.
htu31d.temperature_resolution = 3
htu31d.humidity_resolution = 3

# Unlike HTU21D, HTU31D works as a regular polled sensor.
htu31d.poll(2) do |reading|
  puts "Polled Reading: #{reading[:temperature].round(3)} \xC2\xB0C | #{reading[:humidity].round(3)} % RH"
end

sleep

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
denko-0.13.3 examples/sensor/htu31d.rb
denko-0.13.2 examples/sensor/htu31d.rb
denko-0.13.1 examples/sensor/htu31d.rb
denko-0.13.0 examples/sensor/htu31d.rb