DS2436 on Arduino UNO

Hello, everyone!
This is my very first topic and i am not a native english speaker, so please bear with me.

The thing is i am a starting radio-enthusiast and just started experementing with my Arduino UNO. First i got my hands on DS18B20 and i managed to use it properly, because there are so many good instructions in the web. I managed to measure temperature and screw around with it a little (like indicating certain T with blinks on pin 13 LED). But now i am really struggling with this DS2436 chip. I can't modify my code from DS18B20 to work properly and there are not any guides at all on programming this chip. Youtube displays exactly 0 videos related on this topic. Can someone give me some tips on how to measure temperature, voltage and cycles?!

Any help would be appreciated! (And yes, i included pull-up resistor in my circuit, so it's just the code i need)

What're you trying to do with it? I would write some code, post that code, and explain specifics of what is not working. Nobody on here will write the code for you.

Here is modified code for ds2436 (from ds18b20):

#include <OneWire.h>
OneWire ds(10);

void setup(void)

void loop(void)

byte i;
byte addr[8];
byte data[10];
byte present = 0;
byte type_s;
float celsius, fahrenheit;

if (!ds.search(addr))

Serial.print(“ROM =”);
for( i = 0; i < 8; i++)
Serial.write(’ ');
Serial.print(addr*, HEX);*
if (OneWire::crc8(addr, 7) != addr[7])
Serial.println(“CRC is not valid!”);
if (addr[0] != 0x1B)

  • Serial.print(“Device is not a DS2436 family device!”);*
    } *
    Serial.print(OneWire::crc8(data, 8 ), HEX);
    present = ds.reset();
    Serial.print(" Data = ");
    Serial.print(" ");
    for ( i = 0; i < 10; i++)
    data = ds.read();
    _Serial.print(data, HEX);
    Serial.print(" ");
    unsigned int raw = (data[1] << 8 ) | data[0];
    if (type_s) {
    raw = raw << 3;
    if (data[7] == 0x10) {
    raw = (raw & 0xFFF0) + 12 - data[6];
    } else {
    byte cfg = (data[4] & 0x60);
    if (cfg == 0x00) raw = raw << 3;
    else if (cfg == 0x20) raw = raw << 2;
    else if (cfg == 0x40) raw = raw << 1;
    celsius = (float)raw / 16.0;
    fahrenheit = celsius * 1.8 + 32.0;
    Serial.print(" Temperature = ");
    Serial.print(" Celsius, ");
    Serial.println(" Fahrenheit");
    It gives Data = 1 ff ff ff ff ff ff ff ff CRC=C9
    And temperature is 4095.94 celsius. What is wrong here?_

How do you have this wired? I looked up this chip, here is all I could find for temp sensing "Eliminates thermistors by sensing battery temperature on-chip " everything on this chip seems to be used in conjunction with a battery,