book collections email follower instructable user
Picture of How to Make Pocket Sized IoT Weather Station

Hello reader!

In this instructable you will learn how to make small Weather Cube using the D1 mini(ESP8266) which is connected to your home WiFi, so you can look at it's output anywhere from earth, of course as long as you have internet connection. Overall making this project isn't too difficult nor resource heavy, so it will be perfect as your first IoT project. So let's get started.

PS: Keep in mind that this is my first Instructable so not everything will be perfect. :)

Step 1: Resources

As I mentioned in the introduction, this project is very easy to construct and doesn't require too much components. Here is the parts list:

Electronic Components:

WeMos D1mini


I2C OLED Display(128x64)

1.5mm Brass Rod or Iron Rod

NOTE: If you want more info about theese parts for ex. where to get them, you can look into Step 7!

Tools for prototyping and testing the circuit:


Jumper wires

USB wire - Micro USB Type B to USB Type A


Soldering iron

Bench vice - not mandatory

Small hammer - not mandatory

onetruegod1 month ago
It's a cute build. Well done.
ViktorDemcak (author)  onetruegod10 days ago
Thank you!
alcurb1 month ago
I like the open frame "enclosure". I'm a nerd in that I like to open up devices to see what makes it tick. Your design satisfies that curiosity.
ViktorDemcak (author)  alcurb10 days ago
DanP2311 month ago
Did you use your mobile to upload the code? If so, did you use an OTG cable or WiFi? I have a NodeMCU8266 I need to upload code to.
Dan LaPine
ViktorDemcak (author)  DanP23110 days ago
I used Arduino IDE on my PC.
pgs0709471 month ago
Nice project and useful.
The "frame" is a bit unusual and normally only seen in full size equipment like portable generators and compressors. I've seen compressors where the frame is use to store the compressed air. Clear acrylic is also possible or even Lego Technical.
For stuff like brass rod and sections, look at model-making supplies, typically railways.
Well done and thanks for publishing
ViktorDemcak (author)  pgs07094710 days ago
BerenV1 month ago
Nice design! In the first paragraph, you put "ESP82660" instead of "ESP8266".
ViktorDemcak (author)  BerenV10 days ago
Thank you for notifying me. Fixed it!
DanielW3751 month ago
Pretty cool. Although, I didn't know what a BME280 was and your article didn't mention. I'd recommend adding a description to the Electronic Components that it's the actual sensor for temperature, humidity, pressure, etc.
ViktorDemcak (author)  DanielW37510 days ago
Added it!
I’d really like to work with my students to build this device. I don’t have much background in electronics and it would really help to have an explanation of the parts and where to get them.
ViktorDemcak (author)  ruth.pershing10 days ago
I made the project. But I'm having some troubles. The display is not showing anything. I used the I2c scanner and changed the adresses for the display and the bme280 according to the printed adresses. And I'm using a compatible ssd1306 128x64 display. I also checked the wirings multiple times.
Any suggestions anyone?
ViktorDemcak (author)  wildatheart12310 days ago
Try to check the display with different code or the Adafruit GFX example. If it still does't work, it might be faulty display.
sjoerdw115 days ago
How do I add a 5V battery?
sjoerdw115 days ago
I did build this project on a breadboard, but when I wanted to upload the provided code I got error messages. The first one was me erronously assuming the Arduino IDE had this board available, but it turned out I had to use the board manager to add the board to the list of available boards (see this video for instructions:
Once the WeMos D1 was in the list of boards I could start to compile the code and upload it to the board. But I got compile errors. It turns out one has to install a bunch of libraries which are not automatically installed or readily available: BlynkSimpleEsp8266, Adafruit_Sensor, Adafruit_BME280, Adafruit_GFX and Adafruit_SSD1306. These libs can be found either online or already available using the Libraries Manager of the Arduino IDE. After this, the upload compiled fine and it all worked! Maybe you can update your instructions with this information.

Of course I like your project, otherwise I wouldn't have build it ;-). Thanks, this was also my very first step/attempt to use IoT.
Erwin66 made it!24 days ago
Had quite some problems with the oled. Bought it on Ali and it gave only snow while the Blynk app worked perfectly. It appeared that I had to use the u8g2 library and after trying several displays finally found out that mine was U8G2_SH1106_128x64_NONAME_F_HW_I2C. This was my first Arduino experience and luckily there are a lot of users that had same problems as I which in the end helped me to successfully make it work. But without internet I would have never succeded.
Cleyton made it!1 month ago
Thanks for the guide. I made one, dropped the screen from it, and have it plugged into my server in the loft. I can now check the readings using Blynk, as per your guide. Nice one!
Cleyton1 month ago
Could you post more pictures of the rear of the cube, please? I'm trying to see how you put it all together, and can't work out the solders.
carlippo1 month ago
methodman34 made it!2 months ago
First ever project, struggled a bit with finding the correct library's and a few dodgy connections. also my bmp280 is labelled slightly different, but i figured it out.
get it in a case next!

20190717_215647 (2).jpg
PeterM563 made it!3 months ago
It works! It is my first IoT project.I will create some enclosure now. Thank you Viktor.
ViktorDemcak (author)  PeterM5633 months ago
dew_it4 months ago
There's an error in the materials list btw, says BME250 then you talk about using the BME280 in the instructions. Other than that super cool project!
ViktorDemcak (author)  dew_it4 months ago
Fixed! Thank you.
HippyNerd4 months ago
Nice example of freeform prototyping
I love the way it is structured with the rods :)
ViktorDemcak (author)  Penolopy Bulnick4 months ago
Thank you :)
MatejHantabal4 months ago
Can this be taken on the go? Seems very fragile and also reliant on an external power source, since there is no battery. It also doesn't seem very weatherproof. Maybe a V2? ;)
ViktorDemcak (author)  MatejHantabal4 months ago
1. Yes, it can be taken on the go, total size is about 3cm. 2. It isn’t that fragile, can hold about 3kg on top without breaking or it can survive drop from 1,5m without any problems. 3. Yes, it has to be powered with external power but if you want you can just plug it in your phone or add small battery to it. 3. Weatherproofing can be easily solved by spraying it with shoe water resistance spray, just make sure to cover up main part of display and port. 4. Ill most likely not make V2, maybe something different but in the same style. Thanks.