## Inspiration

Not having to worry about coming home to feed our dog.

## What it does

Automatically dispenses food and water for the dog based on sensor readings. Will be connected to an app in the future so you can choose when to feed the dog.

## How we built it

Hooked up an Arduino Uno to a force sensor and a water level sensor. If the water and food levels are low, dispense food if it’s been 6 hours since the last meal and constantly dispense water.

## Challenges we ran into

The DC motor can’t be controlled by the Arduino so we needed to make a servo push a button. We didn’t have a transistor. This was the only way we could turn on the motor. We also were not able to hook the Arduino to WIFI because we were using an ESP 8266 shield. We were going to use the Blynk app to control the project over WIFI but the ESP wasn’t able to pass the information correctly.

## Accomplishments that we're proud of

We created what we wanted. An automated food and water dispenser.

## What we learned

Problem solving. Building circuits for the hardware. Learning how to connect hardware over WIFI.

## What's next for Feed The Dog

Connect the project to WIFI.
## Inspiration

We were inspired by plug for adaptors that allow for devices to be controlled over the internet and their power consumption monitored.

## What it does

The microcontroller onboard the ESP8266 controls relays to activate the outlets. Current sensors measure the current consumption, and this data is sent back to the web. Plots and graphics are generated using the streaming data. Outlets can be controlled via the web interface.

## How I built it

We built a custom circuit board to connect the WiFi module, relays, current sensors and other associated parts. Care was taken to build in safety features like fuses to the system, as mains voltage is being switched. On the web side, we created a webapp using Javascript and the d3 framework for graphics. This communicates to the server on the WiFi module using websockets to monitor information and to control the outlet.

## Challenges I ran into

We ran into an issue where the WiFi module would reset when the outlets were toggled via the web interface. This issue didn't present itself during testing without the web interface, so it was a surprise and a challenge to deal with.

## Accomplishments that I'm proud of

I'm proud of building a circuit board and doing the entire system design and implementation in a night. We used a number of new tools and components in the system, and working with them was exciting!

## What I learned

I learned that testing at each stage of hardware development is key, to avoid having a number of issues present themselves at once. Additionally, more testing with the hardware and software integrated would've given us more time to fix bugs.

## What's next for Smart Outlet

Packaging the system so that it is attractive and durable would be a future goal. Additionally, enhancing precision of the current measurements would give users more precise data, which could be important in some applications.
## Inspiration

Our inspiration for Smart Sprout came from our passion for both technology and gardening. We wanted to create a solution that not only makes plant care more convenient but also promotes sustainability by efficiently using water resources.

## What it does

Smart Sprout is an innovative self-watering plant system. It constantly monitors the moisture level in the soil and uses this data to intelligently dispense water to your plants. It ensures that your plants receive the right amount of water, preventing overwatering or underwatering. Additionally, it provides real-time moisture data, enabling you to track the health of your plants remotely.

## How we built it

We built Smart Sprout using a combination of hardware and software. The hardware includes sensors to measure soil moisture, an Arduino microcontroller to process data, and a motorized water dispenser to regulate watering. The software utilizes custom code to interface with the hardware, analyze moisture data, and provide a user-friendly interface for monitoring and control.

## Challenges we ran into

During the development of Smart Sprout, we encountered several challenges. One significant challenge was optimizing the water dispensing mechanism to ensure precise and efficient watering. The parts required by our team, such as a water pump, were not available. We also had to fine-tune the sensor calibration to provide accurate moisture readings, which took much more time than expected. Additionally, integrating the hardware with a user-friendly software interface posed its own set of challenges.

## Accomplishments that we're proud of

The rotating bottle, and mounting it. It has to be rotated such that the holes are on the top or bottom, as necessary, but the only motor we could find was barely powerful enough to turn it. We reduced friction on the other end by using a polygonal 3d-printed block, and mounted the motor opposite to it. Overall, finding an alternative to a water pump was something we are proud of.

## What we learned

As is often the case, moving parts are the most complicated, but we also are using the arduino for two things at the same time: driving the motor and writing to the display. Multitasking is a major component of modern operating systems, and it was interesting to work on it in this case here.

## What's next for Smart Sprout

The watering system could be improved. There exist valves that are meant to be electronically operated, or a human designed valve and a servo, which would allow us to link it to a municipal water system.