> For the complete documentation index, see [llms.txt](https://gilmour.online/compsci/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gilmour.online/compsci/archives/vanek-archives/old-robotics-8/end-of-class-project.md).

# OLD: End of Class Project

{% embed url="<https://youtu.be/1y49ZzFrWAI>" %}

{% embed url="<https://youtu.be/y7NhaF1w10U>" %}

For the last two days, we will be working on our final project.

Over the course of the quarter, we have learned:

* To use digitalWrite to turn LEDs on and off
* Use digitalRead and / or attachInterrupts to find if a button has been pushed.
* Use analogRead to find how much a potentiometer has been turned.
* Use Servo.write to move a servo motor.
* To create your own functions if they are going to be called repeatedly to save on code space.
* Use a serial monitor to share data with a user.

For the final arduino project, you are going to design something physical which uses at least 3 of these concepts. You will create a 3D model of your item and include 3D components such as the arduino, servos, etc. You will not have to wire or code the circuit, but in addition to your 3D Model, you will need to share a google doc with me describing what your invention is used for and which of the above concepts it would include.

**The goal of your invention is to make life easier for the person or people using your device.**

So, the 4 steps to this project are:

1. Before building any 3D models, start by brainstorming at list 10 ideas of things you could invent / make / modify using the skills you have. Add it to the start of the google doc you will share in a **Brainstorming** section.
2. Once you decide on an invention, build it using the arduino components in Tinkercad's 3D design space.
3. Write a **Summary** in your google doc describing what your invention is used for and which of the above concepts it would include.
4. **Share** your doc with me.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://gilmour.online/compsci/archives/vanek-archives/old-robotics-8/end-of-class-project.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
