DIY Air Filter

by benoit11 in Circuits > Raspberry Pi

446 Views, 4 Favorites, 0 Comments

DIY Air Filter

20210611_202838.jpg

Nice, clean air in your room who doesn’t like that?

Hey, I’m Benoit and I’m a student in MCT.
For our final project of the year, we needed to make a project from scratch with all the things we learned through the year.

I chose to make an air filter.
The goal was the make sure it was super easy to control the air filter. Planning jobs was also a feature I wanted to include. The device needed to integrate with the room flawless.

Planning


It all starts with planning, making sketches, doing some research, and making sure you can do all the things you want in the limited time you get. In this case 4 weeks.

Design software


The software is sometimes overlooked I feel. This is why I wanted to focus on this a little bit more. A good device with bad software is most of the time a bad product in general.

I started with writing down which features I wanted to include:
- Manual slider to adjust the fan speed

- Planning a job in time ( example: I don’t want to filter my room at 2 pm)

- Seeing the temperature

- Some graphs with data ( always fun :) )

- …

After I wrote down most of the features I started with making my wireframes. At this stage, not all the features were final. Some will change, some will be removed and some will be added. This is something I check with user testing. I created some wireframes and let another person go through them while they were explaining to me what they saw. This is a great way to see what is clear and what isn’t.

After I used the feedback from others to change my wireframes I started with the design of the front end.

I looked around on Dribbble & Behance to get some inspiration. I also had some nice colors in mind to use in the design.

Mobile-first was the way I was thinking while making my design. After the mobile version was done I created the desktop design based on the components I used in the mobile design.

I also thought about some animation in this stage. This is always a nice bonus.

Design Software

wireframes.png
Screenshot 2021-06-11 at 20.46.07.png
Screenshot 2021-06-11 at 20.45.58.png

The software is sometimes overlooked I feel. This is why I wanted to focus on this a little bit more. A good device with bad software is most of the time a bad product in general.

I started with writing down which features I wanted to include:
- Manual slider to adjust the fan speed

- Planning a job in time ( example: I don’t want to filter my room at 2 pm)

- Seeing the temperature

- Some graphs with data ( always fun :) )

- …

After I wrote down most of the features I started with making my wireframes. At this stage, not all the features were final. Some will change, some will be removed and some will be added. This is something I check with user testing. I created some wireframes and let another person go through them while they were explaining to me what they saw. This is a great way to see what is clear and what isn’t.

After I used the feedback from others to change my wireframes I started with the design of the front end.

I looked around on Dribbble & Behance to get some inspiration. I also had some nice colors in mind to use in the design.

Mobile-first was the way I was thinking while making my design. After the mobile version was done I created the desktop design based on the components I used in the mobile design.

I also thought about some animation in this stage. This is always a nice bonus.

Design Case

filter.png
render_white_8.jpg
render_white_4.jpg
schets.png
Screenshot 2021-05-28 at 17.50.14.png

Designing the case is always a fun stage. To be honest I’m a little bit lazy. But sometimes that a good thing. Because if you want to create something complex then the laziest person will often come forward with the simplest idea to solve the problem. In this case, I wanted to make a case that was as simple as possible without giving up on the features that I needed.

That’s why I chose to build my case with a wood laser cutter and covering the sides with fabric. As a result? I’ve built the case in just a few hours. And it looked quite good.

If you chose the make a case with a laser cutter then it’s smart to design a model of your case in 3d software first. This step makes it super easy to draw the blueprint needed for the laser cutter to read ( In this case I used illustrator to draw the blueprint ). Doing some extra planning and creating a 3d model is a good way to avoid time-consuming mistakes.


After I came back from the laser cutter I was a matter of putting all the panels like a giant puzzle together and with some wood lime, it was done.


The final stage of the case was putting the fabric around. I did at the very last stage of the product which wasn't a good thing because I could probably do a much better job.

Material List

Screenshot 2021-06-11 at 20.53.59.png

Building Step1: Circuit

20210609_112153.jpg
Screenshot 2021-06-11 at 20.56.54.png
Screenshot 2021-06-11 at 20.57.01.png

The circuit is fairly simple. Everything is built around the Arduino. I used an Arduino because of its analog inputs and it’s easier to communicate with the sensors and fans in real-time.

The Raspberry Pi is just for hosting the website and database.
There are also different power supplies. 3,3v, 5V, and 12V. An LCD is attached to show the IP of the Pi which you need to connect to the dashboard.

3 sensors are included:
- Microphone

- Barometer

- Temperature sensor

Building Step2: Arduino Code

The Arduino code is fairly simple.

The Arduino can retrieve data from the 3 sensors and can decide how fast the fan can spin.

The setup is just uploading the code with the IDE to the Arduino.

Github

Building Step3: Raspi Fronted / Backend

The backend is made with Flask. Flask is based on python, this makes it easy to communicate with the GPIO pins.

In order to save data, I created a MySQL database that runs on maria DB on the pi.

The front end isn’t anything fancy I didn’t use any front-end frameworks.

To work on the code I used the ssh extension on visual studio code. This included automatic refresh when something changed in the code.

App: Github

Database: Github

Building Step4: Creating Case

20210608_164328.jpg
20210608_172718.jpg

The blueprint makes it easy to laser cut the panels for the case.

After that is done you can easily put everything together like a giant puzzle.

With fabric, you can cover the sides of the case to make it prettier.

Final Touches

Automations:

A nice thing to add is when starting the Raspberry pi the website also starts running. You can do this with a service.

Adding the service to /etc/systemd/system/ and enable it will do the job!

Enjoy!