Thermostat
jamesrwaugh·thermostat·hardware/Thermostat/Thermostat.kicad_pcb
About the Thermostat PCB
Thermostat is an open source AVR/Arduino PCB design by jamesrwaugh, published on GitHub. It is a 2-layer board measuring 111.2 × 76.5 mm, with 39 components from 25 distinct parts.
Its main chip is the ATmega168P-20A, from the AVR/Arduino family. Other key parts include the GU112X16G-7003BL, 47L04, UA78M05QDCYRQ1, DS1307Z+ and SHT4x. By type, the board carries 10 capacitors, 7 ICs, 6 switches, 4 connectors, 4 relays and 4 resistors.
From the project
AVR-based Residential Thermostat Hardware / Firmware
- [End Goal] Home Assisstant integration compatible - Plugs into residential connections offering 24VAC power - Programmable time/day-based temperature settings - Heating, cooling, and off modes - Battery-backed storage for settings and time - Support on-cool and on-heat reverse valve types - Auto or always-on fan setting - Display in Fahrenheit or Celsius - ISP header for firmware flashing and updates - Objectively gorgeous vacuum-florescent display - Runs on a familiar, lovable AVR - All this and more, in a small & tiny 16Kb firmware binary
Main components on the Thermostat
Thermostat bill of materials (BOM)
39 components, 25 distinct parts.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | GU112X16G-7003BL | GU-7003 | U1 |
| 1 | 47L04 | SOIC-8_3.9x4.9mm_P1.27mm | U2 |
| 1 | ~ | SOIC-16_3.9x9.9mm_P1.27mm | U3 |
| 1 | UA78M05QDCYRQ1 | SOT-223-3_TabPin2 | U4 |
| 1 | ATmega168P-20A | TQFP-32_7x7mm_P0.8mm | U5 |
| 1 | DS1307Z+ | SOIC-8_3.9x4.9mm_P1.27mm | U8 |
| 1 | SHT4x | Sensirion_DFN-4_1.5x1.5mm_P0.8mm_SHT4x_NoCentralPad | U9 |
| 1 | Crystal | Crystal_SMD_5032-2Pin_5.0x3.2mm | Y1 |
| 1 | Crystal | Crystal_SMD_3215-2Pin_3.2x1.5mm | Y3 |
| 1 | Conn_01x02_Pin | PinHeader_1x02_P2.54mm_Vertical_SMD_Pin1Left | J2 |
| 1 | AVR-ISP-6 | PinHeader_2x03_P2.54mm_Vertical_SMD_2 | J3 |
| 1 | MainConnectorr | TerminalBlock_MaiXu_MX126-5.0-07P_1x07_P5.00mm | J4 |
| 1 | Screw_Terminal_01x02 | TerminalBlock_MetzConnect_Type094_RT03502HBLU_1x02_P5.00mm_Horizontal | J5 |
| 1 | Battery_Cell | BS-12-B3AA011 | BT1 |
| 4 | G6E | Relay_SPDT_Omron_G6E | K1, K2, K3, K4 |
| 5 | 12MM | B3F | SW1, SW2, SW3, SW7, SW9 |
| 1 | SW_Push | SW_Push_1P1T_NO_CK_KMR2 | SW5 |
| 1 | SS33 | D_SMA | D1 |
| 1 | 10uF | C_1210_3225Metric | C1 |
| 2 | 1uF | C_1210_3225Metric | C2, C3 |
Show 5 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 2 | 22pF | C_0603_1608Metric | C4, C5 |
| 4 | 0.1uF | C_0603_1608Metric | C6, C8, C9, C10 |
| 1 | 6.8uF | C_0603_1608Metric | C7 |
| 1 | 10k | R_0603_1608Metric | R1 |
| 3 | 4.7k | R_0603_1608Metric | R2, R6, R7 |
Thermostat design files
The KiCad project lives in the jamesrwaugh/thermostat repository on GitHub; these links point at the commit this page was built from.
Thermostat: common questions
What microcontroller does the Thermostat use?
The Thermostat is built around the ATmega168P-20A, from the AVR/Arduino family.
How big is the Thermostat PCB?
The Thermostat measures 111.2 × 76.5 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the Thermostat?
39 components, from 25 distinct parts. The full bill of materials is listed on this page.
Where can I download the Thermostat design files?
From the jamesrwaugh/thermostat repository on GitHub, which has the KiCad layout and the schematic; the links under Design files point to each one.
Can I use the Thermostat design in my own project?
The repository has no license, so all rights stay with jamesrwaugh. Use it as a reference, and ask the author before reusing the design.
Can I test firmware for the Thermostat without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug AVR/Arduino firmware against it before you order a PCB.
Similar boards
AVR/Arduino
Magspoof
samyk
35 × 29 mm11 parts2LNo license4.2kAVR/Arduino
Redox keyboard
mattdibi
162.2 × 126.5 mm77 parts2LMIT2.0kAVR/Arduino
Labrador
espotek-org
36.8 × 34.7 mm75 parts2LNo license1.2kAVR/Arduino
V4
stuartpittaway
30 × 50 mm38 parts2LCC-BY-NC-4.01.1kAVR/Arduino
ModuleV450
stuartpittaway
30 × 61.4 mm39 parts2LCC-BY-NC-4.01.1kAVR/Arduino
Discipline
coseyfannitutti
304.9 × 122.8 mm170 parts2LCC-BY-NC-4.01.0k