This page is used to collate useful info about any components I have.
This information includes Datasheets, Pinout Diagrams, links to the manufacturers Product Pages, and links to Tutorials, and Usage.
This information includes Datasheets, Pinout Diagrams, links to the manufacturers Product Pages, and links to Tutorials, and Usage.
This encoder is especially cool because it has a common anode RGB LED built in, as well as a push-button.
Switch Travel: 0.5mm
Shaft Diameter: 6.0mm
Shaft Length: 18mm
Vertical Through-Hole Mount
24 Pulses per Rotation
Red/Green/Blue LED
Switch Travel: 0.5mm
Shaft Diameter: 6.0mm
Shaft Length: 18mm
Vertical Through-Hole Mount
24 Pulses per Rotation
Red/Green/Blue LED


Description:
This sealed digital temperature probe lets you precisely measure temperatures in wet environments with a simple 1-Wire interface. The DS18B20 provides 9 to 12-bit (configurable) temperature readings from the onboard digital-to-analog converter, over a 1-Wire interface, so that only one wire (and ground) needs to be connected from a central microprocessor.
This sealed digital temperature probe lets you precisely measure temperatures in wet environments with a simple 1-Wire interface. The DS18B20 provides 9 to 12-bit (configurable) temperature readings from the onboard digital-to-analog converter, over a 1-Wire interface, so that only one wire (and ground) needs to be connected from a central microprocessor.
What I am using it for:
This will measure the water temperature in my saltwater marine fish tank. I will use 2 sensors to monitor 2 tanks, and a different temperature sensor to monitor the room temperature.
This will measure the water temperature in my saltwater marine fish tank. I will use 2 sensors to monitor 2 tanks, and a different temperature sensor to monitor the room temperature.
Usage:
You can connect multiple ones to the same pin, each one has a unique 64-bit ID burned in at the factory to differentiate them.
The only downside is they use the Dallas 1-Wire protocol, which is somewhat complex, and requires a bunch of code to parse out the communication. If you want something really simple, and you have an analog input pin, the TMP36 is trivial to get going.
A 4.7k resistor, is required as a pullup from the DATA to VCC line when using the sensor.
You can connect multiple ones to the same pin, each one has a unique 64-bit ID burned in at the factory to differentiate them.
The only downside is they use the Dallas 1-Wire protocol, which is somewhat complex, and requires a bunch of code to parse out the communication. If you want something really simple, and you have an analog input pin, the TMP36 is trivial to get going.
A 4.7k resistor, is required as a pullup from the DATA to VCC line when using the sensor.
Pin outs:
Be Careful this has been released with inconsistent wiring colours !
Red = 3.0-5.5V, Black/Blue = GND, White/Yellow = Signal. (for 2013/2014 models)
Black = 3.0-5.5V, White = GND, Red = Signal. (for older models, comment link)
Be Careful this has been released with inconsistent wiring colours !
Red = 3.0-5.5V, Black/Blue = GND, White/Yellow = Signal. (for 2013/2014 models)
Black = 3.0-5.5V, White = GND, Red = Signal. (for older models, comment link)
Features:
3.0-5.5V power/data
Waterproof
-55°C to+125°C temperature range (-67°F to +257°F)
±0.5°C accuracy from -10°C to +85°C
1 Wire interface - requires only one digital pin for communication
9 to 12 bit selectable resolution
Unique 64 bit ID burned into chip
Multiple sensors can share one pin
Temperature-limit alarm system
Query time is less than 750ms
3.0-5.5V power/data
Waterproof
-55°C to+125°C temperature range (-67°F to +257°F)
±0.5°C accuracy from -10°C to +85°C
1 Wire interface - requires only one digital pin for communication
9 to 12 bit selectable resolution
Unique 64 bit ID burned into chip
Multiple sensors can share one pin
Temperature-limit alarm system
Query time is less than 750ms
Dimensions:
Probe is 7mm in diameter and roughly 26mm long. Overall length (including wire) is 6 feet.
Probe is 7mm in diameter and roughly 26mm long. Overall length (including wire) is 6 feet.
Links to Tutorials & Datasheets:
Bildr Tutorial: One Wire Digital Temperature. DS18B20 + Arduino
Data Sheet: Dallas DS18B20 Programmable Resolution 1-Wire Digital Thermometer
Data Sheet: Maxim DS18B20 Programmable Resolution 1-Wire Digital Thermometer
Dallas Temperature Control Arduino library which requires also the OneWire Library
Sparkfun Product Page: Temperature Sensor - Waterproof (DS18B20)
Adafruit Product Page: Waterproof DS18B20 Digital temperature sensor + extras
Bildr Tutorial: One Wire Digital Temperature. DS18B20 + Arduino
Data Sheet: Dallas DS18B20 Programmable Resolution 1-Wire Digital Thermometer
Data Sheet: Maxim DS18B20 Programmable Resolution 1-Wire Digital Thermometer
Dallas Temperature Control Arduino library which requires also the OneWire Library
Sparkfun Product Page: Temperature Sensor - Waterproof (DS18B20)
Adafruit Product Page: Waterproof DS18B20 Digital temperature sensor + extras
![]() |
![]() |
![]() |
![]() |
Description:
This is a breakout board for the incredibly small TMP102 digital temperature sensor. The TMP102 is a digital sensor (I2C a.k.a. TWI), has a resolution of 0.0625°C, and is accurate up to 0.5°C. The sensor requires very low-current, and is loaded with features.
Communication with the TMP102 is achieved through a two-wire serial interface. There is no on-board voltage regulator, so supplied voltage should be between 1.4 to 3.6VDC. Filtering capacitors and pull-up resistors are included as shown.
This is a breakout board for the incredibly small TMP102 digital temperature sensor. The TMP102 is a digital sensor (I2C a.k.a. TWI), has a resolution of 0.0625°C, and is accurate up to 0.5°C. The sensor requires very low-current, and is loaded with features.
Communication with the TMP102 is achieved through a two-wire serial interface. There is no on-board voltage regulator, so supplied voltage should be between 1.4 to 3.6VDC. Filtering capacitors and pull-up resistors are included as shown.
What I am using it for:
This will measure the ambient room temperature in my fish room / office. I have tested this & it works well. (I will update with some code & pictures or video, later) Sat 15th Feb
This will measure the ambient room temperature in my fish room / office. I have tested this & it works well. (I will update with some code & pictures or video, later) Sat 15th Feb
Usage:
Being digital, it is not necessary to take an average of 5 or so readings as is commonly done with analog sensors.
If this temperature sensor outputs a digital signal why is it connected to the analog inputs of the Arduino?
That is a great question! The answer is that most of the I/O pins on modern microcontrollers can be used for multiple purposes. Those particular analog pins are also used by the ATmega’s I2C (“Wire”) bus interface. When you use the Wire library, those pins cease being analog inputs, and are instead used for I2C communications. See the Arduino site’s Wire library reference page for more information. (comment link)
Can these be cascaded on one bus? That is, can I connect 4 of these on a single bus and connect them to a netduino? I can’t remember if the i2c lets you do that or not…
Yep, I2C is designed to accommodate multiple devices on the same bus, as long as all the devices have different addresses. The ADDR pin on this part allows it to be set to one of four possible addresses (see the datasheet on how to do this). So as long as you configure each one to have a different address, you’ll be able to talk to four of them on the same bus. (comment link)
Being digital, it is not necessary to take an average of 5 or so readings as is commonly done with analog sensors.
If this temperature sensor outputs a digital signal why is it connected to the analog inputs of the Arduino?
That is a great question! The answer is that most of the I/O pins on modern microcontrollers can be used for multiple purposes. Those particular analog pins are also used by the ATmega’s I2C (“Wire”) bus interface. When you use the Wire library, those pins cease being analog inputs, and are instead used for I2C communications. See the Arduino site’s Wire library reference page for more information. (comment link)
Can these be cascaded on one bus? That is, can I connect 4 of these on a single bus and connect them to a netduino? I can’t remember if the i2c lets you do that or not…
Yep, I2C is designed to accommodate multiple devices on the same bus, as long as all the devices have different addresses. The ADDR pin on this part allows it to be set to one of four possible addresses (see the datasheet on how to do this). So as long as you configure each one to have a different address, you’ll be able to talk to four of them on the same bus. (comment link)
Features:
1.4V to 3.6VDC supply range
12-bit, 0.0625°C resolution
Accuracy: 0.5°C (-25°C to +85°C)
Low quiescent current
10µA Active (max)
1µA Shutdown (max)
Two-wire serial interface
1.4V to 3.6VDC supply range
12-bit, 0.0625°C resolution
Accuracy: 0.5°C (-25°C to +85°C)
Low quiescent current
10µA Active (max)
1µA Shutdown (max)
Two-wire serial interface
Dimensions:
Board is approximately 1.25cm x 1.05cm
Board is approximately 1.25cm x 1.05cm
Links to Tutorials & Datasheets:
Sparkfun Product Page: Digital Temperature Sensor Breakout - TMP102
Data Sheet: Texas Instruments Low Power Digital Temperature Sensor
With SMBus/Two-Wire Serial Interface in SOT563
Bildr Tutorial: How’s the weather? TMP102 + Arduino
Code: Sparkfun Example Code (ATmega328)
Sparkfun Product Page: Digital Temperature Sensor Breakout - TMP102
Data Sheet: Texas Instruments Low Power Digital Temperature Sensor
With SMBus/Two-Wire Serial Interface in SOT563
Bildr Tutorial: How’s the weather? TMP102 + Arduino
Code: Sparkfun Example Code (ATmega328)
Other Links to Blogs & Tutorials:
Temperature Graph using Electric Imp and TMP102 over I2C
Temperature Graph using Electric Imp and TMP102 over I2C
Sample code for the youTube example above: link to pastebin
Explanation of how to Use the I2C Bus - external link here
Description:
MinipH - A pH interface for Arduino or Raspberry Pi projects by SparkysWidgets.
MinipH pH interface is a very cost effective solution for adding pH sensing capability to any project. MinipH uses a popular and proven 12 bit ADC that is very easy to work with, precise, and reliable, taking measurements is a snap. This makes it an ideal addition to any electronic tool box, especially those that need water quality sensors! Designed to be easily integrated with projects using either a breadboard(standard .1″ header) or even use a Seeed Grove connector! This is an open source hardware project and all files can be found on MinipH’s Project page or directly on my GitHub!
MinipH - A pH interface for Arduino or Raspberry Pi projects by SparkysWidgets.
MinipH pH interface is a very cost effective solution for adding pH sensing capability to any project. MinipH uses a popular and proven 12 bit ADC that is very easy to work with, precise, and reliable, taking measurements is a snap. This makes it an ideal addition to any electronic tool box, especially those that need water quality sensors! Designed to be easily integrated with projects using either a breadboard(standard .1″ header) or even use a Seeed Grove connector! This is an open source hardware project and all files can be found on MinipH’s Project page or directly on my GitHub!
What I am using it for:
This will measure the pH of my Saltwater fish tank.
This will measure the pH of my Saltwater fish tank.
Usage:
The usage of the device is very straightforward and example code is provided, the gist of it is to simply ask the ADC for its value over standard I2C (both fast and slow modes) and assemble the bytes to recreate the 12bit number. Post processing is the standard pH calculations that can be found both here and on a few various other websites out there (although we all tend to calculate pH ever so slightly, I suspect the end results are all similar though).
SparkysWidgets has already uploaded a decent example on how to implement ph readings from a MinipH board to my github, and I will also include it here as well!
As a side note the ADC does about ~28.8KSPS giving us more then enough data points and bandwidth to be able to oversample and decimate, although with the quality of the 12 bit reading it gives already it would really be an overkill at this point (I am sure someone will anyway!)
The usage of the device is very straightforward and example code is provided, the gist of it is to simply ask the ADC for its value over standard I2C (both fast and slow modes) and assemble the bytes to recreate the 12bit number. Post processing is the standard pH calculations that can be found both here and on a few various other websites out there (although we all tend to calculate pH ever so slightly, I suspect the end results are all similar though).
SparkysWidgets has already uploaded a decent example on how to implement ph readings from a MinipH board to my github, and I will also include it here as well!
As a side note the ADC does about ~28.8KSPS giving us more then enough data points and bandwidth to be able to oversample and decimate, although with the quality of the 12 bit reading it gives already it would really be an overkill at this point (I am sure someone will anyway!)
Features:
Full pH range .1 – 14 (.01 precision, though probes are only good for .1)
Wide range of VIN inputs (2.7 to 5.5V) works with RaspI’s for example
Easy to use 12bit ADC
Full pH range .1 – 14 (.01 precision, though probes are only good for .1)
Wide range of VIN inputs (2.7 to 5.5V) works with RaspI’s for example
Easy to use 12bit ADC
Dimensions:
Board is approximately 5 x 2.8 x 1.8 cm
Board is approximately 5 x 2.8 x 1.8 cm
Links to Tutorials & Datasheets:
This is the Hardware Repo for MinipH (EAGLE Files)
This is the most basic "Example" firmware for MinipH in Arduino (link)
Project Page on sparkysWidgets (link)
This is the Hardware Repo for MinipH (EAGLE Files)
This is the most basic "Example" firmware for MinipH in Arduino (link)
Project Page on sparkysWidgets (link)
Pinouts: