Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
LM75AD I2C Temperature Sensor
- Pin-for-pin replacement for industry standard LM75 and offers improved temperature resolution of 0.125°C and Specification of a single part over power supply range from 2.8 V to 5.5 V
- Small 8-pin package types: SO8 and TSSOP8
- I2C-bus interface with up to 8 devices on the same bus
- Power supply range from 2.8 V to 5.5 V (Note that for use the ESP8266 you must limit this to 3.3V as the GPIO pins of the ESP8266 are not 5V tolerant)
- Temperatures range from −55°C to +125°C
- 11-bit ADC that offers a temperature resolution of 0.125°C
- Temperature accuracy of:
- ±2°C from −25°C to +100°C
- ±3°C from −55°C to +125°C
- Programmable temperature threshold and hysteresis set points (Not used in the LM75AD driver at this stage)
- Supply current of 3.5μA in shutdown mode for power conservation
- Stand-alone operation as thermostat at power-up (Not used in the LM75AD driver at this stage)
- ESD protection exceeds 2000 V HBM per JESD22-A114, 200 V MM per JESD22-A115 and 1000 V CDM per JESD22-C101
- Latch-up testing is done to JEDEC Standard JESD78 which exceeds 100 mA
Datasheet can be found at https://www.nxp.com/docs/en/data-sheet/LM75A.pdf
Breakout boards available typically look like this
Can also be used standalone if soldered to a board given the diagram is used
R1 and R2 are pull-up resistors which are required by the I2C bus to operate properly. If you have other I2C sensors with pull-up resistors connected to the same I2C bus it's probably not necessary to have them.
For connection to the ESP8266 I2C bus it is important to connect the SCL and SDA pins according to how the Sonoff firmware was configured.
The driver must be enabled in the firmware's user_config.h file by ensuring that the USE_I2C and USE_LM75AD lines are uncommented.
The driver currently only allows the use of a single LM75AD sensor on any of the addresses configurable through pins A0, A1 and A2 - These are usually conveniently broken out on a breakout board either as pins or as solderable joins as can be seen on the example breakout board provided in the images above.
These pins need to be either tied down to GND or VCC (3.3V) and the resulting I2C address will be set during power-up according to the datasheet as follows
Once connected correctly (be it using a breakout board or just manually soldered) the Sonoff Tasmota firmware should detect the sensor automatically and start pushing out telemetry data.