Skip to main content

Smart Summer Hat

Rust-powered Portable Smart Summer Hat

info

Author: Kaan UGUR
GitHub Project Link: https://github.com/UPB-FILS-MA/project-kaanmeister

Description

Beat the heat with my innovative SmartSummer Hat powered by Rasberry Pi Pico and programmed in Rust language. This project combines practical functionality with modern technology to provide a refreshing solution for those really hot summer days.

Features:

1-Temperature Sensing: Equipped with a precise temperature sensor, Smart Summer Hat continuously monitors the temperature to ensure your comfort.

2-Activate Cooling: When the temperature rises above the hat springs into action. A DC motor, cleverly disguised as a fan, kicks in to provide instant relief from the heat.

3-Visual and Audible Alerts: Stay informed about changing temperatures with a built-in LCD display that showcases the current temperature in Celcius. Moreover, a buzzer emits a warning sound when temperatures reach uncomfortable levels.

4-User Interaction: Take control of your comfor with the press of a button. When the temperature alarm sounds, users have the option to activate the cooling fan by simply pressing a button located on the hat.

5-LED Indicator: A red LED indicator illuminates when temperatures soar, providing a visual cue alongisde the audible alert, ensuring you never miss a warning.

How it Works:

Using Rust Programming language, my Rasberry Pi Pico-based system reads the temperature data from the sensor every second. If the temperature exceeds the predefined threshold, the system triggers both visual and audible alerts, Users are prompted to activate the cooling fan by pressing the button. Once activated, the DC Motor converts electrical energy into a refreshing breeze, offering instant relief from the heat.

Benefits:

1-Comfort on the GO: Smart Summer Hat ensures comfort wherever you go.

2-Customizable Design: the Smart Summer Hat can be custmized to suit individual preferences and style, making it a versatile accessory for any summertime activity.

Conclusion:

Say goodbye to sweltering summer days and hello to cool comfort with Smart Summer Hat. Experience the perfect blend of technology and convenience as you stay cool and refreshed wherever your adventures take you!

Motivation

As someone who hates hot weather, the idea for the Smart Summer Hat was born out of my own frustration with sweltering temperatures. The Smart Summer Hat is more than just a project. it is a personal quest to reclaim comfort, improving programming skills, enjoy the outdoors, and make a positive difference in the world.

Architecture

Project will look more or less like the following diagram:

Diagram of the connections

The project has the following architecture:

1-Rasberry Pi Pico: The core of the system, Rasberry Pi Pico serves as the microcontroller unit (MCU) that manages all operations of the project. It interacts with and controls all the components.

2-Temperature Sensor: Connected to the Rasberry Pi Pico via I2C (Inter-Integrated Circuit), The temperature sensor continuously monitors the ambient temperature.

3-DC Motor (FAN): The DC motor functions as a fan to provide airflow when activated. Connected to the Rasberry Pi Pico via PWM (Pulse Width Modulation).

4-LCD Display: The LCD display serves as the user interface, showcasing the current temperature in Celcius. Connected to the Rasberry Pi Pico via I2C.

5-Buzzer: The buzzer serves as an audible alert system. Connected to the Rasberry Pi Pico via PWM. The buzzer's fequency and intensity can be modulated to emit different warning sounds based on the temperature level.

6-LED Indicator: The LED indicator offers a visual cue to accompany the audible alert. It is directly controlled by the Rasberry Pi Pico's GPIO pins.

7-Button: When pressed, the button triggers the Rasberry Pi Pico to activate the cooling fan. Connected to the Rasberry Pi Pico's GPIO pins.

Log

Week 6 - 12 May

  • I already had the all components and I tried to learn something more about Rust fundamentals.
  • I kept getting errors and I tried to solve them sometimes it took even hours, with debuging them I actually learned the logic behind it.
  • I tried to solve more things and if it was possible added more things for hardware and software parts.

Week 7 - 19 May

  • I improved the hardware part and made the connections more understandable.
  • I worked on prototype to show main idea I tried to make it somehow with using even chopsticks and incenses.
  • At the same time still did not make all the components work and I am still working on the codes.

Week 7 - 19 May

  • Until now I kept working on hardware more to find better idea.
  • I still had some problems with software part but I solved and project is apparently fully functional.
  • I improved the prototype and I made the last - touches the project's hardware part is also done.
  • I will detail the parts with using some pictures.

Week 20 - 26 May

Hardware

Hardware Components used in the Smart Summer Hat project:

1-Rasberry Pi Pico: Microcontroller unit responsible for managing all operations.

2-Temperature Sensor: Monitors ambient temperature and communicates with the Rasberry Pi Pico

3-DC Motor (Fan): Provides airflow for cooling.

4-LCD Display: Shows the current temperature in Celcius.

5-Buzzer: Emits warning sounds.

6-LED: Provides visual alerts.

7-Button: Enable user interaction, triggering actions such as activating the cooling fan.

8-A Hat: A prototype hat to make the project portable.

Additional Pictures of Project.

Pictures of the hardware.

Picture of Hardware

Picture of hardware from above:

From Above

Picture of hardware from front:

Picture of Hardware

Additional Pictures of the prototype

This is just a unprofessionally prototype to show the main idea. I am still working on it.

Picture of the prototype:

Prototype from side:

Picture of Prototype

Prototype from front:

Picture of Prototype

After submitting the prototype to show the main idea, I worked on the project more and I have the final looking under below!

Picture of the project before building. I decided to use a battery for my project ( More spesifically for the Motor Driver ) instead of using a baterry I decided to use Arduino. ( Only 5V and GND Pins are used!) Before Building

Picture of the project from front Front Picture

Picture of the project from side Side Picture

Picture of the project from back Back Picture

Schematics

Schematic of the project on KiCad Application.

Schematic of the project with using KiCad

Bill of Materials

DeviceUsagePrice
Rapspberry Pi Pico HThe microcontroller42 RON
BMP 280Temperature Sensor10 RON
DC Motor (FAN)DC Motor for FAN10 RON
1602 DisplayLCD Display25 RON
Jumper Wires (Female - Female)Female - Female Wires for connections7 RON
Jumper WiresMale - Male Wires for connections8 RON
Breadboardx2 Breadboard for all other connections18 RON
Buzzer Set (Active - Passive)Active and Passive Buzzer Components5 RON
LED SETLeds16 RON
ButtonPush Button1 RON

Software

LibraryDescriptionUsage
ag-lcdDisplay LibraryUsed for I2C LCD Display
embassy-rpRP2040 PeripheralsUsed for accessing the peripherals
embassy-timeTime LibraryUsed for Timeouts and Delays
PWMPulse-Width ModulationUsed for Buzzer
embassy-executorExecutor for Rust Embedded SystemsUsed for task scheduling and asynchronous programming
embassy-usb-loggerUSB Logger for embassyUsed for logging messages over USB
GPIOGPIOUsed for interacting with GPIO Pins
embassy-usb-loggerUSB Logger for embassyUsed for logging messages over USB
  1. Pinouts for RP
  2. Crates
  3. Rust for Embedded Systems
  4. RP2040 Datasheet
  5. Embassy Documents
  6. Rust For Embedded Wyliodrin
  7. How to use Motor Driver ...