Home - Grimcheese/GardenStation GitHub Wiki
Garden Station Project
Garden Station is a web application that uses micro-controllers with sensors to gather data in a garden and display that data in a web application. The web server uses a LAMP stack.
Garden Station is designed to track:
- Soil moisture levels
- Temperature
- Humidity
- Wind speed and direction
- Rainfall
Using multiple microcontrollers you are able to gather data in different sections of your garden and different types of data as required by your own needs.
flowchart TD
id1["GardenStation"]
id3["Sensor #1"]
id4["Sensor #2"]
id5["Sensor #3"]
id6["Sensor #4"]
id7["Weather Station"]
id8[Users]
id3 --> id1
id4 --> id1
id5 --> id1
id6 --> id1
id7 --> id1
id1 <--> id8
Wiki Contents Page
Goals/Roadmap
Design
Hardware
Database API
Purpose
This aim of this project is to allow me to monitor the current weather conditions and state of my garden. Using soil moisture data I can more accurately respond in real time to plants in distress and adjust irrigation timings at a more granular level and make better use of the limited water resources we have.
This data will also allow me to get a better understanding of the day to day operation of my garden and I can see how and why the plants I have are acting the way that they do.
The ulterior motive for this project is to use it as an example of the skills I possess for future potential employment. This project will be used to demonstrate my skills and ability to use software and technology to solve a problem.
The competencies this project demonstrates cover a variety of areas including software development, computer networking, cyber security, project management, creative thinking, and communication skills.
Hard Skills Demonstrated
- Developing a web app using Flask (Python)
- Utilising a database management system to solve a problem
- Running an Apache web server on a local network
- Utilising HTTP methods to transfer information over local network
- Developing software running on Arduino
- Capability using Markdown, mermaid.js to describe ideas
- Using git version control software
- Using the GitHub platform to development a software solution
- Web security
Soft Skills Demonstrated
- Writing design documentation
- Communication skills used to describe technical concepts
- Project planning, management and completion
- Familiarity with Information Security concepts used to design and develop a computer system with security in mind