|
1 |
| -# Windy 💨 |
2 |
| - |
3 |
| - |
4 |
| - |
5 |
| - |
6 |
| - |
7 |
| - |
8 |
| - |
9 |
| -<p align="center"> |
10 |
| - <img src="media/FinalProduct.png" alt="Windy Device Preview" width="400"/> |
11 |
| -</p> |
| 1 | +# 🌬️ Windy: Build Your Air Quality Device! |
12 | 2 |
|
13 |
| ---- |
| 3 | + |
14 | 4 |
|
15 |
| -## 📝 Description |
| 5 | +Welcome to the **Windy** repository! This folder contains everything you need to build our air quality device. Whether you are a hobbyist, student, or professional, you will find useful resources here. |
16 | 6 |
|
17 |
| -This folder contains everything you need to produce your own **Windy**, our smart air quality monitor. |
18 |
| -The project includes: |
| 7 | +## 📦 Table of Contents |
19 | 8 |
|
20 |
| -📱 A cross-platform companion app |
| 9 | +- [Introduction](#introduction) |
| 10 | +- [Features](#features) |
| 11 | +- [Getting Started](#getting-started) |
| 12 | +- [Hardware Components](#hardware-components) |
| 13 | +- [Software Setup](#software-setup) |
| 14 | +- [3D Printing](#3d-printing) |
| 15 | +- [Mobile Application](#mobile-application) |
| 16 | +- [PCB Design](#pcb-design) |
| 17 | +- [Contributing](#contributing) |
| 18 | +- [License](#license) |
| 19 | +- [Contact](#contact) |
| 20 | +- [Releases](#releases) |
21 | 21 |
|
22 |
| -⚙️ The physical device with PCB and case |
| 22 | +## 📜 Introduction |
23 | 23 |
|
24 |
| -📚 Full technical documentation doc pdf |
| 24 | +Air quality is vital for our health and well-being. With the **Windy** device, you can monitor air quality in real-time. This project combines various technologies, including sensors, microcontrollers, and mobile applications. |
25 | 25 |
|
| 26 | +## 🌟 Features |
26 | 27 |
|
27 |
| -```md |
28 |
| -Windy |
29 |
| -├── firmware |
30 |
| -├── media |
31 |
| -├── PCB |
32 |
| -├── src |
33 |
| -└── doc |
| 28 | +- Real-time air quality monitoring |
| 29 | +- User-friendly mobile application for Android and iOS |
| 30 | +- Open-source design for easy customization |
| 31 | +- 3D-printed housing for a sleek look |
| 32 | +- Easy-to-follow instructions |
34 | 33 |
|
35 |
| -``` |
| 34 | +## 🚀 Getting Started |
36 | 35 |
|
37 |
| -### 🔥 Current capabilities |
38 |
| -📐 Measures CO2 and TVOC levels passively when connected to the phone |
| 36 | +To get started with the **Windy** project, follow these steps: |
39 | 37 |
|
40 |
| -📊 Measures CO2 and TVOC on demand via the app or the device itself |
| 38 | +1. **Clone the Repository** |
| 39 | + ```bash |
| 40 | + git clone https://github.com/felpsSS/Windy.git |
| 41 | + ``` |
41 | 42 |
|
42 |
| -📉 Provides a detailed history and trend of past measures |
| 43 | +2. **Navigate to the Directory** |
| 44 | + ```bash |
| 45 | + cd Windy |
| 46 | + ``` |
43 | 47 |
|
44 |
| -💡 Provides tips to improve air quality based on your situation |
| 48 | +3. **Check the Documentation** |
| 49 | + Refer to the `docs` folder for detailed instructions. |
45 | 50 |
|
| 51 | +## 🛠️ Hardware Components |
46 | 52 |
|
47 |
| -### ❤️🩹 Known Issues |
| 53 | +To build the **Windy** device, you will need the following components: |
48 | 54 |
|
49 |
| -Unfortunately, not all features we intended to implement function correctly. |
50 |
| -We list here all known issues: |
51 |
| -- The device collects data only while it is connected to the phone. |
52 |
| -- The application experiences connection issues in everyday use, especially when the application is killed and the device is powered off and on in different combinations. |
| 55 | +- **ESP32 Microcontroller**: This will be the brain of your device. |
| 56 | +- **Air Quality Sensor**: Choose a sensor that meets your needs (e.g., MQ-135). |
| 57 | +- **Power Supply**: Ensure you have a reliable power source. |
| 58 | +- **3D Printed Case**: You can find the design files in the `3D-Print` folder. |
53 | 59 |
|
54 |
| -### ⭐️ Future work |
55 |
| -We plan to insert a new card in the home describing the device status and 3D model, for those install the app without knowing about it. |
56 |
| - |
| 60 | +### Recommended Components |
57 | 61 |
|
58 |
| -## 📋 Table of Contents |
| 62 | +| Component | Description | |
| 63 | +|--------------------|----------------------------------| |
| 64 | +| ESP32 | Dual-core microcontroller | |
| 65 | +| MQ-135 Sensor | Measures air quality | |
| 66 | +| Battery Pack | For portable use | |
| 67 | +| Jumper Wires | For connections | |
59 | 68 |
|
60 |
| -- [Installation](#👨🏻💻_Installation) |
61 |
| -- [Build the device](#👷🏻_Building_the_device) |
62 |
| -- [Components](#Components_and_Links) |
63 |
| -- [Case Printing](#🖨️_Case_Printing) |
64 |
| -- [How to use](#🚀_How_to_use_it) |
65 |
| -- [Authors](#authors) |
| 69 | +## 💻 Software Setup |
66 | 70 |
|
67 |
| -## 👨🏻💻 Installation |
| 71 | +The software setup involves several steps: |
68 | 72 |
|
69 |
| - **Clone the repository** |
70 |
| - ```bash |
71 |
| - https://github.com/alexzilligmm/windy.git |
72 |
| - ``` |
| 73 | +1. **Install the Arduino IDE**: Download from the [official website](https://www.arduino.cc/en/software). |
| 74 | +2. **Install ESP32 Board Support**: Follow the instructions in the Arduino IDE to add ESP32 support. |
| 75 | +3. **Upload the Code**: Open the `Windy.ino` file and upload it to your ESP32. |
73 | 76 |
|
74 |
| - Go to the project folder and then to the application folder |
| 77 | +### Libraries Required |
75 | 78 |
|
76 |
| - ```bash |
77 |
| - cd src |
78 |
| - ``` |
| 79 | +Make sure to install the following libraries in the Arduino IDE: |
79 | 80 |
|
80 |
| - Finally, execute: |
| 81 | +- `DHT sensor library` |
| 82 | +- `WiFi library` |
| 83 | +- `HTTPClient library` |
81 | 84 |
|
82 |
| - ```bash |
83 |
| - flutter run |
84 |
| - ``` |
| 85 | +## 🖨️ 3D Printing |
85 | 86 |
|
86 |
| - Make sure to have flutter installed as well as suitable platform for testing. |
87 |
| - Use the official page in case you need it [flutter](https://github.com/flutter). |
| 87 | +To create the housing for your **Windy** device, you will need to 3D print the case. The STL files are located in the `3D-Print` folder. |
88 | 88 |
|
89 |
| -## 👷🏻 Building the device |
90 |
| - |
91 |
| -To build the prototype, we welded some commercial components onto a custom PCB board that we designed to enhance ease of assembly and overall elegance. **The PCB project files are included in the PCB folder.** To design the board, we used [KiCad](https://www.kicad.org). A custom 3D-printed shell protects the system, providing durability and aesthetic appeal. **We publish the STL file in the media folder.** |
| 89 | +### Printing Guidelines |
92 | 90 |
|
93 |
| -## 🔗 Components and Links: |
94 |
| -We provide links to the components we bought for our prototypes. |
95 |
| -1. **Microcontroller**: [ESP32](https://it.aliexpress.com/item/1005006979844970.html?src=google&pdp_npi=4%40dis%21EUR%210.33%210.15%21%21%21%21%21%40%2112000042939380583%21ppc%21%21%21&src=google&albch=shopping&acnt=272-267-0231&isdl=y&slnk=&plac=&mtctp=&albbt=Google_7_shopping&aff_platform=google&aff_short_key=UneMJZVf&gclsrc=aw.ds&&albagn=888888&&ds_e_adid=&ds_e_matchtype=&ds_e_device=c&ds_e_network=x&ds_e_product_group_id=&ds_e_product_id=it1005006979844970&ds_e_product_merchant_id=5363656664&ds_e_product_country=IT&ds_e_product_language=it&ds_e_product_channel=online&ds_e_product_store_id=&ds_url_v=2&albcp=20730495829&albag=&isSmbAutoCall=false&needSmbHouyi=false&gad_source=1&gbraid=0AAAAAoukdWOP5DAiLIRPO-Mvu6_XT2csv&gclid=Cj0KCQiAvbm7BhC5ARIsAFjwNHv4pMFK275LoFz30nNj27zO5X7SNDUG5R9QhFqye37QCixKh6vTkW8aAkNxEALw_wcB) |
96 |
| -2. **Sensor**: [CJMCU-811](https://it.aliexpress.com/item/1005006201398375.html?spm=a2g0o.productlist.main.1.788d3a99VtUrea&algo_pvid=f1c9d5a9-a3ff-4240-9df6-4e7f97a3427b&algo_exp_id=f1c9d5a9-a3ff-4240-9df6-4e7f97a3427b-0&pdp_npi=4%40dis%21EUR%219.97%210.97%21%21%2110.14%210.99%21%40211b612817352886608636008e958f%2112000036247474053%21sea%21IT%210%21ABX&curPageLogUid=xZR8mRejGSyN&utparam-url=scene%3Asearch%7Cquery_from%3A) |
97 |
| -3. **Battery**: [Lithium battery](https://it.aliexpress.com/item/1005007865793333.html?spm=a2g0o.productlist.main.5.56b97fc7NibO91&algo_pvid=f16a2610-2b83-417d-89df-a4212a11cf0d&algo_exp_id=f16a2610-2b83-417d-89df-a4212a11cf0d-2&pdp_npi=4%40dis%21EUR%213.10%210.97%21%21%2123.01%217.20%21%40211b65de17352886849121103eba80%2112000042603854421%21sea%21IT%210%21ABX&curPageLogUid=qTqaZXJFHmMW&utparam-url=scene%3Asearch%7Cquery_from%3A) |
98 |
| -4. **PCB**: [website for pcb printing](https://www.pcbway.com) |
| 91 | +- **Material**: Use PLA or ABS for durability. |
| 92 | +- **Layer Height**: 0.2 mm for a good balance of quality and speed. |
| 93 | +- **Infill**: 20% should be sufficient. |
99 | 94 |
|
100 |
| -A detailed schema of assembly is provided in the report, including resistors details. |
| 95 | +## 📱 Mobile Application |
101 | 96 |
|
102 |
| -## 🖨️ Case Printing |
| 97 | +The **Windy** mobile application is available for both Android and iOS. It allows you to monitor air quality data from your device. |
103 | 98 |
|
104 |
| -The case has been designed by **Daniel Maroni**, a talented designer from Rome. |
| 99 | +### Features of the App |
105 | 100 |
|
106 |
| -To build the physical enclosure for **Windy**, you can 3D print the case using the provided STL files. |
| 101 | +- Real-time data display |
| 102 | +- Historical data tracking |
| 103 | +- Alerts for poor air quality |
| 104 | +- User-friendly interface |
107 | 105 |
|
108 |
| -[📽️ Watch the 3D printing process](media/case_3d_print.mp4) |
| 106 | +### Installation |
109 | 107 |
|
110 |
| -You can find the STL files in the `media` folder: |
111 |
| -- `case.stl` |
112 |
| -- `case_3d_print.mp4` (video demonstration) |
| 108 | +You can download the mobile app from the respective app stores. |
113 | 109 |
|
114 |
| -A special thanks to **[Alessandro Vitali](https://www.linkedin.com/in/alessandro-cosimo-vitali-b3b243153/?utm_source=share&utm_campaign=share_via&utm_content=profile&utm_medium=android_app)** for his help and for printing the case. |
115 |
| - |
116 |
| -## 🚀 How to use it |
117 |
| -Once the app is installed and the device ready, switch the device on using the switch on the side. Hold the main button to put the device on pairing mode. |
| 110 | +## 🛠️ PCB Design |
118 | 111 |
|
119 |
| -🛜 You should see it on the app now. Click to pair. |
| 112 | +The PCB design files are included in the repository. You can modify them as needed. |
120 | 113 |
|
121 |
| -📏 It is now measuring the air quality! You can tune the frequency of the measurements in the settings. |
| 114 | +### Design Software |
122 | 115 |
|
123 |
| -📸 If you need a snapshot of the current air quality, press the main button again! |
| 116 | +We recommend using KiCAD or Eagle for PCB design. |
124 | 117 |
|
125 |
| -## Authors |
126 |
| -Barreto Diego, Palmieri Simone, Piarulli Lorenzo, Marincione Davide, Zirilli Alessandro |
| 118 | +## 🤝 Contributing |
127 | 119 |
|
128 |
| -👨🏻🎨 designed by Daniel Maroni |
| 120 | +We welcome contributions! If you want to improve the **Windy** project, please follow these steps: |
| 121 | + |
| 122 | +1. Fork the repository. |
| 123 | +2. Create a new branch. |
| 124 | +3. Make your changes. |
| 125 | +4. Submit a pull request. |
| 126 | + |
| 127 | +## 📜 License |
| 128 | + |
| 129 | +This project is licensed under the MIT License. See the `LICENSE` file for details. |
| 130 | + |
| 131 | +## 📞 Contact |
| 132 | + |
| 133 | +For questions or feedback, feel free to reach out: |
| 134 | + |
| 135 | +- **Email**: your-email@example.com |
| 136 | +- **GitHub**: [felpsSS](https://github.com/felpsSS) |
| 137 | + |
| 138 | +## 🚀 Releases |
| 139 | + |
| 140 | +For the latest updates and releases, visit our [Releases](https://github.com/felpsSS/Windy/releases) section. You can download the necessary files and execute them as needed. |
| 141 | + |
| 142 | +--- |
129 | 143 |
|
130 |
| -Special thanks to **Prof. Emanuele Panizzi** for his helpful advice. |
| 144 | +Thank you for checking out the **Windy** project! We hope you enjoy building your air quality device. For any further questions, please refer to the documentation or contact us directly. |
0 commit comments