Tag Archives: temperature

BME680 measures pressure, humidity, temperature and indoor air quality

The BME680 measures pressure, humidity, temperature and indoor air quality. by Bosch Sensortec:

BME680 is an integrated environmental sensor developed specifically for mobile applications and wearables where size and low power consumption are key requirements. Expanding Bosch Sensortec’s existing family of environmental sensors, the BME680 integrates for the first time individual high linearity and high accuracy sensors for gas, pressure, humidity and temperature. It consists of an 8-pin metal-lid 3.0 x 3.0 x 0.95 mm³ LGA package which is designed for optimized consumption depending on the specific operating mode, long term stability and high EMC robustness.

BME680 measures pressure, humidity, temperature and indoor air quality – [Link]

Temperature Controlled Stair lights With Raspberry Pi

Ever wished to know the temperature on your way to breakfast after waking up in the morning? Now you can find it out in a fascinating way as Lorraine Underwood at The MagPi magazine designed a temperature controlled colorful stair lights system with raspberry pi. In this tutorial, we’re going to discuss that project.

Temperature Controlled Stair Lights
Temperature Controlled Stair Lights

Required Parts

  • Strip of 50 neopixels
  • A 5V power source for the lights
  • 2 x terminal blocks
  • 2 x male to female jumper cables
  • A raspberry pi zero with SD card with Raspian installed
  • Power supply for the Pi zero (temporary)


Make sure that the raspberry pi power supply gives exactly 5 volts and is capable of outputting 2.5A current.

Make The Circuit

At first, examine your LED strip and find out which pin is what. Connect two wires to GND, one wire to Din, and one wire to +5V pin. Now, connect the 5V pin to the “+” terminal of the female jack and GND pin to the “-” terminal. Tighten the screws of the terminal block to ensure that the wires are connected properly.

Connect the Din and GND pin of the LEDstrip to the GPIO 18 and GND of the Raspberry Pi respectively, using the male-to-female jumper wires. Please note that Broadcom numbering (BCM) is used in this tutorial, not the physical numbering. It will look like below after making the connections:

Connecting Wires To The LED Strip
Connecting Wires To The LED Strip

Set Up The Weather API

You need to set up a weather API in order to get the outside temperature in your area. In this tutorial, forecast.io is used as they allow you to make 1000 queries per day free of cost. Go to forecast.io and select Developer option. Then, click sign up to create a developer account and provide your email address. A secret key will be sent to that address. Store it securely as you’ll need in the next step.

Prepare The Raspberry Pi

At first, you need to install the Adafruit NeoPixel library rpi_ws281x. Go here and follow the instructions to install the required files on your raspberry pi. Once installed, navigate to the examples folder, run any script you wish, and check if the LED strip is functioning properly.

Now, save the below script as stair_lights.py in the Raspberry Pi:

from urllib.request import urlopen
import json
import time
from neopixel import *

apikey="get_your_own_key" # get a key from https://developer.forecast.io/register
# Latitude & longitude - current values are Lancaster University

LED_COUNT = 50 # Number of LED pixels.
LED_PIN = 18 # GPIO pin connected to the pixels (must support PWM!).
LED_FREQ_HZ = 800000 # LED signal frequency in hertz (usually 800khz)
LED_DMA = 5 # DMA channel to use for generating signal (try 5)
LED_BRIGHTNESS = 8 # Set to 0 for darkest and 255 for brightest
LED_INVERT = False # True to invert the signal (when using NPN transistor level shift)

def color(strip, color, start, end): 
 for i in range(start, end+1):
 strip.setPixelColor(i, color)

count = 0
 while True: 
 #get the data from the api website
 meteo = meteo.decode('utf-8')
 weather = json.loads(meteo)

currentTemp = weather['currently']['temperature']

#negative number will always be on 
 color(strip, Color(0, 0, 255), 0,7) # Blue
 #what's the temp?
 if currentTemp > 0:
 color(strip, Color(75, 75, 255), 8, 15) # light Blue
 if currentTemp > 5:
 color(strip, Color(0, 255, 0), 16, 23) # dark Green
 if currentTemp > 10:
 color(strip, Color(75, 255, 75), 24, 31) # light Green
 if currentTemp > 15:
 color(strip, Color(255, 100, 0), 32, 39) # yellow 
 elif currentTemp > 20:
 color(strip, Color(255, 50, 0), 40, 47) #orange 
 elif currentTemp > 25:
 color(strip, Color(255, 0, 0), 48, 50) # Red 
 #check every 5 minutes (change to crontab)
except KeyboardInterrupt:
 color(strip, Color(0,0,0), 0, 49)

Enter your own secret key in the apikey field on the 7th line. Also, replace the longitude and latitude values on line 9 and 10 with the coordinates of your area. Now save the file and you are almost done.

To start the script automatically after each reboot and check the outside temperature every five minutes, set up a cron task by entering the following command:

