A standalone temperature/voltage logger in a small compact form factor with minimal
parts using the ATtiny85 and an external I2C EEPROM powered by a 3V coin cell.
Data logged can be extracted via a USB cable.
The standalone temperature/voltage logger uses V-USB: http://www.obdev.at/vusb/
- Low power consumption, at least 1 year battery life
- Measure temperature from -40C to 125C saving to EEPROM as 8 bit (as 1 byte) or 10 bit (as 2 bytes).
- Measure voltage from 0V to 15V saving to EEPROM as 8 bit (as 1 byte) or 9 bit (as 2 bytes). (Voltage range can be increased if the 2 voltage protection diodes are removed and the code is modified)
- Uses an external I2C EEPROM, supports up to 512Kbit which is 65,536 recordings (with 1 byte values) or 32,768 (with 2 byte values)
- 12 logging delay times available (28secs, 1min, 5mins, 10mins, 15mins, 30mins, 1hr, 2hrs, 4hrs, 8hrs, 12hrs, 24hrs)
- Easily transfer the logged data to your PC via USB, it will print out the data logged one result at a time so you will need to have notepad (or any other program) open until all the data is transferred
Note: You can only log temperature or voltage, not both at the same time. No information on time is recorded when logging.
PCB Board: 41mm x 28.5mm
Voltage: 2.7V to 5.5V
Current used when sleeping: 5uA
Current used when logging – Watchdog sleep routine: 0.3mA for 30ms approximately every 4 seconds
Current used when logging – Thermistor on, LED on and write to EEPROM: 3mA (max) for 50ms
Resolution of temperature (1 byte): 0.65C (rounded up or down in 0.5 – 1C increments)
Resolution of temperature (2 bytes): 0.16C (rounded up or down in 0.2C increments)
Resolution of voltage (1 byte): 0.06V
Resolution of voltage (2 bytes): 0.03V
Accuracy of Thermistor: within 5% -/+ (between -40C to 25C is 1.25C -/+, 25C to 50C is 1.5C -/+, 50C – 70C+ is 1.9C -/+)
Accuracy of timer: within 10% -/+
Operating temperature: -40C to 125C (Most CR2032 batteries only support -40C to 70C)
The download file includes:
- Source code and compiled main.hex file
- Parts list, step by step guide and instructions on use (View it online here)
- PCB bottom ready for home etching
- PCB top ready for home etching (rotated horizontally)
- PCB Guide
- Example results
- Pictures of finished product
v1.2 Rev. 3 (11 December 2012)
- Added the usblib0.sys driver for SATVL v1.2 in the “/SATVL_v1.2/driver” folder
v1.2 Rev. 2 (11 October 2012)
- Added pictures of PCB v1.0 and v1.0
- Started revision history of zip files
- Updated PDF to Rev. 7
v1.2 (4 October 2012)
- Fixed bug where calibrateOscillator function wasn’t been called when USB was plugged in
- Enabled ADC noise cancel sleep mode
v1.1 (12 August 2012)
- The data transfer now uses the satvltransfer program to transfer the data from the SATVL more quickly
v1.0.1 (9 June 2012)
- Now prints the logging delay time (e.g “28sec delay”) at the start of the data transfer to the PC
v1.0b (16 May 2012)
- Reverted calibrateOscillator function back to the default as my patch wasn’t needed
- After a USB transfer is complete, made OSCCAL go back to the factory default settings in steps of 32
v1.0a (2 May 2012)
- Corrected EEPROM size test code to work with 32Kbit EEPROMs
v1.0 (18 April 2012)
- Initial Release
The graphs below show the results, you can also download the Excel files to see the raw data.
Temperature logging (1 byte)
Temperature logging (2 bytes)
Voltage logging (2 bytes)
Buy the Kit
This kit requires assembly and soldering, SMD parts are pre-soldered. To reduce shipping costs the kit is sent via the Airmail letter service for $3 and the estimated delivery time is 3 – 10 working days.
Standalone Temperature-Voltage Logger with Voltage Logging Add-on
This is the recommended version of this kit to purchase as it allows for temperature or voltage logging and allows you to purchase an EEPROM if you don’t already have one.
Standalone Temperature-Voltage Logger PCB board only
This is for the bare PCB itself and comes with the SMD parts pre-soldered.
This work is licensed under a Creative Commons Attribution-NonCommercial 3.0 Unported License.