Hey all,
This is my first ever post here. Also my first steps into Kicad and PCB design. I’m not a “good electronics engineer”, but i know how stuff works.
I had an idea of making an alarm clock that integrates neatly with Home Assistant. The idea is the following:
- everything runs on an ESP32
- 2 4 digit LCD displays (based on TM1637 https://www.aliexpress.com/item/32866425287.html). 1 for showing temperature, 1 for the time)
- BME280 for temperature (and humidity… but not needed actively, as i want to display tempetature only. Humidity/pressure are for HA only)
- LDR to limit the brightness of the LCD when it gets dark, bright during the day
- Buzzer for those who don’t want the next part, but are happy with simple wakeup tunes based on rtttl
- max98357 I2S DAC + amp which can drive a small speaker. Currently in my breadboard setup i use the PCM5102 and a PAM8603
- 2 buttons, fully configurable in home assistant to snooze, open/close curtains, control lights… whatever you want, configurable in home assistant. Uses the internal pull-up resistor of the esp32, so not on the schematic
- USBC powered (with ESD module for safety as well as a ams1117-3.3V linear regulator)
- a 1W (max) LED, driven by a mosfet, dimmable throuwh PWM by the ESP32
- wireless charging pad on the top, so i can (very slowly, 5W max) charge my phone over night. This is ordered, not in the schematic as it just requires 5V from the USB-C port
other features are welcome… maybe a 3rd button? other things/ideas? We have IO pins!
Advantages: never set the time of your alarm clock as it uses NTP/home assistant as time server. Control your wakeup time from your calendar/other setup in HA, use the buttons on the alarm clock to control whatever you like!
So the plan:
- I put it all on a breadboard and it all works (noise issue on the PCM5102, but working on that)
- I have the code working on esphome for everything above, but not with the “right” mosfets/… most are just on their own pcb's from an arduino starter set
Next steps, this is where i need help:
- getting the circuit built in kicad see attached schema. I think i have everything. Did i forget stuff? I tried getting the requirements as close as possible to the datasheets
- create a PCB from it:
but this is where it gets horribly difficult. I have no idea where to best put the LED, as it has to be on the side of the clock, the BME280 has to stay “outside”, the LDR needs to extend through the enclosure, where do the buttons come out, …
- once i have the PCB design, i’ll hop into fusion 360 to design an enclosure where it all fits. I would expect 1 PCB to host most of it. Some "longer leads" for stuff. I am very flexible here.
- Done.
Now… i don’t have ANY SMD soldering material, no idea which components/footprints to use/are best. Example: which MOSFET, which ESD, which type/size/… resistors/capacitors? the LED will use max 300-350mA when it drops 3V. Did i make the correct electronic connections/protections/decoupling/…?
So, how do I go about this? The schematic is attached and i hope someone will/can help me make this a success and i can just make the whole project, incl gerber files, … freely available, including the 3d print designs, to all interested people.
Or am I doing it wrong here and should i just build the things from existing pre-built buttons/sensors, wire it up with cables and forget the PCB idea?
But then again... how cool would it be if this design could be used by anyone interested home assistant in the bedroom!