INTRODUCTION: ============= THERMYv3 is a continuation of the thermy project into a third design phase, as the previous two designs were insufficient electrically and in general. Hopefully, THERMYv3 will be the final design in the thermy series, and I can wrap this project up. :) THERMY PURPOSE: =============== The thermy project's intent is to create a standalone electronic device that is capable of digitally displaying the ambient temperature. The thermy design is unique in that is uses a completely digital pathway between its sensor (The Maxim IC DS18B20+) and the microcontroller (The Atmel AVR ATmega8). ERRATA ADDRESSED BY THERMYv3: ============================= As is probably clear by this time, previous designs of the thermy device have failed to produce a working proof-of-concept, so this third revision was specifically designed to address these issues: 1. COMPONENT AVAILABILITY: The first two thermy designs required parts from digikey, sparkfun electronics, and radioshack. THERMYv3 only requires parts (excluding the PCB from batchpcb) from digikey. 2. ELECTRONIC DESIGN ERRORS: Serious errors in the thermy schematics of v1 and v2 are present which will limit or inhibit proper electric functionality: a. Improper Anode/Cathode for LEDs: v1 and v2 used a common-cathode seven-segment led display, but the schematics were made for the common-anode type. b. Absense of Proper Resistors: v1 was completely devoid of any pull-up or current-limiting resistors on AVR ports and the sensor bus, and v2 lacked a 4.7k pull-up resistor on the sensor one-wire bus. c. Absence of a required Capacitor: v3 finally adds a crucial 0.10u capacitor between the GND and VCC pins of the AVR that will provide current at times when the AVR pulls more than provided by the LM7805 regulator. d. Absence of a Physical RESET: v3 provides an external reset switch, just in case. :) 3. PHYSICAL DESIGN ERRORS: Previous designs lacked various finishing touches which either reduced usability or completely blocked functionality: a. Incorrect ISP Header: Previous designs features a 10-pin In-System Programming (ISP) header, which is not directly compatible with the 6-pin programming header of the STK500v2. b. Wrong Resistor Footprints: v2 used a very small footprint for all of the resistors, which forced all resistors to be soldered at precarious angles. c. Proximity of Sensor and Regulator: In the v2 design, the LM7805 regulator was relatively close to the DS18B20 temperature sensor, meaning any increase in temperature due to the VREG would show up. d. Size of LED Displays: v1 and v2 both used the LITE-ON HD-A103, which is a 0.8" display. v3 uses an HD-F101, which is a 1.0" display. e. Incorrect Sensor Pinout: The hacked pinout of the DS18B20 in the v1 and v2 designs did not match the actual pinout of the device, requiring further external wiring. FUNCTIONALITY WALKTHROUGH: ========================== When thermy boots it initializes the 1-Wire Bus and sets up the LED displays. During the control loop, the AVR polls the DS18B20+ sensor for temperature values and updates the displays with the previous value during the 750ms required by the sensor to collect a new measurement. For more details, see the thermy source code. PARTS MANIFEST: =============== Here's the components manifest for the THERMYv3 design. All parts are available from digikey, which simplifies component orders and also makes the entire design cheaper to build. The "Req" column tells the number of each component a design requires, the "Min" column tells the minimum order quantity of each component, the "Buy" column tells the number of each component purchased to meet both the previous requirements, and the "Part Number" column is obvious. +--------------------------------------+ | ** DIGIKEY: | +--------------------------------------+ | Req Min Buy Part Number | +--------------------------------------+ | 1 1 1 ATMEGA8-16PU-ND | | 1 1 1 CTX082-ND | | 1 1 1 SAM1030-03-ND | | 1 1 1 LM7805CT-ND | | 4 1 4 PN2907ABUFS-ND | | 4 1 4 160-1578-5-ND | | 2 1 2 399-4344-ND | | 2 1 2 399-3507-ND | | 1 1 1 399-4408-ND | | 8 5 10 220H-ND | | 5 5 5 4.7KH-ND | | 1 5 5 10KH-ND | | 1 1 1 DS18B20+-ND | | 1 1 1 CKN6012-ND | | 1 1 1 SW404-ND | | 1 1 1 AE10286-ND | | | +--------------------------------------+