sudoE crontab -e

A file will be opened and add the following lines at the end of the file:

*/5 * * * * /usr/bin/python3 /home/pi/stair_lights.py
@reboot /usr/bin/python3 /home/pi/stair_lights.py

Save the file and exit.

The Color Scheme

The following table shows which color represents which temperature range. You can modify the script to change the current color scheme.

Temperature (°C) Lights (Nos) Color
 0 – 4  9 – 16 Light Blue
 5 – 9 17 – 24 Dark Green
 10 – 14 25 – 32 Light Green
 15 – 19 33 – 40 Yellow
 19 – 24  41 – 48 Orange
 25+  48 – 50 Red


Air Quality Sensors on tindie.com

Pesky Products @ tindie.com writes:

This is a small (17.9 mm x 10.3 mm) breakout board with Bosch’s BME280 pressure, temperature, and humidity sensor as well as AMS’ CCS811 digital gas sensor. The sensors work in concert to provide a complete measurement via I2C register reads of indoor air quality including temperature- and humidity-compensated estimates of equivalent CO2 concentration in parts per million (400 – 8192 ppm) and volatile organic chemical concentration in parts per billion (0 – 1187 ppb).

Air Quality Sensors on tindie.com – [Link]

Temperature Controlled Fan With LED Status

This is a simple fan controller with single LED temperature status light using an ATtiny85 microcontroller and DS18B20 temperature sensor. The fan is turned on/off based on temperature sensed and the controller goes in sleep mode when the temperature drop below a predefined threshold.

Simple ATtiny85 fan controller to turn a fan on/off based on temperature. Includes an LED as a temperature indicator. LED is dim at start of fan on temperature and blinks when above a max temperature. Fan is not PWM controlled since I am using a small 5V fan which is quiet running at 100%. The controller is in sleep state while the temperature is below the minimum threshold and wakes up every ~8 seconds to recheck the temperature. When temperature is above minimum threshold, the controller will stay awake checking every second till the temperature falls below the minimum threshold. The code uses ds18b20 library by Davide Gironi.

Temperature Controlled Fan With LED Status – [Link]

Wooden Digital Clock is controlled over WiFi

androkavo @ instructables.com build a nice looking wooden clock that is able to show time, temperature, humidity and also it has alarm. The clock is controlled through your web browser using wifi connectivity and it also has a vibration sensor to stop the alarm.

Wooden Digital Clock is controlled over WiFi – [Link]

Make an Arduino Temperature Sensor (Thermistor Tutorial)

In this video, Circuit Basics walks us through the steps in setting up a thermistor temperature sensor on an Arduino Uno. First they show how to output the temperature readings to your serial monitor. Then they go over how to connect and output the temperature readings to a 16×2 LCD display.

Make an Arduino Temperature Sensor (Thermistor Tutorial) [Link]

Designing a simple and cheap temperature logger

pickandplace.wordpress.com writes:

I started with making the TMP102 temperature sensor work. Nothing to say in particular, it’s just an other I2C-small-package-sensor. Or rather SMBus, but apart from the minimum speed clock requirements on the SMBus, the two protocols are alike.

Designing a simple and cheap temperature logger – [Link]

How to Set Up the DHT11 Humidity Sensor on an Arduino

circuitbasics.com has a new tutorial on how to interface DHT11 humidity sensor to Arduino board. Sample code is provided

Because of their low cost and small size, DHT11 humidity and temperature sensors are perfect for lots of different DIY electronics projects. Some projects where the DHT11 would be useful include remote weather stations, home environment control systems, and agricultural/garden monitoring systems.

How to Set Up the DHT11 Humidity Sensor on an Arduino – [Link]

Intel(r) Quark(tm) micrcontroller D2000 based Environmental sensors board

Sergey Kiselev designed and built an Intel Quark D2000 micrcontroller based Environmental sensors board:

This is a fairly small (51 x 51 mm) board, equipped with a low power Intel Quark D2000 microcontroller, and several sensors (accelerator, temperature, humidity, atmospheric pressure), as well as a mikroBUS compatible header and a Grove compatible connectors, that can be used to connect additional sensors, memory, or radio modules. The board can be used to monitor the environment conditions, and store or transmit the data to a remote system for further processing.

Intel(r) Quark(tm) micrcontroller D2000 based Environmental sensors board – [Link]

Temperature alarm for boiling milk


Domen Ipavec shares his temperature alarm for boiling milk. Temperature alarm uses an Atmel attiny841 microcontroller, DS18B20 high temperature waterproof temperature sensor from adafruit, 2×16 HD44780 LCD and a buzzer to do its job.

Anyone who has ever boiled milk on the stove knows, that it has a nasty habit of overflowing. That is why I created the temperature alarm for boiling milk to be used my mother. It continuously measures the temperature of the milk and sounds an alarm when the temperature is over the preset alarm value.

Temperature alarm for boiling milk – [Link]