Thermistor help identify

 So I have a few industrial thermistors lying around that I would like to use to read temperatures of a wood stove. I have tried to figure this out myself but am really having trouble understanding the math to be honest.
 The device at room temp(68) reads 29.6ohms and in a ice bath(in bath for about 15 min) it reads 76 ohms, assuming it is approximately 32 degrees. I have used the thermistor  program below with a 10k thermistor. With this thermistor ,the value is unknown and was hoping someone out ther could help me figure out how to determine its value and what would the value be for the voltage divider.
t`#include <ESP8266WiFi.h>
#include <math.h>


unsigned int Rs = 150000;
double Vcc = 3.3;

// WiFi parameters
const char* ssid = "*****";
const char* password = "************";

// Pin

WiFiServer server(80);

void setup() {

// Connect to WiFi network
Serial.print("Connecting to ");

WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {
Serial.println("WiFi connected");

// Start the server
Serial.println("Server started");

// Print the IP address

void loop() {


  float temp = Thermister(AnalogRead());
 float fTemp = Temp * 1.8 + 32;
WiFiClient client = server.available();
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connection: close");  // the connection will be closed after completion of the response
client.println("Refresh: 3");  // refresh the page automatically every 5 sec
client.println("<!DOCTYPE html>");
client.println("<html xmlns=''>");
client.println("<head>\n<meta charset='UTF-8'>");
client.println("<title>DroneMesh Wifi Temp Sensor</title>");
client.println("<link href='' rel='stylesheet'>");
client.println("<div class='container'>");
client.println("<div class='panel panel-default' margin:15px>");
client.println("<div class='panel-heading'>");
client.println("<H2>DroneMesh Wifi Temp Sensor</H2>");
client.println("<div class='panel-body' style='background-color: powderblue'>");
client.print("Temperature (°C)  : ");
client.println(temp, 2);

int AnalogRead() {
  int val = 0;
  for(int i = 0; i < 20; i++) {
    val += analogRead(A0);

  val = val / 20;
  return val;

double Thermister(int val) {
  double V_NTC = (double)val / 1024;
  double R_NTC = (Rs * V_NTC) / (Vcc - V_NTC);
  R_NTC = log(R_NTC);
  double Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * R_NTC * R_NTC ))* R_NTC );
  //Temp = Temp - 273.15;       
   Temp = Temp - 303.01;         
  return Temp;

}type or paste code here

What you have are low resistance NTC , they will be difficult to use as you will need to pass a large current through them get any range of readings with the ADC. This will mean youll need an external power supply to drive them . ( to get 1volt, room temp say, at 29.6 ohms needs 30mA)
The 10K curve willl not be suitable .

Really , I'd bin them , sorry.

Assuming it is really a thermistor, wanted to send pictures . Hopefully someone will recognize it and say if it is one. Thanks

It is indeed a temperature-sensitive resistor, but not very useful with Arduino.

Could be a thermistor but something doesn't smell right. The wire insulation suggests a high temperature application. However a 30 ohm @RT NTC will be about 1 ohm at 150 °C. Doesn't seem useful in normal conditions.

Does the other end of the wires have any color or marking? Can you tell if they are both copper?

However I agree with @hammy . Thermistors are so cheap it is likely not a good fit for measuring nominal temperatures.

No they are not copper and they are magnetic, meaning that they will stick to a magnetic. Thanks

An ESP8266, with absolute A/D, can't properly read thermistors anyway, so forget about it.
Use an I2C temp sensor, or a DS18B20.

@wawa I was surprised about your statement. Then I read about the ESP8266 A/D converter and now understand. Thanks for the motivation to look into this :slight_smile:

For the OP, @wawa is saying the A/D input is relative to an internal reference voltage. It has no reliance on the power supply to the board. This means any change in the power supply voltage and your reading will be shifted resulting in an error. The ESP is not capable of reading the thermistor input AND the power supply input (even through a divider) without physically changing the pin wiring.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.