Desktop Weather Module
Hardware- 9 Devlogs
- 64 Total hours
A desktop weather module to show the current weather outside, future forecasts, and the temperature inside.
A desktop weather module to show the current weather outside, future forecasts, and the temperature inside.
Desktop weather (and room temperature) module that plugs into your computer!
I am immensely, majorly, colossally, incomprehensibly content! 😁
The UI looks good and… THE ENCLOSURE IS PRINTED!!!
The 3D print was fun but also sort of a pain to deal with. Since i had to get it printed at the library there were no iterations possible, this lead to holes not fitting because of tolerances and also the button plate (the piece connecting the buttons to the frame) was 1.5mm too thick and not able to be screwed down. i spent hours filing and drilling for it all to finally fit together.
I also forgot the rail for the inside of the enclosure. One piece has it but the other doesnt.😭
The UI wasnt too hard, just copying the photpea layout and doing some math for alignment. I did have to fix the endianness and change RGB to BGR as thats how it was being converted to a c array.
Welp, its been a nice time on stardance working on this project, but tomorrow’s the plane and im goin on vacation🥳
Hopefully I have the time to continue once i come back (mid september) but i’ll also have to catch up on a lot of school.
Desktop weather (and room temperature) module that plugs into your computer!
PAIN 💀
i had 2 days to get this code decent, I’ve been grinding day and night and atp idek if its worth it (24 hours till i leave for vacation)
The UI has honestly been the most annoying tedious part of this project. In hindsight, i definitely shouldve used LVGL and I dont know why i tried to have the UI look aesthetic. Maybe i should just go back to the basic one.
Im going to the library tmrw (or today ig) so hopefully the 3d print goes well. Anyways i should probably go sleep now, gn gang.
Desktop weather (and room temperature) module that plugs into your computer!
Exhilarating delightful resplendent news!🥳
I GOT THE TFT DISPLAY! It said it was going to come in August (like the 5th), BUT it came on wednesday!
Its basically August 1st rn. I won’t be able to truly finish the project until September (after vacation), however; I do think I can get the enclosure 3d printed and have it working with the breadboard (we’ll just imagine it isn’t there).
Desktop weather (and room temperature) module that plugs into your computer!
Unfortunate news 😭
The TFT display that is needed for this project was supposed to arrive last Thursday. Checked Amazon, now it’s saying it’s coming in August.
Usually this would be fine, but I’m going on vacation for the entirety of August, so I don’t think I would be able to work on/finish the project until I come back.
I’m using the TFT_eSPI Library to work with the display. If anyone knows of anything better which will make better graphics (maybe graphs based on weather data) lmk.
I’m also displaying more weather data, so I converted the speeds and angles into more familiar units (eg 300 degrees N = West North West).
Finally, I have it switch between scenes with only 1 button. I’m thinking of having the other Button for a forecast, but I cannot think of what to do with the 3rd button (maybe an on button?). Once again, suggestions would be appreciated.
Desktop weather (and room temperature) module that plugs into your computer!
Enclosure! 📦
I hit flow state working on this thing for the last couple of days. It was fun looking at different locking mechanisms that could be used to keep the components secure and also easily accessible. Ultimately, I decided on using screws to hold the buttons and TFT display down and then a rail with a protrusion on the end, which should hold the case together. Maybe in the future I could get rid of the buttons and make it entirely touchscreen (as the screen has a resistive touchscreen). All that’s left for the enclosure is making the PCB and adding mounting holes for it.
Something that made the process a little difficult was figuring out clearances and the tolerance of 3d printers. I’ve yet to print out the enclosure, so I’m not entirely sure it’ll work, but the snap-clicking mechanism is based on this. The display should come around Thursday this week, so until then I’ll just be working on the code and trying to use Wokwi to simulate it.
Feedback or ideas would be appreciated!
Components:
Desktop weather (and room temperature) module that plugs into your computer!
PCB!👨💻
Learning PCB design has been extremely interesting. There’s a lot of nuance in laying the components and traces. Honestly, I thought the hardest part would be the schematic, but that was by far the easiest (to make and to learn). However, the components and traces were really the most difficult part of design, as traces must have enough space to avoid crosstalk, and for that to happen, you should have an efficient layout of components.
In addition, with the display, I’ve spent some time learning the different types of serial communication like UART, I2C, and SPI (which is what the TFT display uses). Overall, probably spent over 20 hours the last couple of days just learning.
Still a lot to be done, but I feel like we’re getting closer!
Desktop weather station that plugs into your
ESP321602 LCD Display
DHT11 Temperature and Humidity Sensor
2kΩ Resistor
2x 330Ω Resistors
2x Buttons
9V Battery
Desktop weather station that plugs into your computer.
The bugs took the longest as there was a “Guru Meditation error” which i got around with some conditional checks and making sure that the pointers were initialized.
Also, I want to use a 0.96” oled screen as it would probably be more visually appealing and can also display more weather. Lmk if you guys know of anything better.
I’m working on making a weather display I could put on my desk. This is my first project after learning a bit about ESP32s and Arduino IDE. I want the module to be able to display the indoor climate and the current weather data.
What I’ve got so far:
Ideally, I’d use an OLED display as it has colours and higher definition for more information, but I only have the LCD, so that’s what we’re working with.
Also, I need to figure out how to power this, as I don’t want to have to use a battery pack.
Plans:
Lmk if you guys have some advice or recommendations