Introduction: Weather Lamp
Weather Lamp is a RGB lamp made using Wiznet Pico WizFi360 and WS2812B LED's. The lamp simulates the real-time weather using the openweathermap.org API. It read parameters like cloud intensity, temperature, time and try to mimic the cloud colors, sun/moon and change the base color as temperature range.
Thank You NextPCB:
This project is successfully completed because of the help and support from NextPCB. NextPCB is one of the most experienced PCB manufacturers in Global, has specialized in the PCB and assembly industry for over 15 years. Not only could NextPCB provide the most innovative printed circuit boards and assembly technologies in the highest quality standards, the fastest delivery turnaround as fast as 24 hours.
Guys if you have a PCB project, please visit their website and get exciting discounts and coupons.
Only 0$ for 5-10pcs PCB Prototypes:Nextpcb.com/pcbprototype
Register and get $100 from NextPCB: Nextpcb.com/coupon
Supplies
To get high-quality electronic components at an extremely low cost, hqonline.com is the perfect site. They have labels from all the international brands, so you can find the best components for your device without spending a lot of money. This offers you the best value for your money.
Step 1: Designing & 3D Printing
- I have designed the model in Fusion360.
- Download the STL Files and 3D print them.
- By clicking on the 3D Model Link you can view the model in your PC/Mobile browser and the Model can be edited in Fusion360 software.
Step 2: Circuit Connection
- Connect the WizFi 360 and WS2812B LEDs as shown in circuit diagram.
Step 3: Assembly
- Assemble all the parts together using quick glue.
Step 4: Getting Openweathermap API Key
- Go to openweathermap.org and create your account and verify it.
- Now login to your account and click on you profile or right-top corner and go to My API Keys.
- Copy the API Key that you see this will be used later in Step 6.
Step 5: Arduino Libraries Setup
- First go to Files->Preferences and copy paste the following URL in Additional Boards Manager URLs:
https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
- Go to Tools->Boards->Boards Manager and search for Raspberry Pi Pico/RP2040 and dinstall it.
- Download the WizFi360_arduino_library-main.zip , Go to Sketch->Include Library->Add .Zip Library and select the downloaded Zip file.
- Now got to Sketch->Include Library->Manage Libraries and Search for ArduinoJson, Adafruit_NeoPixel and install them.
Step 6: Code Changes
- Download the Arduino Code and make the followig changes
- At Line.No 20 you have to edit your Wifi Name(SSID) and Password.
/* Wi-Fi info */
char ssid[] = "SSID"; // your network SSID (name)
char pass[] = "PASWORD"; // your network password
- At line 153 I have added 5 to hour and 30(Indian time zone IST 5:30) to Minutes and applied a maths to convert the APIs GMT time into ISt time zone.
- You may have to change the number(5 and 30) according to your tiem zone.
h = (h + 5) % 24;
Serial.println(h);
minute = (m + 30) % 60;
- At line 282 you have to enter your locations Longitude, Latitude and You accounts openweathermap API key.
// send the HTTP PUT request
client1.println(F("GET /data/2.5/weather?lat=17.6795&lon=77.6051&appid=43f22249d3d42ec***********ca809b HTTP/1.1"));
Step 7: Code Compile and Uplaod
- Connect your device usinh MicroUSB cable.
- Select the board type and port from tools.
- Now click on uplaod code, it will automatically compile and uplaod the code.
- After code is succesfully uloaded the device will connect with provided wifi and show the output.
Note: I am using My PCs USB as the power source for the Weather Lamp, you can use a 5V adapter or a 3.7V Lithium Ion battery.

Participated in the
CNC and 3D Printing Contest
6 Comments
Question 3 months ago on Step 7
I'm using a Raspberry Pi Pico W, and I'm having a hard time getting the script to run properly since the libraries are different. Has anyone tried this using a ras pi pico w? I'm very new to coding/engineering, so I may be completely off the mark here, but one thing I noticed is that the instructions say to connect the power source to the 3V3 OUT on the board, but most ras pi projects using the WS2812B LEDs that I've seen have the power connected to the VBUS pin on the board. Would this make a difference?
OP-Thank you for creating such a cool project! If I can get it up and running, I intend to gift it to my dad who is a meteorologist for Christmas!
Question 3 months ago on Step 7
I have followed the steps to completion once I uploaded the code this was the error I received. I cannot seem to get the ino file to compile properly any help would be greatly appriceated.
4 months ago
Had to modify the base to permit room for the connector from being pinched and the stem to provide more mounting support but overall a fun project.
Question 4 months ago
Could you add a text screen with the tempature to the lamp
Tip 4 months ago
it would be nice if you added the stl. files
Reply 4 months ago
Please check step 1 I have added STL files ZIP